PluginProbe
Members – Membership & User Role Editor Plugin / 3.2.24
Members – Membership & User Role Editor Plugin v3.2.24
3.2.25 3.2.26 3.2.24 3.2.23 3.2.22 3.2.21 trunk 0.1 0.1.1 0.2 0.2.1 0.2.2 0.2.3 0.2.4 0.2.5 1.0.0 1.0.1 1.0.2 1.1.0 1.1.1 1.1.2 1.1.3 2.0.0 2.0.1 2.0.2 All 66 releases
members / js / admin-notifications.js

admin-notifications.js in Members – Membership & User Role Editor Plugin 3.2.24, at js/admin-notifications.js

138 lines 4.0 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 jQuery(document).ready(function($) {
2
3 $('#membersAdminHeaderNotifications').on('click', function(e) {
4 e.preventDefault();
5 $('#members-notifications').toggleClass('visible');
6 $('#caseproofFlyoutButton').trigger('click');
7 });
8 $('#membersNotificationsClose').on('click', function(e) {
9 e.preventDefault();
10 $('#members-notifications').removeClass('visible');
11 });
12
13 var viewDismissed = $('#viewDismissed');
14 var viewActive = $('#viewActive');
15 var dismissedMessages = $('.dismissed-messages');
16 var activeMessages = $('.active-messages');
17
18 viewDismissed.on('click', function(event) {
19 event.preventDefault();
20 dismissedMessages.show();
21 activeMessages.hide();
22 viewActive.show();
23 viewDismissed.hide();
24 });
25 viewActive.on('click', function(event) {
26 event.preventDefault();
27 dismissedMessages.hide();
28 activeMessages.show();
29 viewActive.hide();
30 viewDismissed.show();
31 });
32
33 $('body').on('click', '.members-notice-dismiss', function(event) {
34
35 event.preventDefault();
36
37 var $this = $(this);
38 var messageId = $this.data('message-id');
39 var message = $('#members-notifications-message-' + messageId);
40 var countEl = $('#membersAdminMenuUnreadCount');
41 var mainCountEl = $('#membersAdminHeaderNotificationsCount');
42 var trayCountEl = $('#membersNotificationsCountTray');
43 var count = parseInt(mainCountEl.html());
44 var adminMenuCount = $('#membersAdminMenuUnreadCount');
45
46 var data = {
47 action: 'members_notification_dismiss',
48 nonce: MembersAdminNotifications.nonce,
49 id: messageId,
50 };
51
52 $this.prop('disabled', 'disabled');
53 message.fadeOut();
54
55 $.post( MembersAdminNotifications.ajax_url, data, function( res ) {
56
57 if ( ! res.success ) {
58 console.debug( res );
59 } else {
60 message.prependTo(dismissedMessages);
61 message.show();
62 count--;
63
64 if ( count < 0 ) {
65 count = 0;
66 countEl.hide();
67 mainCountEl.hide();
68 trayCountEl.hide();
69 adminMenuCount.closest('.awaiting-mod').remove();
70 } else if ( 0 == count ) {
71 countEl.hide();
72 mainCountEl.hide();
73 trayCountEl.hide();
74 $('.members-notifications-none').show();
75 $('.dismiss-all').hide();
76 adminMenuCount.closest('.awaiting-mod').remove();
77 } else if ( count < 10 ) {
78 countEl.addClass('single-digit');
79 countEl.html('(' + count + ')');
80 mainCountEl.html(count);
81 trayCountEl.html(count);
82 adminMenuCount.html(count);
83 } else {
84 countEl.html('(' + count + ')');
85 mainCountEl.html(count);
86 trayCountEl.html(count);
87 adminMenuCount.html(count);
88 }
89 }
90
91 } ).fail( function( xhr, textStatus, e ) {
92
93 console.debug( xhr.responseText );
94 message.show('Message could not be dismissed.');
95 } );
96 });
97
98 $('body').on('click', '.dismiss-all' ,function(event) {
99
100 event.preventDefault();
101
102 var $this = $(this);
103 var mainCountEl = $('#membersAdminHeaderNotificationsCount');
104 var trayCountEl = $('#membersNotificationsCountTray');
105 var count = parseInt(mainCountEl.html());
106 var adminMenuCount = $('#membersAdminMenuUnreadCount');
107
108 var data = {
109 action: 'members_notification_dismiss',
110 nonce: MembersAdminNotifications.nonce,
111 id: 'all',
112 };
113
114 $this.prop('disabled', 'disabled');
115
116 $.post( MembersAdminNotifications.ajax_url, data, function( res ) {
117
118 if ( ! res.success ) {
119 console.debug( res );
120 } else {
121 mainCountEl.hide();
122 trayCountEl.hide();
123 adminMenuCount.closest('.awaiting-mod').remove();
124 $('.members-notifications-none').show();
125 $('.dismiss-all').hide();
126
127 $.each($('.active-messages .members-notifications-message'), function(i, el) {
128 $(el).appendTo(dismissedMessages);
129 });
130 }
131
132 } ).fail( function( xhr, textStatus, e ) {
133
134 console.debug( xhr.responseText );
135 message.show('Messages could not be dismissed.');
136 } );
137 });
138 });