2013-06-12 17:07:58 +00:00
< script src = "/assets/js/channelsettings.js" > < / script >
2013-06-20 21:01:22 +00:00
< button id = "hide_settings" class = "pull-right close" > × < / button >
< div class = "btn-group dropup" >
2013-06-15 21:45:07 +00:00
< a class = "btn dropdown-toggle" data-toggle = "dropdown" href = "javascript:void(0)" >
< span id = "csdropdown_title" > Moderation Menu< / span >
< span class = "caret" > < / span >
< / a >
< ul class = "dropdown-menu" id = "channelsettings_nav" >
< li id = "optedit_tab" > < a href = "javascript:void(0);" id = "show_optedit" > Channel Options< / a > < / li >
< li id = "permedit_tab" > < a href = "javascript:void(0);" id = "show_permedit" > Permissions< / a > < / li >
< li id = "motdedit_tab" > < a href = "javascript:void(0);" id = "show_motdedit" > MOTD Editor< / a > < / li >
< li id = "filteredit_tab" > < a href = "javascript:void(0);" id = "show_filteredit" > Chat Filters< / a > < / li >
< li id = "cssedit_tab" > < a href = "javascript:void(0);" id = "show_cssedit" > CSS Editor< / a > < / li >
< li id = "jsedit_tab" > < a href = "javascript:void(0);" id = "show_jsedit" > JS Editor< / a > < / li >
< li id = "banlist_tab" > < a href = "javascript:void(0);" id = "show_banlist" > Ban List< / a > < / li >
2013-06-18 14:46:28 +00:00
< li id = "channelranks_tab" > < a href = "javascript:void(0);" id = "show_channelranks" > Channel Ranks< / a > < / li >
2013-06-18 03:57:29 +00:00
< li id = "loginhistory_tab" > < a href = "javascript:void(0);" id = "show_loginhistory" > Recent Connections< / a > < / li >
2013-08-06 18:20:47 +00:00
< li id = "chanlog_tab" > < a href = "javascript:void(0);" id = "show_chanlog" > Channel Log< / a > < / li >
2013-06-15 21:45:07 +00:00
< / ul >
< / div >
< hr >
2013-06-12 17:07:58 +00:00
< div id = "optedit" class = "span12" >
2013-06-15 21:45:07 +00:00
< form class = "form-horizontal" action = "javascript:void(0)" >
2013-06-17 22:16:59 +00:00
<!-- prevent chat flood -->
< div class = "control-group" >
< label class = "control-label" for = "opt_chat_antiflood" > Prevent Chat Flood< / label >
< div class = "controls" >
< input type = "checkbox" id = "opt_chat_antiflood" >
< / div >
2013-06-15 21:45:07 +00:00
< / div >
2013-11-19 21:14:40 +00:00
<!-- chat flood burst -->
< div class = "control-group" >
< label class = "control-label" for = "opt_chat_antiflood_burst" > # of messages allowed before throttling< / label >
< div class = "controls" >
< input type = "text" id = "opt_chat_antiflood_burst" >
< / div >
< / div >
<!-- chat flood sustained -->
< div class = "control-group" >
< label class = "control-label" for = "opt_chat_antiflood_sustained" > # of messages allowed per second (sustained)< / label >
< div class = "controls" >
< input type = "text" id = "opt_chat_antiflood_sustained" >
< / div >
< / div >
<!-- chat flood cooldown -->
< div class = "control-group" >
< label class = "control-label" for = "opt_chat_antiflood_cooldown" > Cooldown time after being throttled (seconds)< / label >
< div class = "controls" >
< input type = "text" id = "opt_chat_antiflood_cooldown" >
< / div >
< / div >
2013-06-17 22:16:59 +00:00
<!-- convert URLs to links -->
< div class = "control-group" >
< label class = "control-label" for = "opt_enable_link_regex" > Convert URLs in chat to links< / label >
< div class = "controls" >
< input type = "checkbox" id = "opt_enable_link_regex" >
< / div >
2013-06-15 21:45:07 +00:00
< / div >
2013-06-17 22:16:59 +00:00
<!-- voteskip toggle -->
< div class = "control-group" >
< label class = "control-label" for = "opt_allow_voteskip" > Allow Voteskip< / label >
< div class = "controls" >
< input type = "checkbox" id = "opt_allow_voteskip" >
< / div >
2013-06-15 21:45:07 +00:00
< / div >
2013-06-17 22:16:59 +00:00
<!-- voteskip ratio -->
< div class = "control-group" >
< label class = "control-label" for = "opt_voteskip_ratio" > Voteskip Ratio< / label >
< div class = "controls" >
< input type = "text" id = "opt_voteskip_ratio" placeholder = "0.5" >
< / div >
2013-06-15 21:45:07 +00:00
< / div >
2013-07-04 23:11:13 +00:00
<!-- max video length -->
< div class = "control-group" >
< label class = "control-label" for = "opt_maxlength" > Maximum Video Length< / label >
< div class = "controls" >
< input type = "text" id = "opt_maxlength" placeholder = "HH:MM:SS" >
< / div >
< / div >
2013-07-28 21:58:22 +00:00
<!-- auto afk -->
< div class = "control-group" >
< label class = "control-label" for = "opt_afktimeout" > Auto AFK Delay (0 to disable)< / label >
< div class = "controls" >
< input type = "text" id = "opt_afktimeout" placeholder = "0" >
< / div >
< / div >
2013-06-17 22:16:59 +00:00
< hr >
< strong > Admin-Only Controls< / strong >
<!-- page title -->
< div class = "control-group" >
< label class = "control-label" for = "opt_pagetitle" > Page Title< / label >
< div class = "controls" >
< input type = "text" id = "opt_pagetitle" placeholder = "CyTube" >
< / div >
2013-06-15 21:45:07 +00:00
< / div >
2013-06-17 22:16:59 +00:00
<!-- external CSS -->
< div class = "control-group" >
< label class = "control-label" for = "opt_externalcss" > External CSS< / label >
< div class = "controls" >
< input type = "text" id = "opt_externalcss" placeholder = "Stylesheet URL" >
< / div >
2013-06-15 21:45:07 +00:00
< / div >
2013-06-17 22:16:59 +00:00
<!-- external JS -->
< div class = "control-group" >
< label class = "control-label" for = "opt_externaljs" > External Javascript< / label >
< div class = "controls" >
< input type = "text" id = "opt_externaljs" placeholder = "Script URL" >
< / div >
2013-06-15 21:45:07 +00:00
< / div >
2013-06-17 22:16:59 +00:00
<!-- show publicly -->
< div class = "control-group" >
< label class = "control-label" for = "opt_show_public" > List Channel Publicly< / label >
< div class = "controls" >
< input type = "checkbox" id = "opt_show_public" >
< / div >
2013-06-15 21:45:07 +00:00
< / div >
2013-06-20 18:54:15 +00:00
<!-- unregister -->
< div class = "control-group" id = "chanopts_unregister_wrap" >
< label class = "control-label" for = "chanopts_unregister" > Unregister< / label >
< div class = "controls" >
< button class = "btn btn-danger" id = "chanopts_unregister" > Unregister Channel< / button >
< / div >
< / div >
2013-06-17 22:16:59 +00:00
<!-- submit -->
< button class = "btn btn-primary" id = "chanopts_submit" > Save< / button >
< / form >
2013-06-15 21:45:07 +00:00
< / div >
< br >
2013-06-12 17:07:58 +00:00
< / div >
< div id = "permedit" class = "span12" >
< / div >
< div id = "motdedit" class = "span12" >
2013-11-14 04:36:43 +00:00
< strong > Notice:< / strong >
The MOTD can now be edited in-place by clicking the small page icon next to the minus/plus icon. This editor is left in place for legacy purposes.
2013-06-15 21:45:07 +00:00
< textarea rows = "10" id = "motdtext" > < / textarea >
< button class = "btn btn-primary" id = "save_motd" > Save< / button >
< / div >
< div id = "filteredit" class = "span12" >
2013-06-18 15:51:42 +00:00
< p > Filters will be processed in the order that they are listed here. Click and drag a row to rearrange the order. Click a regex, flags, or replacement field to edit a filter. Changes are automatically saved when you finish editing.< / p >
2013-06-18 19:59:45 +00:00
< strong > Add Filter< / strong >
< form class = "form-horizontal" action = "javascript:void(0)" >
< div class = "control-group" >
< label class = "control-label" for = "newfilter_name" >
Name
< / label >
< div class = "controls" >
< input type = "text" id = "newfilter_name" >
< / div >
< / div >
< div class = "control-group" >
< label class = "control-label" for = "newfilter_regex" >
Regex
< / label >
< div class = "controls" >
< input type = "text" id = "newfilter_regex" >
< / div >
< / div >
< div class = "control-group" >
< label class = "control-label" for = "newfilter_flags" >
Flags
< / label >
< div class = "controls" >
< input type = "text" id = "newfilter_flags" value = "g" >
< / div >
< / div >
< div class = "control-group" >
< label class = "control-label" for = "newfilter_replace" >
Replacement
< / label >
< div class = "controls" >
< input type = "text" id = "newfilter_replace" >
< / div >
< / div >
< div class = "control-group" >
< label class = "control-label" for = "newfilter_filterlinks" >
Filter Links
< / label >
< div class = "controls" >
< input type = "checkbox" id = "newfilter_filterlinks" >
< / div >
< / div >
< div class = "control-group" >
< div class = "controls" >
< button class = "btn btn-primary" id = "newfilter_submit" > New Filter< / button >
< / div >
< / div >
< / form >
2013-07-30 13:27:13 +00:00
< table class = "table table-striped table-condensed" >
< thead >
< tr >
< th > Delete< / th >
< th > Name< / th >
< th > Regex< / th >
< th > Flags< / th >
< th > Replacement< / th >
< th > Affects Links< / th >
< th > Active< / th >
< / tr >
< / thead >
< / table >
< p > Multi-Filter Editor (format: name regex flags replacement). Only use this if you know what you are doing< / p >
< textarea id = "multifiltereditor" class = "input-block-level" rows = "10" > < / textarea >
< button class = "btn btn-primary" id = "multifiltersubmit" > Add/Update< / button >
2013-06-15 21:45:07 +00:00
< / div >
< div id = "cssedit" class = "span12" >
< p > Max 20KB. If you need more space, host the file externally and use the External CSS option< / p >
< textarea rows = "10" id = "csstext" > < / textarea >
< button class = "btn btn-primary" id = "save_css" > Save< / button >
< / div >
< div id = "jsedit" class = "span12" >
< p > Max 20KB. If you need more space, host the file externally and use the External JS option< / p >
< textarea rows = "10" id = "jstext" > < / textarea >
< button class = "btn btn-primary" id = "save_js" > Save< / button >
2013-06-12 17:07:58 +00:00
< / div >
2013-06-18 03:57:29 +00:00
< div id = "banlist" class = "span12" >
< table class = "table table-striped" >
< thead >
< tr >
< th > Unban< / th >
< th > IP< / th >
< th > Name< / th >
< th > Aliases< / th >
< th > Banned By< / th >
< / tr >
< / thead >
< / table >
< / div >
< div id = "loginhistory" class = "span12" >
< table class = "table table-striped" >
< thead >
< tr >
< th > Name< / th >
< th > Aliases< / th >
< th > Time< / th >
< / tr >
< / thead >
< / table >
< / div >
2013-06-18 14:46:28 +00:00
< div id = "channelranks" class = "span12" >
< table class = "table table-striped" >
< thead >
< tr >
< th > Name< / th >
< th > Rank (click to edit)< / th >
< / tr >
< / thead >
< / table >
< / div >
2013-08-06 18:20:47 +00:00
< div id = "chanlog" class = "span12" >
2013-08-07 03:37:45 +00:00
< button class = "btn" id = "chanlog_refresh" > Refresh< / button >
2013-11-16 05:47:32 +00:00
< br >
< br >
< strong > Filter Log:< / strong >
2013-11-16 02:23:57 +00:00
< form class = "form-inline" action = "javascript:void(0)" >
2013-11-16 05:47:32 +00:00
< label class = "checkbox" for = "filter_all" > Everything
< input type = "checkbox" id = "filter_all" checked = "checked" >
< / label >
2013-11-16 02:23:57 +00:00
< label class = "checkbox" for = "filter_chat" > Chat
2013-11-16 06:00:03 +00:00
< input type = "checkbox" id = "filter_chat" >
2013-11-16 02:23:57 +00:00
< / label >
< label class = "checkbox" for = "filter_polls" > Polls
2013-11-16 06:00:03 +00:00
< input type = "checkbox" id = "filter_polls" >
2013-11-16 02:23:57 +00:00
< / label >
< label class = "checkbox" for = "filter_queue" > Playlist actions
2013-11-16 06:00:03 +00:00
< input type = "checkbox" id = "filter_queue" >
2013-11-16 05:47:32 +00:00
< / label >
< label class = "checkbox" for = "filter_bans" > Bans
2013-11-16 06:00:03 +00:00
< input type = "checkbox" id = "filter_bans" >
2013-11-16 02:23:57 +00:00
< / label >
< label class = "checkbox" for = "filter_channelsettings" > Channel settings
2013-11-16 06:00:03 +00:00
< input type = "checkbox" id = "filter_channelsettings" >
2013-11-16 05:47:32 +00:00
< / label >
< label class = "checkbox" for = "filter_joinquit" > Join/Quit Messages
2013-11-16 06:00:03 +00:00
< input type = "checkbox" id = "filter_joinquit" >
2013-11-16 02:23:57 +00:00
< / label >
< / form >
2013-08-06 18:20:47 +00:00
< pre id = "chanlog_contents" style = "max-height: 400px; overflow-y: scroll" > < / pre >
< / div >