diff --git a/lib/database/channels.js b/lib/database/channels.js index 21db8ac1..5f72da51 100644 --- a/lib/database/channels.js +++ b/lib/database/channels.js @@ -419,6 +419,11 @@ module.exports = { callback = blackHole; } + if (rank < 2) { + module.exports.deleteRank(chan, name, callback); + return; + } + if (!valid(chan)) { callback("Invalid channel name", null); return; diff --git a/templates/channeloptions.jade b/templates/channeloptions.jade index 14e518b1..708df4e3 100644 --- a/templates/channeloptions.jade +++ b/templates/channeloptions.jade @@ -92,12 +92,14 @@ mixin recentjoins mixin chanranks #cs-chanranks.tab-pane + h4 Moderator List form.form-inline(action="javascript:void(0)", role="form") .input-group input#cs-chanranks-name.form-control(type="text", placeholder="Name") span.input-group-btn button#cs-chanranks-mod.btn.btn-success +Mod button#cs-chanranks-adm.btn.btn-info +Admin + button#cs-chanranks-owner.btn.btn-info +Owner table.table.table-striped thead tr diff --git a/www/assets/js/callbacks.js b/www/assets/js/callbacks.js index 32a7aa7a..7d524e6d 100644 --- a/www/assets/js/callbacks.js +++ b/www/assets/js/callbacks.js @@ -493,85 +493,12 @@ Callbacks = { channelRanks: function(entries) { var tbl = $("#cs-chanranks table"); - tbl.find("tbody").remove(); - entries.sort(function(a, b) { - if (a.rank === b.rank) { - var x = a.name.toLowerCase(); - var y = b.name.toLowerCase(); - return y == x ? 0 : (x < y ? -1 : 1); - } - - return b.rank - a.rank; - }); - - entries.forEach(function (entry) { - var tr = $("").addClass("cs-chanrank-tr-" + entry.name); - var name = $("").text(entry.name).appendTo(tr); - name.addClass(getNameColor(entry.rank)); - var rankwrap = $(""); - var rank = $("").text(entry.rank).appendTo(rankwrap); - var rankedit = $("