summaryrefslogtreecommitdiff
path: root/static/js/admin.js
diff options
context:
space:
mode:
Diffstat (limited to 'static/js/admin.js')
-rw-r--r--static/js/admin.js51
1 files changed, 47 insertions, 4 deletions
diff --git a/static/js/admin.js b/static/js/admin.js
index e6bef70..e54368c 100644
--- a/static/js/admin.js
+++ b/static/js/admin.js
@@ -11,12 +11,10 @@ Admin._select = function(name, opts) {
}
Admin.mute = function(nick) {
- var errorbox = $('<div class="errorbox" style="display: none">');
var time = $('<input type="text" name="time" size="3">');
var unit = Admin._select('unit', ['minutes', 'hours', 'days']);
var reason = $('<textarea name="reason" rows="4" cols="30">');
var html = $('<div>')
- .append(errorbox)
.append($('<div>').text(nick + ' will be muted for:'))
.append(time)
.append(unit)
@@ -53,10 +51,55 @@ Admin.mute = function(nick) {
});
};
html.dialog({
- modal: false,
+ modal: true,
title: title,
width: 400,
buttons: { 'OK': submit , 'Cancel': close }
});
html.dialog('open');
-}; \ No newline at end of file
+};
+
+Admin.cancelMute = function(id, nick) {
+ var reason = $('<textarea name="reason" rows="4" cols="30">');
+ var html = $('<div>')
+ .append($('<div>').text('Cancelling mute for ' + nick))
+ .append($('<br>'))
+ .append($('<div>').text('Reason:'))
+ .append(reason)
+ .appendTo($(Admin._dialogHtml));
+ var title = 'Cancelling mute for ' + nick;
+ var close = function() { html.dialog('close'); }
+ var submit = function() {
+ html.find('[name]').removeClass('ui-state-error');
+
+ var r = reason.val();
+ if (!r) {
+ reason.addClass('ui-state-error');
+ return;
+ }
+
+ var onSuccess = function(resp) {
+ location.reload();
+ };
+
+ $.ajax({
+ type: 'POST',
+ timeout: 5000,
+ url: '/cancel-mute',
+ cache: false,
+ data: { 'mute_id': id, 'reason': r },
+ success: onSuccess,
+ error: function(s) {
+ alert("Error cancelling mute: " + s.responseText);
+ close();
+ }
+ });
+ };
+ html.dialog({
+ modal: true,
+ title: title,
+ width: 400,
+ buttons: { 'OK': submit , 'Cancel': close }
+ });
+ html.dialog('open');
+} \ No newline at end of file