diff --git a/html/src/vr.js b/html/src/vr.js
index 232d6503..3b80085a 100644
--- a/html/src/vr.js
+++ b/html/src/vr.js
@@ -678,6 +678,18 @@ import webApiService from './service/webapi.js';
map[feed.senderUsername] = feed.created_at;
}
}
+ else if (feed.type === 'requestInvite') {
+ if (!map[feed.senderUsername] ||
+ map[feed.senderUsername] < feed.created_at) {
+ map[feed.senderUsername] = feed.created_at;
+ }
+ }
+ else if (feed.type === 'friendRequest') {
+ if (!map[feed.senderUsername] ||
+ map[feed.senderUsername] < feed.created_at) {
+ map[feed.senderUsername] = feed.created_at;
+ }
+ }
});
// disable notification on busy
if (this.currentUserStatus === 'busy') {
@@ -710,6 +722,20 @@ import webApiService from './service/webapi.js';
notys.push(feed);
}
}
+ else if (feed.type === 'requestInvite') {
+ if (!map[feed.senderUsername] ||
+ map[feed.senderUsername] < feed.created_at) {
+ map[feed.senderUsername] = feed.created_at;
+ notys.push(feed);
+ }
+ }
+ else if (feed.type === 'friendRequest') {
+ if (!map[feed.senderUsername] ||
+ map[feed.senderUsername] < feed.created_at) {
+ map[feed.senderUsername] = feed.created_at;
+ notys.push(feed);
+ }
+ }
});
var bias = new Date(Date.now() - 60000).toJSON();
var theme = 'relax';
@@ -754,6 +780,20 @@ import webApiService from './service/webapi.js';
text: `${noty.senderUsername} has invited you to ${noty.details.worldName}`
}).show();
break;
+ case 'requestInvite':
+ new Noty({
+ type: 'alert',
+ theme: theme,
+ text: `${noty.senderUsername} has requested an invite`
+ }).show();
+ break;
+ case 'friendRequest':
+ new Noty({
+ type: 'alert',
+ theme: theme,
+ text: `${noty.senderUsername} has sent you a friend request`
+ }).show();
+ break;
}
}
});
diff --git a/html/src/vr.pug b/html/src/vr.pug
index 45f1b655..ba1e177c 100644
--- a/html/src/vr.pug
+++ b/html/src/vr.pug
@@ -58,6 +58,16 @@ html
span.time {{ feed.created_at | formatDate('HH:MI') }}
| 📨 #[span.name(v-text="feed.senderUsername")]
| #[span(v-text="feed.details.worldName")]
+ div(v-else-if="feed.type === 'requestInvite'" class="x-friend-item" :class="{ friend: feed.isFriend, favorite: feed.isFavorite }")
+ .detail
+ span.extra
+ span.time {{ feed.created_at | formatDate('HH:MI') }}
+ | 📩 #[span.name(v-text="feed.senderUsername")]
+ div(v-else-if="feed.type === 'friendRequest'" class="x-friend-item" :class="{ friend: feed.isFriend, favorite: feed.isFavorite }")
+ .detail
+ span.extra
+ span.time {{ feed.created_at | formatDate('HH:MI') }}
+ | 💚 #[span.name(v-text="feed.senderUsername")]
template(v-else)
template(v-for="feed in feeds")
.x-friend-item(v-if="feed.type === 'GPS'" :class="{ friend: feed.isFriend, favorite: feed.isFavorite }")
@@ -101,6 +111,16 @@ html
span.time {{ feed.created_at | formatDate('HH:MI') }}
| #[span.name(v-text="feed.senderUsername")] has invited you to
| #[span(v-text="feed.details.worldName")]
+ div(v-else-if="feed.type === 'requestInvite'" class="x-friend-item" :class="{ friend: feed.isFriend, favorite: feed.isFavorite }")
+ .detail
+ span.extra
+ span.time {{ feed.created_at | formatDate('HH:MI') }}
+ | #[span.name(v-text="feed.senderUsername")] has requested an invite
+ div(v-else-if="feed.type === 'friendRequest'" class="x-friend-item" :class="{ friend: feed.isFriend, favorite: feed.isFavorite }")
+ .detail
+ span.extra
+ span.time {{ feed.created_at | formatDate('HH:MI') }}
+ | #[span.name(v-text="feed.senderUsername")] has sent you a friend request
.x-container
div(style="display:flex;flex-direction:row")
template(v-if="devices.length")