diff --git a/html/src/app.js b/html/src/app.js
index cd592a10..651e7fbc 100644
--- a/html/src/app.js
+++ b/html/src/app.js
@@ -1160,6 +1160,8 @@ import gameLogService from './service/gamelog.js'
// VRCX
$location: {},
$location_at: Date.now(),
+ $online_for: Date.now(),
+ $offline_for: '',
$isVRCPlus: false,
$isModerator: false,
$isTroll: false,
@@ -4060,7 +4062,24 @@ import gameLogService from './service/gamelog.js'
this.friendsGroup3_.push(ctx);
this.friendsGroupD_.unshift(ctx);
}
+ if (ctx.ref !== undefined) {
+ console.log(ctx.name + ' ' + ctx.state + ' ref: ' + ctx.ref.state);
+ if ((ctx.ref.$offline_for == '') &&
+ ((ctx.state == 'offline') && ctx.ref.state == '') ||
+ (((ctx.state == 'offline') || (ctx.state == 'active')) &&
+ ((ctx.ref.state != 'offline') && (ctx.ref.state != 'active') && (ctx.ref.state != '')))) {
+ ctx.ref.$online_for = '';
+ ctx.ref.$offline_for = Date.now();
+ console.log('^update offline^');
+ }
+ if ((ctx.ref.$online_for == '') && (ctx.state == 'online')) {
+ ctx.ref.$online_for = Date.now();
+ ctx.ref.$offline_for = '';
+ console.log('^update online^');
+ }
+ }
}
+
};
// ascending
diff --git a/html/src/index.pug b/html/src/index.pug
index 6dad0ce5..94a4b8a2 100644
--- a/html/src/index.pug
+++ b/html/src/index.pug
@@ -767,6 +767,14 @@ html
span.name Avatar Copying
span.extra(v-if="userDialog.ref.allowAvatarCopying" style="color:#67C23A") Allow
span.extra(v-else style="color:#F56C6C") Deny
+ .x-friend-item
+ .detail
+ span.name(v-if="userDialog.ref.state != 'offline' && userDialog.ref.state != 'active' && userDialog.ref.state != ''") Online For
+ span.name(v-else) Offline For
+ span.extra
+ timer(v-if="userDialog.ref.state != 'offline' && userDialog.ref.state != 'active' && userDialog.ref.state != ''" :epoch="userDialog.ref.$online_for")
+ timer(v-else-if="userDialog.ref.$offline_for" :epoch="userDialog.ref.$offline_for")
+ span(v-else) -
.x-friend-item
.detail
span.name Last Login