aboutsummaryrefslogtreecommitdiffstats
path: root/view/js/main.js
diff options
context:
space:
mode:
authorMario Vavti <mario@mariovavti.com>2018-06-02 15:39:38 +0200
committerMario Vavti <mario@mariovavti.com>2018-06-02 15:39:38 +0200
commitdb0a3a753420e8722776094334759dd4ff61fc77 (patch)
treea031cb1a0972ade9addadeae6025787347bee1de /view/js/main.js
parent53efd4e470f10e123209ed63b90213b20a87e011 (diff)
downloadvolse-hubzilla-db0a3a753420e8722776094334759dd4ff61fc77.tar.gz
volse-hubzilla-db0a3a753420e8722776094334759dd4ff61fc77.tar.bz2
volse-hubzilla-db0a3a753420e8722776094334759dd4ff61fc77.zip
some more work on forum notifications
Diffstat (limited to 'view/js/main.js')
-rw-r--r--view/js/main.js21
1 files changed, 19 insertions, 2 deletions
diff --git a/view/js/main.js b/view/js/main.js
index 63ab938f0..7a8ddfe28 100644
--- a/view/js/main.js
+++ b/view/js/main.js
@@ -420,6 +420,14 @@ function notificationsUpdate(cached_data) {
// Put the object into storage
sessionStorage.setItem('notifications_cache', JSON.stringify(data));
+ var fnotifs = [];
+ if(data.forums) {
+ $.each(data.forums_sub, function() {
+ fnotifs.push(this);
+ });
+ handleNotificationsItems('forums', fnotifs);
+ }
+
if(data.invalid == 1) {
window.location.href=window.location.href;
}
@@ -495,13 +503,13 @@ function handleNotifications(data) {
}
function handleNotificationsItems(notifyType, data) {
- var notifications_tpl= unescape($("#nav-notifications-template[rel=template]").html());
+ var notifications_tpl = ((notifyType == 'forums') ? unescape($("#nav-notifications-forums-template[rel=template]").html()) : unescape($("#nav-notifications-template[rel=template]").html()));
var notify_menu = $("#nav-" + notifyType + "-menu");
notify_menu.html('');
$(data).each(function() {
- html = notifications_tpl.format(this.notify_link,this.photo,this.name,this.message,this.when,this.hclass,this.b64mid,this.notify_id,this.thread_top);
+ html = notifications_tpl.format(this.notify_link,this.photo,this.name,this.message,this.when,this.hclass,this.b64mid,this.notify_id,this.thread_top,this.unseen);
notify_menu.append(html);
});
@@ -812,6 +820,14 @@ function updateInit() {
if (initialLoad && (sessionStorage.getItem('notifications_cache') !== null)) {
var cached_data = JSON.parse(sessionStorage.getItem('notifications_cache'));
notificationsUpdate(cached_data);
+
+ var fnotifs = [];
+ if(cached_data.forums) {
+ $.each(cached_data.forums_sub, function() {
+ fnotifs.push(this);
+ });
+ handleNotificationsItems('forums', fnotifs);
+ }
}
if(! src) {
@@ -1022,6 +1038,7 @@ function loadNotificationItems(notifyType) {
}
console.log('updating ' + notifyType + ' notifications...');
+
$.get(pingExCmd, function(data) {
if(data.invalid == 1) {
window.location.href=window.location.href;