diff options
Diffstat (limited to 'view/js')
-rw-r--r-- | view/js/main.js | 9 | ||||
-rw-r--r-- | view/js/mod_hq.js | 6 | ||||
-rw-r--r-- | view/js/mod_settings.js | 8 |
3 files changed, 17 insertions, 6 deletions
diff --git a/view/js/main.js b/view/js/main.js index a286d53bf..9ab66833c 100644 --- a/view/js/main.js +++ b/view/js/main.js @@ -1737,22 +1737,23 @@ function push_notification_request(e) { else if (Notification.permission !== 'granted') { Notification.requestPermission(function(permission) { if(permission === 'granted') { - $(e.target).closest('button').hide(); + $(e.target).closest('div').hide(); } }); } } -function push_notification(body, title) { +function push_notification(title, body, href) { let options = { body: body, + data: href, icon: '/images/hz-64.png', silent: false } let n = new Notification(title, options); - n.onclick = function (event) { - setTimeout(n.close.bind(n), 300); + n.onclick = function (e) { + window.location.href = e.target.data; } } diff --git a/view/js/mod_hq.js b/view/js/mod_hq.js index 87d9f1ef3..48fbf1f9b 100644 --- a/view/js/mod_hq.js +++ b/view/js/mod_hq.js @@ -13,7 +13,11 @@ $(document).ready(function() { }); $(document).on('hz:handleNetworkNotificationsItems', function(e, obj) { - push_notification($('<p>' + obj.message + '</p>').text(), obj.name); + push_notification( + obj.name, + $('<p>' + obj.message + '</p>').text(), + baseurl + '/hq/' + obj.b64mid + ); }); }); diff --git a/view/js/mod_settings.js b/view/js/mod_settings.js index d3392c748..3e91dac9a 100644 --- a/view/js/mod_settings.js +++ b/view/js/mod_settings.js @@ -24,8 +24,14 @@ $(document).ready(function() { loadPermcat(permName); }); + if (Notification.permission !== 'granted') { + $('#desktop-notifications-info').show(); + } - + $('#desktop-notifications-request').on('click', function(e) { + e.preventDefault(); + push_notification_request(e); + }); }); |