mixin lcheckbox(id, label) .form-group label.control-label.col-sm-4(for=id)= label .col-sm-8 .checkbox input(type="checkbox", id=id) mixin rcheckbox(id, label) .form-group .col-sm-8.col-sm-offset-4 .checkbox label.control-label(for=id)= label input.cs-checkbox(type="checkbox", id=id) mixin textbox(id, label, placeholder) .form-group label.control-label.col-sm-4(for=id)= label .col-sm-8 if placeholder input.form-control.cs-textbox(id=id, type="text", placeholder=placeholder) else input.form-control.cs-textbox(id=id, type="text") mixin miscoptions #cs-miscoptions.tab-pane h4 General Settings form.form-horizontal(action="javascript:void(0)") mixin rcheckbox("cs-enable_link_regex", "Convert URLs in chat to links") mixin rcheckbox("cs-allow_voteskip", "Allow voteskip") mixin textbox("cs-voteskip_ratio", "Voteskip ratio", "0.5") mixin textbox("cs-maxlength", "Max video length", "HH:MM:SS") mixin textbox("cs-afk_timeout", "Auto-AFK Delay", "0 (disabled)") mixin rcheckbox("cs-chat_antiflood", "Throttle chat") mixin textbox("cs-chat_antiflood_burst", "# of messages allowed before throttling") mixin textbox("cs-chat_antiflood_sustained", "# of messages (after burst) allowed per second") .form-group .col-sm-8.col-sm-offset-4 span.text-info Changes are automatically saved. mixin adminoptions #cs-adminoptions.tab-pane h4 Admin-Only Settings form.form-horizontal(action="javascript:void(0)") - var defname = "CyTube - /r/" + channelName mixin textbox("cs-pagetitle", "Page title", defname) mixin textbox("cs-password", "Password", "leave blank to disable") mixin textbox("cs-externalcss", "External CSS", "Stylesheet URL") mixin textbox("cs-externaljs", "External Javascript", "Script URL") mixin rcheckbox("cs-show_public", "List channel publicly") .form-group .col-sm-8.col-sm-offset-4 span.text-info Changes are automatically saved. mixin motdeditor #cs-motdeditor.tab-pane h4 MOTD editor p The MOTD can be formatted using a subset of HTML. Tags which attempt to execute Javascript will be removed. textarea.form-control#cs-motdtext(rows="10") button.btn.btn-primary#cs-motdsubmit Save MOTD mixin csseditor #cs-csseditor.tab-pane h4 CSS editor p Maximum size 20KB. If more space is required, use the External CSS option under General Settings to link to an externally hosted stylesheet. textarea.form-control#cs-csstext(rows="10") button.btn.btn-primary#cs-csssubmit Save CSS mixin jseditor #cs-jseditor.tab-pane h4 JS editor p Maximum size 20KB. If more space is required, use the External JS option under General Settings to link to an externally hosted stylesheet. textarea.form-control#cs-jstext(rows="10") button.btn.btn-primary#cs-jssubmit Save JS mixin banlist #cs-banlist.tab-pane h4 Ban list table.table.table-striped thead tr th Unban th IP th Name th Banned by mixin recentjoins #cs-recentjoins.tab-pane h4 Recent connections table.table.table-striped thead tr th Name th Aliases th Time 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 th Name th Rank mixin chatfilters #cs-chatfilters.tab-pane h4 Chat Filters form.form-horizontal(action="javascript:void(0)", role="form") +textbox("cs-chatfilters-newname", "Filter name") +textbox("cs-chatfilters-newregex", "Filter regex") .form-group label.control-label.col-sm-4(for="cs-chatfilters-newflags") Flags .col-sm-8 input#cs-chatfilters-newflags.form-control.cs-textbox(type="text", value="g") +textbox("cs-chatfilters-newreplace", "Replacement") .form-group .col-sm-8.col-sm-offset-4 button#cs-chatfilters-newsubmit.btn.btn-primary Create Filter table.table.table-striped.table-condensed thead tr th Control th Name th Active button#cs-chatfilters-export.btn.btn-default Export filter list button#cs-chatfilters-import.btn.btn-default Import filter list textarea#cs-chatfilters-exporttext.form-control(rows="5") mixin chanlog #cs-chanlog.tab-pane h4 Channel Log strong Filter Log: form(role="form", action="javscript:void(0)") .checkbox label Everything input#filter_all(type="checkbox", checked="checked") .checkbox label Chat input#filter_chat(type="checkbox") .checkbox label Polls input#filter_polls(type="checkbox") .checkbox label Playlist actions input#filter_queue(type="checkbox") .checkbox label Bans input#filter_bans(type="checkbox") .checkbox label Channel settings input#filter_channelsettings(type="checkbox") .checkbox label Join/Quit messages input#filter_joinquit(type="checkbox") pre#chanlog_contents(style="max-height: 400px; overflow-y: scroll") button.btn.btn-default#chanlog_refresh Refresh mixin permeditor #cs-permedit.tab-pane