summaryrefslogtreecommitdiff
path: root/static/js/admin.js
diff options
context:
space:
mode:
authorsostler <sbostler@gmail.com>2010-04-11 16:50:40 -0400
committersostler <sbostler@gmail.com>2010-04-11 16:50:40 -0400
commit57c3298cbb88181ab2a9e2dd5309b7a5df6eb30f (patch)
treee9ca474c5a1fa584728b152bf95ac5471943253c /static/js/admin.js
parent57be29ee7b7782830cf981d9437b18c88620f8ed (diff)
Initial muting implementation
Diffstat (limited to 'static/js/admin.js')
-rw-r--r--static/js/admin.js59
1 files changed, 59 insertions, 0 deletions
diff --git a/static/js/admin.js b/static/js/admin.js
new file mode 100644
index 0000000..a5a5f71
--- /dev/null
+++ b/static/js/admin.js
@@ -0,0 +1,59 @@
+var Admin = {};
+
+Admin._dialogHtml = '<div class="dialog">';
+
+Admin._select = function(name, opts) {
+ var sel = $('<select>').attr('name', name);
+ $.each(opts, function(i, o) {
+ sel.append($('<option>').html(o));
+ });
+ return sel;
+}
+
+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)
+ .append($('<br>'))
+ .append($('<br>'))
+ .append($('<div>').text('Reason:'))
+ .append(reason)
+ .appendTo($(Admin._dialogHtml));
+ var title = 'Mute ' + nick;
+ var cancel = function() { html.dialog('close'); }
+ var submit = function() {
+ html.find('[name]').removeClass('ui-state-error');
+
+ var t = parseInt(time.val());
+ var u = unit.val();
+ var r = reason.val();
+
+ if (!t) {
+ time.addClass('ui-state-error');
+ }
+
+ if (!u) {
+ reason.addClass('ui-state-error');
+ }
+
+ if (!r) {
+ reason.addClass('ui-state-error');
+ }
+
+ if (!t || !u || !r) {
+ return;
+ }
+ };
+ html.dialog({
+ modal: true,
+ title: title,
+ width: 400,
+ buttons: { 'OK': submit , 'Cancel': cancel }
+ });
+}; \ No newline at end of file