diff --git a/resources/assets/js/components/NotificationCard.vue b/resources/assets/js/components/NotificationCard.vue
index b5894f38d..d84fad229 100644
--- a/resources/assets/js/components/NotificationCard.vue
+++ b/resources/assets/js/components/NotificationCard.vue
@@ -42,6 +42,7 @@
+ {{timeAgo(n.created_at)}}
@@ -127,6 +128,38 @@
}
return text.slice(0,15) + '...'
+ },
+
+ timeAgo(ts) {
+ let date = Date.parse(ts);
+ let seconds = Math.floor((new Date() - date) / 1000);
+ let interval = Math.floor(seconds / 31536000);
+ if (interval >= 1) {
+ return interval + "y";
+ }
+ interval = Math.floor(seconds / 604800);
+ if (interval >= 1) {
+ return interval + "w";
+ }
+ interval = Math.floor(seconds / 86400);
+ if (interval >= 1) {
+ return interval + "d";
+ }
+ interval = Math.floor(seconds / 3600);
+ if (interval >= 1) {
+ return interval + "h";
+ }
+ interval = Math.floor(seconds / 60);
+ if (interval >= 1) {
+ return interval + "m";
+ }
+ return Math.floor(seconds) + "s";
+ },
+
+ mentionUrl(status) {
+ let username = status.account.username;
+ let id = status.id;
+ return '/p/' + username + '/' + id;
}
}
}