aboutsummaryrefslogtreecommitdiffstats
path: root/mediagoblin/static
diff options
context:
space:
mode:
authorBen Sturmfels <ben@sturm.com.au>2021-08-19 18:50:57 +1000
committerBen Sturmfels <ben@sturm.com.au>2021-08-19 18:52:10 +1000
commitea5669f93ef5a06d22f27cf473f8a2fdcada1ce8 (patch)
treeddf380f344068efff5502d55f359c3151ca80ce3 /mediagoblin/static
parent6c408fb4ea24d43d0cb45dbc253f9de35af120bd (diff)
downloadmediagoblin-ea5669f93ef5a06d22f27cf473f8a2fdcada1ce8.tar.lz
mediagoblin-ea5669f93ef5a06d22f27cf473f8a2fdcada1ce8.tar.xz
mediagoblin-ea5669f93ef5a06d22f27cf473f8a2fdcada1ce8.zip
Convert notifications.js to vanilla JavaScript (no jQuery).
Diffstat (limited to 'mediagoblin/static')
-rw-r--r--mediagoblin/static/js/notifications.js50
1 files changed, 21 insertions, 29 deletions
diff --git a/mediagoblin/static/js/notifications.js b/mediagoblin/static/js/notifications.js
index 78694f59..ae84e85b 100644
--- a/mediagoblin/static/js/notifications.js
+++ b/mediagoblin/static/js/notifications.js
@@ -1,4 +1,3 @@
-'use strict';
/**
* GNU MediaGoblin -- federated, autonomous media hosting
* Copyright (C) 2011, 2012 MediaGoblin contributors. See AUTHORS.
@@ -17,33 +16,26 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-var notifications = {};
-
-(function (n) {
- n._base = '/';
- n._endpoint = 'notifications/json';
-
- n.init = function () {
- $('.notification-gem').on('click', function () {
- $('.header_dropdown_down:visible').click();
- });
- }
-
-})(notifications)
-
-$(document).ready(function () {
- notifications.init();
+'use strict';
- var mark_all_comments_seen = document.getElementById('mark_all_comments_seen');
+(function () {
+ // Small pill/gem indicator showing number of unseen comments. Comments are
+ // shown inside the header panel which may be hidden.
+ var notificationGem = document.querySelector('.notification-gem');
+ notificationGem.addEventListener('click', function() {
+ panel.show()
+ });
- if (mark_all_comments_seen) {
- mark_all_comments_seen.href = '#';
- mark_all_comments_seen.onclick = function() {
- $.ajax({
- type: 'GET',
- url: mark_all_comments_seen_url,
- success: function(res, status, xhr) { window.location.reload(); },
- });
- }
- }
-});
+ // Mark all comments seen feature.
+ //
+ // TODO: Currently broken due to bug in mark_comment_notification_seen().
+ var mark_all_comments_seen = document.getElementById('mark_all_comments_seen');
+ if (mark_all_comments_seen) {
+ mark_all_comments_seen.href = '#';
+ mark_all_comments_seen.onclick = function() {
+ fetch(mark_all_comments_seen_url).then(function(response) {
+ window.location.reload();
+ });
+ };
+ }
+})();