├── README.md ├── modules ├── blockuser │ └── tmpl │ │ └── blockuser_WebadminUser.tmpl ├── cert │ └── tmpl │ │ └── index.tmpl ├── certauth │ └── tmpl │ │ └── index.tmpl ├── lastseen │ └── tmpl │ │ ├── index.tmpl │ │ └── lastseen_WebadminUser.tmpl ├── listsockets │ └── tmpl │ │ └── index.tmpl ├── notes │ ├── files │ │ └── trash.gif │ └── tmpl │ │ └── index.tmpl ├── perform │ └── tmpl │ │ └── index.tmpl ├── q │ └── tmpl │ │ └── index.tmpl ├── sasl │ └── tmpl │ │ └── index.tmpl ├── send_raw │ ├── files │ │ └── select.js │ └── tmpl │ │ └── index.tmpl ├── stickychan │ └── tmpl │ │ ├── index.tmpl │ │ └── stickychan_WebadminChan.tmpl └── webadmin │ ├── files │ └── webadmin.js │ └── tmpl │ ├── add_edit_chan.tmpl │ ├── add_edit_network.tmpl │ ├── add_edit_user.tmpl │ ├── del_network.tmpl │ ├── del_user.tmpl │ ├── encoding_settings.tmpl │ ├── index.tmpl │ ├── listusers.tmpl │ ├── settings.tmpl │ └── traffic.tmpl └── webskins ├── Amelia ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Bluerex ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Cerulean ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Cirrus ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Cosmo ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Cupid ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Cyborg ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Darkly ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Flatly ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Journal ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Lumen ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Paper ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Readable ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Sandstone ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Shamrock ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Simplex ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Slate ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Spacelab ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Superhero ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Supervillain ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── United ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── WhitePlum ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl ├── Yeti ├── pub │ ├── bootstrap.css │ └── bootstrap.min.css └── tmpl │ └── BaseHeader.tmpl └── _default_ ├── pub ├── _default_.css ├── bootstrap.css ├── bootstrap.js ├── bootstrap.min.css ├── bootstrap.min.js ├── favicon.ico ├── favicon2.ico ├── font-awesome.css ├── font-awesome.min.css ├── fonts │ ├── FontAwesome.otf │ ├── fontawesome-webfont.eot │ ├── fontawesome-webfont.svg │ ├── fontawesome-webfont.ttf │ ├── fontawesome-webfont.woff │ ├── glyphicons-halflings-regular.eot │ ├── glyphicons-halflings-regular.svg │ ├── glyphicons-halflings-regular.ttf │ └── glyphicons-halflings-regular.woff ├── jquery.min.js ├── selectize.bootstrap3.css └── selectize.min.js └── tmpl ├── Banner.tmpl ├── BaseHeader.tmpl ├── BreadCrumbs.tmpl ├── DocType.tmpl ├── Error.tmpl ├── ExtraHeader.tmpl ├── Footer.tmpl ├── FooterTag.tmpl ├── Header.tmpl ├── InfoBar.tmpl ├── LoginBar.tmpl ├── MessageBar.tmpl ├── Navbar.tmpl ├── _csrf_check.tmpl └── index.tmpl /README.md: -------------------------------------------------------------------------------- 1 | zncstrap 2 | ======== 3 | 4 | A simple ZNC Web Interface theme build with Twitter Bootstrap Framework. 5 | 6 | This 'dev' (development) branch is mainly for ZNC v.1.7-git or later. 7 | 8 | ### Update 9 | 10 | June 11th 2015: Work is in progress. Some bits might not run smoothly (broken) on ZNC v.1.7-git as of now. Hang in there. 11 | 12 | ### To-Do 13 | 14 | - The user setings page is way too long. Find a way to make it short yet organized 15 | - Clean out the codes and align accordingly 16 | - Swap to a switch-like checkbox 17 | - Test Google Charts to output traffic data, visually 18 | - Tables should be made more responsive, able to view on smaller devices 19 | 20 | ### More information and screenshots 21 | Website: https://firrre.com/zncstrap 22 | -------------------------------------------------------------------------------- /modules/blockuser/tmpl/blockuser_WebadminUser.tmpl: -------------------------------------------------------------------------------- 1 |
2 | checked="checked" disabled="disabled" /> 3 | 4 |
5 | 6 | -------------------------------------------------------------------------------- /modules/cert/tmpl/index.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
Certificate
6 |
7 | 8 |
You already have a certificate set, use the form below to overwrite the current certificate. Alternatively click here to delete your certificate.
9 | 10 |
You do not have a cert.
11 | 12 | 13 |
14 | 15 |
16 | 17 |
18 | 19 |
20 |
21 |
22 | 26 | 27 |
28 |
29 | 30 | -------------------------------------------------------------------------------- /modules/certauth/tmpl/index.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
Certauth — Add A Note
6 |
7 |
8 | 9 |
10 | 11 |
12 | 13 |
14 |
15 | 16 | 17 |

You have no keys.

18 | 19 | 20 |
21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 |
ActionKey
Delete
38 | 39 |
40 | 41 | 45 | 46 |
47 |
48 | 49 | -------------------------------------------------------------------------------- /modules/lastseen/tmpl/index.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
Last Seen
6 |
7 |
8 |
9 |
10 | 11 | 12 | 15 | 16 |
17 |
18 |
19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 42 | 43 | 44 | 45 | 46 | 47 |
48 |
49 |
50 | 51 | 52 | 53 | -------------------------------------------------------------------------------- /modules/lastseen/tmpl/lastseen_WebadminUser.tmpl: -------------------------------------------------------------------------------- 1 |
2 |
3 | " disabled> 4 |
5 |
-------------------------------------------------------------------------------- /modules/listsockets/tmpl/index.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
Listsockets
6 |
7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 |
NameCreatedStateSSLLocalRemoteData InData Out
35 |
36 |
37 |
38 | 39 | -------------------------------------------------------------------------------- /modules/notes/files/trash.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirrreHQ/zncstrap/e4aef30eb510e8926068e43711e6c4aa65fc5dc2/modules/notes/files/trash.gif -------------------------------------------------------------------------------- /modules/notes/tmpl/index.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
Notes · Add A Note
6 |
7 |
8 | 9 | 10 |
11 | 12 |
13 | 14 |
15 |
16 | 17 |
18 | 19 |
20 | 21 |
22 |
23 | 24 | 25 |
You have no notes to display.
26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | 42 | 43 | 44 | 45 |
KeyNoteAction
Delete
46 | 47 |
48 | 49 | 53 | 54 |
55 |
56 | 57 | 58 | -------------------------------------------------------------------------------- /modules/perform/tmpl/index.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
Perform · Add a Command
6 |
7 |
8 | 9 | 10 |
11 | 12 |
13 | 14 |
Commands sent to the IRC server on connect, one per line.
15 |
16 |
17 |
18 | 22 | 23 |
24 |
25 | 26 | -------------------------------------------------------------------------------- /modules/q/tmpl/index.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
Q Network Module
6 |
7 |
8 | 9 |
10 | 11 |
12 | 13 |
14 |
15 | 16 |
17 | 18 |
19 | 20 |
21 |
22 | 23 |
24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 41 | 44 | 45 | 46 | 47 |
StatusSettings
36 |
37 | checked="checked"disabled="disabled""/> 38 | 39 |
40 |
42 | 43 |
48 |
49 |
50 |
51 | 56 | 57 |
58 |
59 | 60 | -------------------------------------------------------------------------------- /modules/sasl/tmpl/index.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
Simple Authentication and Security Layer (SASL)
6 |
7 |
8 | 9 | 10 |
11 | 12 |
13 | 14 |
15 |
16 | 17 |
18 | 19 |
20 | 21 |
22 |
23 | 24 |
25 | 26 |
27 |
28 | checked="checked" /> 29 | 30 | Connect only if SASL authentication succeeds. Require authentication 31 |
32 |
33 |
34 | 35 | 36 | 37 | 38 |
39 | 43 | 44 |
45 |
46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 64 | 65 | 66 | 67 | 68 | 141 | -------------------------------------------------------------------------------- /modules/send_raw/files/select.js: -------------------------------------------------------------------------------- 1 | function updateUser() { 2 | var select = document.getElementById('selectnetwork'); 3 | var opt = select.options[select.selectedIndex]; 4 | document.getElementById('user').value = opt.parentNode.getAttribute('label'); 5 | } 6 | 7 | function init() { 8 | updateUser(); 9 | document.getElementById('networklabel').firstChild.nodeValue = 'Network:'; 10 | document.getElementById('userblock').removeAttribute('style'); 11 | } 12 | -------------------------------------------------------------------------------- /modules/send_raw/tmpl/index.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 |
5 |
6 |
Send RAW · Send a raw IRC line
7 |
8 |
9 | 10 | 11 |
12 | 13 |
14 | 15 |
16 |
17 | 18 |
19 | 20 |
21 | 30 |
31 |
32 | 33 |
34 | 35 |
36 | 40 |
41 |
42 | 43 |
44 | 45 |
46 | 47 |
48 |
49 |
50 | 51 | 55 | 56 |
57 |
58 | 59 | 60 | 61 | -------------------------------------------------------------------------------- /modules/stickychan/tmpl/index.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
Stickychan
6 |
7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 26 | 27 | 28 | 29 |
Channel NameEnable / Disable
21 |
22 | checked="checked" /> 23 | 24 |
25 |
30 |
31 | 36 | 37 |
38 |
39 | 40 | -------------------------------------------------------------------------------- /modules/stickychan/tmpl/stickychan_WebadminChan.tmpl: -------------------------------------------------------------------------------- 1 |
2 |
3 | 4 |
5 |
6 | 7 | checked="checked" /> 8 | 9 |
10 |
11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | -------------------------------------------------------------------------------- /modules/webadmin/files/webadmin.js: -------------------------------------------------------------------------------- 1 | function floodprotection_change() { 2 | var protection = document.getElementById('floodprotection_checkbox'); 3 | var rate = document.getElementById('floodrate'); 4 | var burst = document.getElementById('floodburst'); 5 | if (protection.checked) { 6 | rate.removeAttribute('disabled'); 7 | burst.removeAttribute('disabled'); 8 | } else { 9 | rate.disabled = 'disabled'; 10 | burst.disabled = 'disabled'; 11 | } 12 | } 13 | 14 | function serverlist_init($) { 15 | function serialize() { 16 | var text = ""; 17 | $("#servers_tbody > tr").each(function() { 18 | var host = $(".servers_row_host", $(this)).val(); 19 | var port = $(".servers_row_port", $(this)).val(); 20 | var ssl = $(".servers_row_ssl", $(this)).is(":checked"); 21 | var pass = $(".servers_row_pass", $(this)).val(); 22 | if (host.length == 0) return; 23 | text += host; 24 | text += " "; 25 | if (ssl) text += "+"; 26 | text += port; 27 | text += " "; 28 | text += pass; 29 | text += "\n"; 30 | }); 31 | $("#servers_text").val(text); 32 | } 33 | function add_row(host, port, ssl, pass) { 34 | var row = $(""); 35 | function delete_row() { 36 | row.remove(); 37 | serialize(); 38 | } 39 | row.append( 40 | $("").append($("").attr({"type":"text"}) 41 | .addClass("form-control servers_row_host").val(host)), 42 | $("").append($("").attr({"type":"number"}) 43 | .addClass("form-control servers_row_port").val(port)), 44 | $("").append($("").attr({"type":"checkbox"}) 45 | .addClass("servers_row_ssl").prop("checked", ssl)), 46 | $("").append($("").attr({"type":"text"}) 47 | .addClass("form-control servers_row_pass").val(pass)), 48 | $("").append($("").attr({"type":"button"}) 49 | .addClass("btn btn-danger").val("X").click(delete_row)) 50 | ); 51 | $("input", row).change(serialize); 52 | $("#servers_tbody").append(row); 53 | } 54 | 55 | var servers_text = $("#servers_text").val(); 56 | // Parse it 57 | $.each(servers_text.split("\n"), function(i, line) { 58 | if (line.length == 0) return; 59 | line = line.split(" "); 60 | var host = line[0]; 61 | var port = line[1] || "6667"; 62 | var pass = line[2] || ""; 63 | var ssl; 64 | if (port.match(/^\+/)) { 65 | ssl = true; 66 | port = port.substr(1); 67 | } else { 68 | ssl = false; 69 | } 70 | add_row(host, port, ssl, pass); 71 | }); 72 | $("#servers_add").click(function() { 73 | add_row("", 6697, true, ""); 74 | // Not serializing, because empty host doesn't emit anything anyway 75 | }); 76 | 77 | $("#servers_plain").hide(); 78 | $("#servers_js").show(); 79 | })(); 80 | } 81 | 82 | 83 | 84 | /* Broken. Work is in progress... Hang in there cowboy/girl... 85 | function ctcpreplies_init($) { 86 | function serialize() { 87 | var text = ""; 88 | $("#ctcpreplies_tbody > tr").each(function() { 89 | var request = $(".ctcpreplies_row_request", $(this)).val(); 90 | var response = $(".ctcpreplies_row_response", $(this)).val(); 91 | if (request.length == 0) return; 92 | text += request; 93 | text += " "; 94 | text += response; 95 | text += "\n"; 96 | }); 97 | $("#ctcpreplies_text").val(text); 98 | } 99 | function add_row(request, response) { 100 | var row = $(""); 101 | function delete_row() { 102 | row.remove(); 103 | serialize(); 104 | } 105 | row.append( 106 | $("").append($("").val(request) 107 | .addClass("ctcpreplies_row_request") 108 | .attr({"type":"text","list":"ctcpreplies_list"})), 109 | $("").append($("").val(response) 110 | .addClass("ctcpreplies_row_response") 111 | .attr({"type":"text","placeholder":"Empty value means this CTCP request will be ignored"})), 112 | $("").append($(" 129 | 130 | 131 | 132 | 133 |
134 | 135 |
136 | 138 | When these certificates are encountered, checks for hostname, expiration date, CA are skipped 139 |
140 |
141 | 142 | 143 | 144 |
145 |
146 | 147 |
148 |
149 | checked="checked" /> 150 | 151 | You might enable the flood protection. This prevents `excess flood' errors, which occur, when your IRC bot is command flooded or spammed. After changing this, reconnect ZNC to server 152 |
153 |
154 |
155 | 156 |
157 | 158 |
159 | value="" value="1.00" disabled="disabled" /> 160 | The number of seconds per line. After changing this, reconnect ZNC to server 161 |
162 |
163 | 164 | 165 |
166 | 167 |
168 | value="" value="4" disabled="disabled" /> 169 | Defines the number of lines, which can be sent immediately. After changing this, reconnect ZNC to server 170 |
171 |
172 | 173 |
174 | 175 |
176 | 177 | Defines the delay in seconds, until channels are joined after getting connected 178 |
179 |
180 | 181 | 182 |
183 | 184 | 185 | 186 |
187 |
188 | 189 |
190 | 191 |
192 |
193 |
194 | 195 | 196 |
197 | 198 | You will be able to add + modify channels here after you created the network.
199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 211 | 212 | 213 | 214 | 215 | 216 | 217 | 218 | 219 | 222 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 236 |
AddSaveNameCurModesDefModesBufferCountOptions<- Add a channel (opens in same page)
220 | Edit Del 221 | 223 |
224 | checked="checked" /> 225 | 226 |
227 |
237 | 238 |
239 | 240 | 241 | 242 |
243 | 244 | 245 | 246 | 247 | 248 | 249 | 250 | 251 | 252 | 253 | 254 | 255 | 256 | 257 | 263 | 266 | 275 | 276 | 284 | 292 | 293 | 294 | 295 |
StatusNameArgumentsDescriptionGlobalNetworks
258 |
259 | checked="checked" disabled="disabled" /> 260 | 261 |
262 |
264 | 265 | 267 | 268 | 269 | 270 | disabled="disabled" 272 | data-toggle="tooltip" data-placement="top" data-original-title="" autocomplete="off"/> 273 | 274 | 277 | 278 |
279 | checked="checked" class="sr-only" disabled="disabled" /> 280 | 281 |
282 | 283 |
285 | 286 |
287 | checked="checked" class="sr-only" disabled="disabled" /> 288 | 289 |
290 | 291 |
296 |
297 | 298 | 299 |
300 | 301 | 302 |

Module

303 | 304 | 305 | 306 |
307 | 308 | 309 | 310 | 315 | 316 | 317 | 318 | 319 | 320 | -------------------------------------------------------------------------------- /modules/webadmin/tmpl/add_edit_user.tmpl: -------------------------------------------------------------------------------- 1 | 2 |
3 | 4 | 5 | 6 |
7 |
8 |
9 | 30 |
31 | 32 |
33 |
34 | 35 |
36 | 37 | 38 |
39 | 40 |
41 | 42 | 43 | 44 | 45 | 46 | 47 | 48 | 49 | 50 | 51 |
52 |
53 | 54 |
55 | 56 |
57 | 58 |
59 |
60 | 61 |
62 | 63 |
64 | 65 |
66 |
67 | 68 | 69 |
70 | 71 |
72 | 73 |
Leave empty to allow connections from all IPs. Otherwise, one entry per line, wildcards * and ? are available.
74 |
75 |
76 |
77 | 78 | 79 |
80 | 81 |
Nick, AltNick, Ident, RealName and QuitMsg can be left empty to use default values.
82 | 83 | 84 |
85 | 86 |
87 | 88 |
89 |
90 | 91 |
92 | 93 |
94 | 95 |
96 |
97 | 98 |
99 | 100 |
101 | 102 |
103 |
104 | 105 |
106 | 107 |
108 | 109 |
110 |
111 | 112 |
113 | 114 |
115 | 116 |
117 |
118 | 119 | 120 |
121 | 122 |
123 | 124 | 128 | 129 | 130 | 131 |
132 |
133 | 134 | 135 |
136 | 137 |
138 | 139 | 143 | 144 | 145 | 146 |
147 |
148 | 149 |
150 | 151 |
152 | 153 |
154 |
155 |
156 | 157 | 158 |
159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 181 | 182 | 183 | 184 | 185 | 186 | 187 | 188 |
AddNameClientsCurrent ServerIRC Nick<- Add a network (opens in same page)
178 | 179 | Edit Delete 180 |
189 | 190 | You will be able to add + modify networks here after you have clonedcreated the user.
191 | 192 |
193 | 194 | 195 |
196 | 197 | 198 | 199 | 200 | 201 | 202 | 203 | 204 | 205 | 206 | 207 | 208 | 209 | 210 | 216 | 219 | 228 | 229 | 237 | 247 | 248 | 249 | 250 |
StatusNameArgumentsDescriptionGlobalNetworks
211 |
212 | checked="checked" disabled="disabled" /> 213 | 214 |
215 |
217 | 218 | 220 | 221 | 222 | 223 | disabled="disabled" 225 | data-toggle="tooltip" data-placement="top" data-original-title="" /> 226 | 227 | 230 | 231 |
232 | checked="checked" class="sr-only" disabled="disabled" /> 233 | 234 |
235 | 236 |
238 | 239 |
240 | checked="checked" class="sr-only" disabled="disabled" /> 241 | 242 |
243 | 244 | 245 | 246 |
251 |
252 | 253 | 254 |
255 |
256 | 257 |
258 | 259 |
Empty = use standard value
260 |
261 |
262 | 263 |
264 | 265 |
266 | 267 |
Empty = use standard value
268 |
269 |
270 |
271 | 272 | 273 |
274 |
275 |
276 | 277 | 278 | 279 | 280 | 281 | 282 | 283 | 284 | 285 | 286 | 292 | 293 | 294 | 295 | 296 |
StatusFlag Title
287 |
288 | checked="checked" disabled="disabled" /> 289 | 290 |
291 |
297 |
298 |
299 |
300 | 301 | 302 |
303 |
Any of the following text boxes can be left empty to use their default value.
304 |
305 | 306 |
307 | 308 |
This setting is ignored in new IRC clients, which use server-time. If your client supports server-time, change timestamp format in client settings instead.
309 |
310 |
311 | 312 |
313 | 314 |
315 | 316 |
E.g. Europe/Berlin or GMT-6
317 |
318 |
319 | 320 | 321 |
322 | 323 |
324 | 325 | Character encoding used between IRC client and ZNC. After changing this, reconnect client to ZNC 326 |
327 |
328 | 329 | 330 | 331 |
332 | 333 |
334 | 335 |
336 |
337 | 338 |
339 | 340 |
341 | 342 |
343 |
344 | 345 |
346 | 347 |
348 | disabled="disabled" /> 349 |
350 |
351 | 352 |
353 | 354 |
355 | 356 |
357 |
358 | 359 | 399 | 400 |
401 | 402 |
403 | 405 |
One reply per line. Example: TIME Buy a watch! — Some variable-like strings can be found here
406 |
407 |
408 | 409 |
410 | 411 |
412 | 1 ?> 413 | 419 | 420 |

No other skins found!

421 | 422 |
423 |
424 |
425 | 426 | 427 |
428 | 429 | 430 |
431 | 432 |
433 | 434 |
435 |
436 | 437 | 438 |
439 | 440 |
441 |
442 | 452 |
453 |
454 |
455 | 456 | -------------------------------------------------------------------------------- /modules/webadmin/tmpl/del_network.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
6 |
7 |
Confirm Network Deletion
8 |
9 |

Are you absolutely sure you want to delete "" network, ?

10 |
11 |
12 |
13 | 14 | 15 | 16 | 17 |

18 |
19 | 20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 | 28 | -------------------------------------------------------------------------------- /modules/webadmin/tmpl/del_user.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
6 |
7 |
Confirm User Deletion
8 |
9 |

Are you absolutely sure you want to delete ""?

10 |
11 |
12 |
13 | 14 | 15 | 16 | 17 |

18 |
19 | 20 |
21 |
22 | 23 |
24 |
25 |
26 |
27 |
28 | 29 | 30 | -------------------------------------------------------------------------------- /modules/webadmin/tmpl/encoding_settings.tmpl: -------------------------------------------------------------------------------- 1 |
2 | 6 |
7 | 8 |
9 | 13 |
14 | 15 |
16 | 20 |
21 | 22 |
23 | 27 |
28 | 29 |
30 | disabled="disabled" /> 31 |
32 | 33 | 34 | 35 | 38 | 39 | -------------------------------------------------------------------------------- /modules/webadmin/tmpl/index.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
Webadmin
6 |
7 |

Welcome to the ZNC webadmin module.
All changes you make will be in effect immediately after you submitted them.

8 |
9 |
10 |
11 | 12 | -------------------------------------------------------------------------------- /modules/webadmin/tmpl/listusers.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
List of Users
6 |
7 | 8 |
9 | There are no users defined. Click here if you would like to add one. 10 |
11 | 12 | 13 |
14 |
15 |
16 | 17 | 18 | 21 | 22 |
23 |
24 | 25 |
26 |
27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 46 | 47 | 48 | 49 | 50 | 51 | 52 | 53 | 54 |
55 |
56 |
57 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /modules/webadmin/tmpl/settings.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
6 | 11 |
12 |
13 |
14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 39 | 45 | 51 | 57 | 63 | 64 | 76 | 77 | 78 | 79 | 80 | 81 | 84 | 87 | 93 | 99 | 105 | 111 | 117 | 118 | 119 | 120 | 121 |
PortBindHostSSLIPv4IPv6IRCWebURIPrefix
34 |
35 | checked="checked"/> 36 | 37 |
38 |
40 |
41 | checked="checked"/> 42 | 43 |
44 |
46 |
47 | checked="checked"/> 48 | 49 |
50 |
52 |
53 | checked="checked"/> 54 | 55 |
56 |
58 |
59 | checked="checked"/> 60 | 61 |
62 |
65 | 66 |
67 | 68 | 69 | 70 | 71 | 72 | 73 |
74 | 75 |
82 | 83 | 85 | 86 | 88 |
89 | 90 | 91 |
92 |
94 |
95 | 96 | 97 |
98 |
100 |
101 | 102 | 103 |
104 |
106 |
107 | 108 | 109 |
110 |
112 |
113 | 114 | 115 |
116 |
122 |
123 | 124 | 125 |
126 |
127 | 128 | 129 |
130 | 131 |
132 | 137 |
138 |
139 | 140 |
141 | 142 |
143 | 144 |
Default for new users only.
145 |
146 |
147 | 148 |
149 | 150 |
151 | 152 |
153 |
154 | 155 |
156 | 157 |
158 | 159 |
160 |
161 | 162 |
163 | 164 |
165 | 166 |
167 |
168 | 169 |
170 | 171 |
172 | 173 |
174 |
175 | 176 |
177 | 178 |
179 |
180 | checked="checked" /> 181 | 182 |
Disallow IP changing during each web session
183 |
184 |
185 |
186 | 187 |
188 | 189 |
190 |
191 | checked="checked" /> 192 | 193 |
Hide version number from non-ZNC users
194 |
195 |
196 |
197 | 198 |
199 | 200 |
201 | 204 |
"Message of the Day", sent to all ZNC users on connect.
205 |
206 |
207 | 208 |
209 | 210 |
211 | 214 |
One host name or IP entry per line.
215 |
216 |
217 |
218 | 219 | 220 |
221 | 222 | 223 | 224 | 225 | 226 | 227 | 228 | 229 | 230 | 231 | 232 | 233 | 234 | 235 | 241 | 246 | 251 | 252 | 263 | 274 | 275 | 276 | 277 |
StatusNameArgumentsDescriptionGlobalNetworks
236 |
237 | checked="checked" disabled="disabled" /> 238 | 239 |
240 |
242 | 245 | 247 | disabled="disabled" 249 | data-toggle="tooltip" data-placement="top" data-original-title="" /> 250 | 253 | 254 |
255 | checked="checked" class="sr-only" disabled="disabled" /> 256 | 257 | 258 |
259 | 260 | 261 | 262 |
264 | 265 |
266 | checked="checked" class="sr-only" disabled="disabled" /> 267 | 268 | 269 |
270 | 271 | 272 | 273 |
278 |
279 |
280 |
281 | 282 | 283 | 287 | 288 |
289 |
290 | 291 | 292 | -------------------------------------------------------------------------------- /modules/webadmin/tmpl/traffic.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
Traffic Information
6 |
7 |
8 |
9 |
10 |
11 | 12 | 13 | 14 | 34 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 69 | 70 | 71 | 72 | 73 | 76 | 82 | 83 | 84 | 85 | 86 | 92 | 93 | 94 | 95 | 96 | 102 | 103 | 104 | 105 | 106 | 112 | 113 | 114 | 115 | 116 | 122 | 123 | 124 | 125 |
Uptime 64 |
65 |
66 |
67 |
68 |
Total Users 74 | 75 | 77 |
78 |
79 |
80 |
81 |
Total Networks 87 |
88 |
89 |
90 |
91 |
Attached Networks 97 |
98 |
99 |
100 |
101 |
Total Client Connections 107 |
108 |
109 |
110 |
111 |
Total IRC Connections 117 |
118 |
119 |
120 |
121 |
126 | 127 | 128 |
129 |
130 |
131 |
132 | 133 | 134 | 135 | 136 |
137 |
138 |
139 |
140 | 141 | 142 | 143 | 144 | 145 | 146 | 147 | 148 | 149 | 150 | 151 | 152 | 153 | 154 | 155 | 156 | 157 | Add the totals separately so that if sort is ever used they stay at the bottom By keeping them inside the loop we can figure out even/odd classes though. 158 | 159 | 160 | 161 | 162 | 163 | 164 | 165 | 166 | 167 | 168 | 169 | 170 | 171 | 172 | 173 | 174 | 175 | 176 | 177 | 178 | 179 | 180 | 181 | 182 | 183 |
184 |
185 |
186 | 187 | -------------------------------------------------------------------------------- /webskins/Amelia/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Bluerex/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Cerulean/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Cirrus/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Cosmo/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Cupid/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Cyborg/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Darkly/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Flatly/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Journal/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Lumen/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Paper/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Readable/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Sandstone/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Shamrock/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Simplex/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Slate/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Spacelab/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Superhero/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Supervillain/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/United/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/WhitePlum/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/Yeti/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | In your subpage (module page or static page) you'll probably want to do something like this... 30 | 31 | This is my super cool sub page! 32 | 33 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 34 | 35 | 36 | 37 | 38 | 39 | -------------------------------------------------------------------------------- /webskins/_default_/pub/_default_.css: -------------------------------------------------------------------------------- 1 | /* Some minor re-design for zncstrap */ 2 | body { 3 | padding-top: 80px; 4 | } 5 | #footer { 6 | height: 60px; 7 | padding-top: 30px; 8 | } 9 | /* for BindHosts textarea */ 10 | textarea.form-control { 11 | height: auto; 12 | word-wrap: break-word; 13 | white-space: -moz-pre-wrap; 14 | white-space: pre-wrap; 15 | } 16 | /* for Traffic page */ 17 | .progress { 18 | margin-bottom: 0px; 19 | } 20 | /* Switch & SwitchMini checkbox re-design */ 21 | 22 | .checkboxSwitch, 23 | .checkboxSwitchMini { 24 | position: relative; 25 | } 26 | .checkboxSwitch label { 27 | display: block; 28 | width: 20px; 29 | height: 20px; 30 | border-radius: 100px; 31 | -webkit-transition: all .5s ease; 32 | -moz-transition: all .5s ease; 33 | -o-transition: all .5s ease; 34 | -ms-transition: all .5s ease; 35 | transition: all .5s ease; 36 | cursor: pointer; 37 | position: absolute; 38 | top: 5px; 39 | left: 5px; 40 | z-index: 1; 41 | background: #d9534f; 42 | -webkit-box-shadow:inset 0px 1px 3px rgba(0,0,0,0.5); 43 | -moz-box-shadow:inset 0px 1px 3px rgba(0,0,0,0.5); 44 | box-shadow:inset 0px 1px 3px rgba(0,0,0,0.5); 45 | } 46 | .checkboxSwitchMini label { 47 | display: block; 48 | width: 13px; 49 | height: 13px; 50 | border-radius: 100px; 51 | -webkit-transition: all .5s ease; 52 | -moz-transition: all .5s ease; 53 | -o-transition: all .5s ease; 54 | -ms-transition: all .5s ease; 55 | transition: all .5s ease; 56 | cursor: pointer; 57 | position: absolute; 58 | top: 5px; 59 | left: 5px; 60 | z-index: 1; 61 | background: #d9534f; 62 | -webkit-box-shadow:inset 0px 1px 3px rgba(0,0,0,0.5); 63 | -moz-box-shadow:inset 0px 1px 3px rgba(0,0,0,0.5); 64 | box-shadow:inset 0px 1px 3px rgba(0,0,0,0.5); 65 | } 66 | .checkboxSwitch input[type=checkbox]:checked + label, 67 | .checkboxSwitchMini input[type=checkbox]:checked + label { 68 | background: #5cb85c; 69 | } 70 | -------------------------------------------------------------------------------- /webskins/_default_/pub/bootstrap.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Bootstrap v3.1.0 (http://getbootstrap.com) 3 | * Copyright 2011-2014 Twitter, Inc. 4 | * Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE) 5 | */ 6 | if("undefined"==typeof jQuery)throw new Error("Bootstrap requires jQuery");+function(a){"use strict";function b(){var a=document.createElement("bootstrap"),b={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd otransitionend",transition:"transitionend"};for(var c in b)if(void 0!==a.style[c])return{end:b[c]};return!1}a.fn.emulateTransitionEnd=function(b){var c=!1,d=this;a(this).one(a.support.transition.end,function(){c=!0});var e=function(){c||a(d).trigger(a.support.transition.end)};return setTimeout(e,b),this},a(function(){a.support.transition=b()})}(jQuery),+function(a){"use strict";var b='[data-dismiss="alert"]',c=function(c){a(c).on("click",b,this.close)};c.prototype.close=function(b){function c(){f.trigger("closed.bs.alert").remove()}var d=a(this),e=d.attr("data-target");e||(e=d.attr("href"),e=e&&e.replace(/.*(?=#[^\s]*$)/,""));var f=a(e);b&&b.preventDefault(),f.length||(f=d.hasClass("alert")?d:d.parent()),f.trigger(b=a.Event("close.bs.alert")),b.isDefaultPrevented()||(f.removeClass("in"),a.support.transition&&f.hasClass("fade")?f.one(a.support.transition.end,c).emulateTransitionEnd(150):c())};var d=a.fn.alert;a.fn.alert=function(b){return this.each(function(){var d=a(this),e=d.data("bs.alert");e||d.data("bs.alert",e=new c(this)),"string"==typeof b&&e[b].call(d)})},a.fn.alert.Constructor=c,a.fn.alert.noConflict=function(){return a.fn.alert=d,this},a(document).on("click.bs.alert.data-api",b,c.prototype.close)}(jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d),this.isLoading=!1};b.DEFAULTS={loadingText:"loading..."},b.prototype.setState=function(b){var c="disabled",d=this.$element,e=d.is("input")?"val":"html",f=d.data();b+="Text",f.resetText||d.data("resetText",d[e]()),d[e](f[b]||this.options[b]),setTimeout(a.proxy(function(){"loadingText"==b?(this.isLoading=!0,d.addClass(c).attr(c,c)):this.isLoading&&(this.isLoading=!1,d.removeClass(c).removeAttr(c))},this),0)},b.prototype.toggle=function(){var a=!0,b=this.$element.closest('[data-toggle="buttons"]');if(b.length){var c=this.$element.find("input");"radio"==c.prop("type")&&(c.prop("checked")&&this.$element.hasClass("active")?a=!1:b.find(".active").removeClass("active")),a&&c.prop("checked",!this.$element.hasClass("active")).trigger("change")}a&&this.$element.toggleClass("active")};var c=a.fn.button;a.fn.button=function(c){return this.each(function(){var d=a(this),e=d.data("bs.button"),f="object"==typeof c&&c;e||d.data("bs.button",e=new b(this,f)),"toggle"==c?e.toggle():c&&e.setState(c)})},a.fn.button.Constructor=b,a.fn.button.noConflict=function(){return a.fn.button=c,this},a(document).on("click.bs.button.data-api","[data-toggle^=button]",function(b){var c=a(b.target);c.hasClass("btn")||(c=c.closest(".btn")),c.button("toggle"),b.preventDefault()})}(jQuery),+function(a){"use strict";var b=function(b,c){this.$element=a(b),this.$indicators=this.$element.find(".carousel-indicators"),this.options=c,this.paused=this.sliding=this.interval=this.$active=this.$items=null,"hover"==this.options.pause&&this.$element.on("mouseenter",a.proxy(this.pause,this)).on("mouseleave",a.proxy(this.cycle,this))};b.DEFAULTS={interval:5e3,pause:"hover",wrap:!0},b.prototype.cycle=function(b){return b||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(a.proxy(this.next,this),this.options.interval)),this},b.prototype.getActiveIndex=function(){return this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},b.prototype.to=function(b){var c=this,d=this.getActiveIndex();return b>this.$items.length-1||0>b?void 0:this.sliding?this.$element.one("slid.bs.carousel",function(){c.to(b)}):d==b?this.pause().cycle():this.slide(b>d?"next":"prev",a(this.$items[b]))},b.prototype.pause=function(b){return b||(this.paused=!0),this.$element.find(".next, .prev").length&&a.support.transition&&(this.$element.trigger(a.support.transition.end),this.cycle(!0)),this.interval=clearInterval(this.interval),this},b.prototype.next=function(){return this.sliding?void 0:this.slide("next")},b.prototype.prev=function(){return this.sliding?void 0:this.slide("prev")},b.prototype.slide=function(b,c){var d=this.$element.find(".item.active"),e=c||d[b](),f=this.interval,g="next"==b?"left":"right",h="next"==b?"first":"last",i=this;if(!e.length){if(!this.options.wrap)return;e=this.$element.find(".item")[h]()}if(e.hasClass("active"))return this.sliding=!1;var j=a.Event("slide.bs.carousel",{relatedTarget:e[0],direction:g});return this.$element.trigger(j),j.isDefaultPrevented()?void 0:(this.sliding=!0,f&&this.pause(),this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid.bs.carousel",function(){var b=a(i.$indicators.children()[i.getActiveIndex()]);b&&b.addClass("active")})),a.support.transition&&this.$element.hasClass("slide")?(e.addClass(b),e[0].offsetWidth,d.addClass(g),e.addClass(g),d.one(a.support.transition.end,function(){e.removeClass([b,g].join(" ")).addClass("active"),d.removeClass(["active",g].join(" ")),i.sliding=!1,setTimeout(function(){i.$element.trigger("slid.bs.carousel")},0)}).emulateTransitionEnd(1e3*d.css("transition-duration").slice(0,-1))):(d.removeClass("active"),e.addClass("active"),this.sliding=!1,this.$element.trigger("slid.bs.carousel")),f&&this.cycle(),this)};var c=a.fn.carousel;a.fn.carousel=function(c){return this.each(function(){var d=a(this),e=d.data("bs.carousel"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c),g="string"==typeof c?c:f.slide;e||d.data("bs.carousel",e=new b(this,f)),"number"==typeof c?e.to(c):g?e[g]():f.interval&&e.pause().cycle()})},a.fn.carousel.Constructor=b,a.fn.carousel.noConflict=function(){return a.fn.carousel=c,this},a(document).on("click.bs.carousel.data-api","[data-slide], [data-slide-to]",function(b){var c,d=a(this),e=a(d.attr("data-target")||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,"")),f=a.extend({},e.data(),d.data()),g=d.attr("data-slide-to");g&&(f.interval=!1),e.carousel(f),(g=d.attr("data-slide-to"))&&e.data("bs.carousel").to(g),b.preventDefault()}),a(window).on("load",function(){a('[data-ride="carousel"]').each(function(){var b=a(this);b.carousel(b.data())})})}(jQuery),+function(a){"use strict";var b=function(c,d){this.$element=a(c),this.options=a.extend({},b.DEFAULTS,d),this.transitioning=null,this.options.parent&&(this.$parent=a(this.options.parent)),this.options.toggle&&this.toggle()};b.DEFAULTS={toggle:!0},b.prototype.dimension=function(){var a=this.$element.hasClass("width");return a?"width":"height"},b.prototype.show=function(){if(!this.transitioning&&!this.$element.hasClass("in")){var b=a.Event("show.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.$parent&&this.$parent.find("> .panel > .in");if(c&&c.length){var d=c.data("bs.collapse");if(d&&d.transitioning)return;c.collapse("hide"),d||c.data("bs.collapse",null)}var e=this.dimension();this.$element.removeClass("collapse").addClass("collapsing")[e](0),this.transitioning=1;var f=function(){this.$element.removeClass("collapsing").addClass("collapse in")[e]("auto"),this.transitioning=0,this.$element.trigger("shown.bs.collapse")};if(!a.support.transition)return f.call(this);var g=a.camelCase(["scroll",e].join("-"));this.$element.one(a.support.transition.end,a.proxy(f,this)).emulateTransitionEnd(350)[e](this.$element[0][g])}}},b.prototype.hide=function(){if(!this.transitioning&&this.$element.hasClass("in")){var b=a.Event("hide.bs.collapse");if(this.$element.trigger(b),!b.isDefaultPrevented()){var c=this.dimension();this.$element[c](this.$element[c]())[0].offsetHeight,this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"),this.transitioning=1;var d=function(){this.transitioning=0,this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse")};return a.support.transition?void this.$element[c](0).one(a.support.transition.end,a.proxy(d,this)).emulateTransitionEnd(350):d.call(this)}}},b.prototype.toggle=function(){this[this.$element.hasClass("in")?"hide":"show"]()};var c=a.fn.collapse;a.fn.collapse=function(c){return this.each(function(){var d=a(this),e=d.data("bs.collapse"),f=a.extend({},b.DEFAULTS,d.data(),"object"==typeof c&&c);!e&&f.toggle&&"show"==c&&(c=!c),e||d.data("bs.collapse",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.collapse.Constructor=b,a.fn.collapse.noConflict=function(){return a.fn.collapse=c,this},a(document).on("click.bs.collapse.data-api","[data-toggle=collapse]",function(b){var c,d=a(this),e=d.attr("data-target")||b.preventDefault()||(c=d.attr("href"))&&c.replace(/.*(?=#[^\s]+$)/,""),f=a(e),g=f.data("bs.collapse"),h=g?"toggle":d.data(),i=d.attr("data-parent"),j=i&&a(i);g&&g.transitioning||(j&&j.find('[data-toggle=collapse][data-parent="'+i+'"]').not(d).addClass("collapsed"),d[f.hasClass("in")?"addClass":"removeClass"]("collapsed")),f.collapse(h)})}(jQuery),+function(a){"use strict";function b(b){a(d).remove(),a(e).each(function(){var d=c(a(this)),e={relatedTarget:this};d.hasClass("open")&&(d.trigger(b=a.Event("hide.bs.dropdown",e)),b.isDefaultPrevented()||d.removeClass("open").trigger("hidden.bs.dropdown",e))})}function c(b){var c=b.attr("data-target");c||(c=b.attr("href"),c=c&&/#[A-Za-z]/.test(c)&&c.replace(/.*(?=#[^\s]*$)/,""));var d=c&&a(c);return d&&d.length?d:b.parent()}var d=".dropdown-backdrop",e="[data-toggle=dropdown]",f=function(b){a(b).on("click.bs.dropdown",this.toggle)};f.prototype.toggle=function(d){var e=a(this);if(!e.is(".disabled, :disabled")){var f=c(e),g=f.hasClass("open");if(b(),!g){"ontouchstart"in document.documentElement&&!f.closest(".navbar-nav").length&&a(''}),b.prototype=a.extend({},a.fn.tooltip.Constructor.prototype),b.prototype.constructor=b,b.prototype.getDefaults=function(){return b.DEFAULTS},b.prototype.setContent=function(){var a=this.tip(),b=this.getTitle(),c=this.getContent();a.find(".popover-title")[this.options.html?"html":"text"](b),a.find(".popover-content")[this.options.html?"string"==typeof c?"html":"append":"text"](c),a.removeClass("fade top bottom left right in"),a.find(".popover-title").html()||a.find(".popover-title").hide()},b.prototype.hasContent=function(){return this.getTitle()||this.getContent()},b.prototype.getContent=function(){var a=this.$element,b=this.options;return a.attr("data-content")||("function"==typeof b.content?b.content.call(a[0]):b.content)},b.prototype.arrow=function(){return this.$arrow=this.$arrow||this.tip().find(".arrow")},b.prototype.tip=function(){return this.$tip||(this.$tip=a(this.options.template)),this.$tip};var c=a.fn.popover;a.fn.popover=function(c){return this.each(function(){var d=a(this),e=d.data("bs.popover"),f="object"==typeof c&&c;(e||"destroy"!=c)&&(e||d.data("bs.popover",e=new b(this,f)),"string"==typeof c&&e[c]())})},a.fn.popover.Constructor=b,a.fn.popover.noConflict=function(){return a.fn.popover=c,this}}(jQuery),+function(a){"use strict";function b(c,d){var e,f=a.proxy(this.process,this);this.$element=a(a(c).is("body")?window:c),this.$body=a("body"),this.$scrollElement=this.$element.on("scroll.bs.scroll-spy.data-api",f),this.options=a.extend({},b.DEFAULTS,d),this.selector=(this.options.target||(e=a(c).attr("href"))&&e.replace(/.*(?=#[^\s]+$)/,"")||"")+" .nav li > a",this.offsets=a([]),this.targets=a([]),this.activeTarget=null,this.refresh(),this.process()}b.DEFAULTS={offset:10},b.prototype.refresh=function(){var b=this.$element[0]==window?"offset":"position";this.offsets=a([]),this.targets=a([]);{var c=this;this.$body.find(this.selector).map(function(){var d=a(this),e=d.data("target")||d.attr("href"),f=/^#./.test(e)&&a(e);return f&&f.length&&f.is(":visible")&&[[f[b]().top+(!a.isWindow(c.$scrollElement.get(0))&&c.$scrollElement.scrollTop()),e]]||null}).sort(function(a,b){return a[0]-b[0]}).each(function(){c.offsets.push(this[0]),c.targets.push(this[1])})}},b.prototype.process=function(){var a,b=this.$scrollElement.scrollTop()+this.options.offset,c=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,d=c-this.$scrollElement.height(),e=this.offsets,f=this.targets,g=this.activeTarget;if(b>=d)return g!=(a=f.last()[0])&&this.activate(a);if(g&&b<=e[0])return g!=(a=f[0])&&this.activate(a);for(a=e.length;a--;)g!=f[a]&&b>=e[a]&&(!e[a+1]||b<=e[a+1])&&this.activate(f[a])},b.prototype.activate=function(b){this.activeTarget=b,a(this.selector).parentsUntil(this.options.target,".active").removeClass("active");var c=this.selector+'[data-target="'+b+'"],'+this.selector+'[href="'+b+'"]',d=a(c).parents("li").addClass("active");d.parent(".dropdown-menu").length&&(d=d.closest("li.dropdown").addClass("active")),d.trigger("activate.bs.scrollspy")};var c=a.fn.scrollspy;a.fn.scrollspy=function(c){return this.each(function(){var d=a(this),e=d.data("bs.scrollspy"),f="object"==typeof c&&c;e||d.data("bs.scrollspy",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.scrollspy.Constructor=b,a.fn.scrollspy.noConflict=function(){return a.fn.scrollspy=c,this},a(window).on("load",function(){a('[data-spy="scroll"]').each(function(){var b=a(this);b.scrollspy(b.data())})})}(jQuery),+function(a){"use strict";var b=function(b){this.element=a(b)};b.prototype.show=function(){var b=this.element,c=b.closest("ul:not(.dropdown-menu)"),d=b.data("target");if(d||(d=b.attr("href"),d=d&&d.replace(/.*(?=#[^\s]*$)/,"")),!b.parent("li").hasClass("active")){var e=c.find(".active:last a")[0],f=a.Event("show.bs.tab",{relatedTarget:e});if(b.trigger(f),!f.isDefaultPrevented()){var g=a(d);this.activate(b.parent("li"),c),this.activate(g,g.parent(),function(){b.trigger({type:"shown.bs.tab",relatedTarget:e})})}}},b.prototype.activate=function(b,c,d){function e(){f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"),b.addClass("active"),g?(b[0].offsetWidth,b.addClass("in")):b.removeClass("fade"),b.parent(".dropdown-menu")&&b.closest("li.dropdown").addClass("active"),d&&d()}var f=c.find("> .active"),g=d&&a.support.transition&&f.hasClass("fade");g?f.one(a.support.transition.end,e).emulateTransitionEnd(150):e(),f.removeClass("in")};var c=a.fn.tab;a.fn.tab=function(c){return this.each(function(){var d=a(this),e=d.data("bs.tab");e||d.data("bs.tab",e=new b(this)),"string"==typeof c&&e[c]()})},a.fn.tab.Constructor=b,a.fn.tab.noConflict=function(){return a.fn.tab=c,this},a(document).on("click.bs.tab.data-api",'[data-toggle="tab"], [data-toggle="pill"]',function(b){b.preventDefault(),a(this).tab("show")})}(jQuery),+function(a){"use strict";var b=function(c,d){this.options=a.extend({},b.DEFAULTS,d),this.$window=a(window).on("scroll.bs.affix.data-api",a.proxy(this.checkPosition,this)).on("click.bs.affix.data-api",a.proxy(this.checkPositionWithEventLoop,this)),this.$element=a(c),this.affixed=this.unpin=this.pinnedOffset=null,this.checkPosition()};b.RESET="affix affix-top affix-bottom",b.DEFAULTS={offset:0},b.prototype.getPinnedOffset=function(){if(this.pinnedOffset)return this.pinnedOffset;this.$element.removeClass(b.RESET).addClass("affix");var a=this.$window.scrollTop(),c=this.$element.offset();return this.pinnedOffset=c.top-a},b.prototype.checkPositionWithEventLoop=function(){setTimeout(a.proxy(this.checkPosition,this),1)},b.prototype.checkPosition=function(){if(this.$element.is(":visible")){var c=a(document).height(),d=this.$window.scrollTop(),e=this.$element.offset(),f=this.options.offset,g=f.top,h=f.bottom;"top"==this.affixed&&(e.top+=d),"object"!=typeof f&&(h=g=f),"function"==typeof g&&(g=f.top(this.$element)),"function"==typeof h&&(h=f.bottom(this.$element));var i=null!=this.unpin&&d+this.unpin<=e.top?!1:null!=h&&e.top+this.$element.height()>=c-h?"bottom":null!=g&&g>=d?"top":!1;if(this.affixed!==i){this.unpin&&this.$element.css("top","");var j="affix"+(i?"-"+i:""),k=a.Event(j+".bs.affix");this.$element.trigger(k),k.isDefaultPrevented()||(this.affixed=i,this.unpin="bottom"==i?this.getPinnedOffset():null,this.$element.removeClass(b.RESET).addClass(j).trigger(a.Event(j.replace("affix","affixed"))),"bottom"==i&&this.$element.offset({top:c-h-this.$element.height()}))}}};var c=a.fn.affix;a.fn.affix=function(c){return this.each(function(){var d=a(this),e=d.data("bs.affix"),f="object"==typeof c&&c;e||d.data("bs.affix",e=new b(this,f)),"string"==typeof c&&e[c]()})},a.fn.affix.Constructor=b,a.fn.affix.noConflict=function(){return a.fn.affix=c,this},a(window).on("load",function(){a('[data-spy="affix"]').each(function(){var b=a(this),c=b.data();c.offset=c.offset||{},c.offsetBottom&&(c.offset.bottom=c.offsetBottom),c.offsetTop&&(c.offset.top=c.offsetTop),b.affix(c)})})}(jQuery); -------------------------------------------------------------------------------- /webskins/_default_/pub/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirrreHQ/zncstrap/e4aef30eb510e8926068e43711e6c4aa65fc5dc2/webskins/_default_/pub/favicon.ico -------------------------------------------------------------------------------- /webskins/_default_/pub/favicon2.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirrreHQ/zncstrap/e4aef30eb510e8926068e43711e6c4aa65fc5dc2/webskins/_default_/pub/favicon2.ico -------------------------------------------------------------------------------- /webskins/_default_/pub/font-awesome.min.css: -------------------------------------------------------------------------------- 1 | /*! 2 | * Font Awesome 4.0.3 by @davegandy - http://fontawesome.io - @fontawesome 3 | * License - http://fontawesome.io/license (Font: SIL OFL 1.1, CSS: MIT License) 4 | */@font-face{font-family:'FontAwesome';src:url('fonts/fontawesome-webfont.eot?v=4.0.3');src:url('fonts/fontawesome-webfont.eot?#iefix&v=4.0.3') format('embedded-opentype'),url('fonts/fontawesome-webfont.woff?v=4.0.3') format('woff'),url('fonts/fontawesome-webfont.ttf?v=4.0.3') format('truetype'),url('fonts/fontawesome-webfont.svg?v=4.0.3#fontawesomeregular') format('svg');font-weight:normal;font-style:normal}.fa{display:inline-block;font-family:FontAwesome;font-style:normal;font-weight:normal;line-height:1;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.fa-lg{font-size:1.3333333333333333em;line-height:.75em;vertical-align:-15%}.fa-2x{font-size:2em}.fa-3x{font-size:3em}.fa-4x{font-size:4em}.fa-5x{font-size:5em}.fa-fw{width:1.2857142857142858em;text-align:center}.fa-ul{padding-left:0;margin-left:2.142857142857143em;list-style-type:none}.fa-ul>li{position:relative}.fa-li{position:absolute;left:-2.142857142857143em;width:2.142857142857143em;top:.14285714285714285em;text-align:center}.fa-li.fa-lg{left:-1.8571428571428572em}.fa-border{padding:.2em .25em .15em;border:solid .08em #eee;border-radius:.1em}.pull-right{float:right}.pull-left{float:left}.fa.pull-left{margin-right:.3em}.fa.pull-right{margin-left:.3em}.fa-spin{-webkit-animation:spin 2s infinite linear;-moz-animation:spin 2s infinite linear;-o-animation:spin 2s infinite linear;animation:spin 2s infinite linear}@-moz-keyframes spin{0%{-moz-transform:rotate(0deg)}100%{-moz-transform:rotate(359deg)}}@-webkit-keyframes spin{0%{-webkit-transform:rotate(0deg)}100%{-webkit-transform:rotate(359deg)}}@-o-keyframes spin{0%{-o-transform:rotate(0deg)}100%{-o-transform:rotate(359deg)}}@-ms-keyframes spin{0%{-ms-transform:rotate(0deg)}100%{-ms-transform:rotate(359deg)}}@keyframes spin{0%{transform:rotate(0deg)}100%{transform:rotate(359deg)}}.fa-rotate-90{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=1);-webkit-transform:rotate(90deg);-moz-transform:rotate(90deg);-ms-transform:rotate(90deg);-o-transform:rotate(90deg);transform:rotate(90deg)}.fa-rotate-180{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2);-webkit-transform:rotate(180deg);-moz-transform:rotate(180deg);-ms-transform:rotate(180deg);-o-transform:rotate(180deg);transform:rotate(180deg)}.fa-rotate-270{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=3);-webkit-transform:rotate(270deg);-moz-transform:rotate(270deg);-ms-transform:rotate(270deg);-o-transform:rotate(270deg);transform:rotate(270deg)}.fa-flip-horizontal{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=0,mirror=1);-webkit-transform:scale(-1,1);-moz-transform:scale(-1,1);-ms-transform:scale(-1,1);-o-transform:scale(-1,1);transform:scale(-1,1)}.fa-flip-vertical{filter:progid:DXImageTransform.Microsoft.BasicImage(rotation=2,mirror=1);-webkit-transform:scale(1,-1);-moz-transform:scale(1,-1);-ms-transform:scale(1,-1);-o-transform:scale(1,-1);transform:scale(1,-1)}.fa-stack{position:relative;display:inline-block;width:2em;height:2em;line-height:2em;vertical-align:middle}.fa-stack-1x,.fa-stack-2x{position:absolute;left:0;width:100%;text-align:center}.fa-stack-1x{line-height:inherit}.fa-stack-2x{font-size:2em}.fa-inverse{color:#fff}.fa-glass:before{content:"\f000"}.fa-music:before{content:"\f001"}.fa-search:before{content:"\f002"}.fa-envelope-o:before{content:"\f003"}.fa-heart:before{content:"\f004"}.fa-star:before{content:"\f005"}.fa-star-o:before{content:"\f006"}.fa-user:before{content:"\f007"}.fa-film:before{content:"\f008"}.fa-th-large:before{content:"\f009"}.fa-th:before{content:"\f00a"}.fa-th-list:before{content:"\f00b"}.fa-check:before{content:"\f00c"}.fa-times:before{content:"\f00d"}.fa-search-plus:before{content:"\f00e"}.fa-search-minus:before{content:"\f010"}.fa-power-off:before{content:"\f011"}.fa-signal:before{content:"\f012"}.fa-gear:before,.fa-cog:before{content:"\f013"}.fa-trash-o:before{content:"\f014"}.fa-home:before{content:"\f015"}.fa-file-o:before{content:"\f016"}.fa-clock-o:before{content:"\f017"}.fa-road:before{content:"\f018"}.fa-download:before{content:"\f019"}.fa-arrow-circle-o-down:before{content:"\f01a"}.fa-arrow-circle-o-up:before{content:"\f01b"}.fa-inbox:before{content:"\f01c"}.fa-play-circle-o:before{content:"\f01d"}.fa-rotate-right:before,.fa-repeat:before{content:"\f01e"}.fa-refresh:before{content:"\f021"}.fa-list-alt:before{content:"\f022"}.fa-lock:before{content:"\f023"}.fa-flag:before{content:"\f024"}.fa-headphones:before{content:"\f025"}.fa-volume-off:before{content:"\f026"}.fa-volume-down:before{content:"\f027"}.fa-volume-up:before{content:"\f028"}.fa-qrcode:before{content:"\f029"}.fa-barcode:before{content:"\f02a"}.fa-tag:before{content:"\f02b"}.fa-tags:before{content:"\f02c"}.fa-book:before{content:"\f02d"}.fa-bookmark:before{content:"\f02e"}.fa-print:before{content:"\f02f"}.fa-camera:before{content:"\f030"}.fa-font:before{content:"\f031"}.fa-bold:before{content:"\f032"}.fa-italic:before{content:"\f033"}.fa-text-height:before{content:"\f034"}.fa-text-width:before{content:"\f035"}.fa-align-left:before{content:"\f036"}.fa-align-center:before{content:"\f037"}.fa-align-right:before{content:"\f038"}.fa-align-justify:before{content:"\f039"}.fa-list:before{content:"\f03a"}.fa-dedent:before,.fa-outdent:before{content:"\f03b"}.fa-indent:before{content:"\f03c"}.fa-video-camera:before{content:"\f03d"}.fa-picture-o:before{content:"\f03e"}.fa-pencil:before{content:"\f040"}.fa-map-marker:before{content:"\f041"}.fa-adjust:before{content:"\f042"}.fa-tint:before{content:"\f043"}.fa-edit:before,.fa-pencil-square-o:before{content:"\f044"}.fa-share-square-o:before{content:"\f045"}.fa-check-square-o:before{content:"\f046"}.fa-arrows:before{content:"\f047"}.fa-step-backward:before{content:"\f048"}.fa-fast-backward:before{content:"\f049"}.fa-backward:before{content:"\f04a"}.fa-play:before{content:"\f04b"}.fa-pause:before{content:"\f04c"}.fa-stop:before{content:"\f04d"}.fa-forward:before{content:"\f04e"}.fa-fast-forward:before{content:"\f050"}.fa-step-forward:before{content:"\f051"}.fa-eject:before{content:"\f052"}.fa-chevron-left:before{content:"\f053"}.fa-chevron-right:before{content:"\f054"}.fa-plus-circle:before{content:"\f055"}.fa-minus-circle:before{content:"\f056"}.fa-times-circle:before{content:"\f057"}.fa-check-circle:before{content:"\f058"}.fa-question-circle:before{content:"\f059"}.fa-info-circle:before{content:"\f05a"}.fa-crosshairs:before{content:"\f05b"}.fa-times-circle-o:before{content:"\f05c"}.fa-check-circle-o:before{content:"\f05d"}.fa-ban:before{content:"\f05e"}.fa-arrow-left:before{content:"\f060"}.fa-arrow-right:before{content:"\f061"}.fa-arrow-up:before{content:"\f062"}.fa-arrow-down:before{content:"\f063"}.fa-mail-forward:before,.fa-share:before{content:"\f064"}.fa-expand:before{content:"\f065"}.fa-compress:before{content:"\f066"}.fa-plus:before{content:"\f067"}.fa-minus:before{content:"\f068"}.fa-asterisk:before{content:"\f069"}.fa-exclamation-circle:before{content:"\f06a"}.fa-gift:before{content:"\f06b"}.fa-leaf:before{content:"\f06c"}.fa-fire:before{content:"\f06d"}.fa-eye:before{content:"\f06e"}.fa-eye-slash:before{content:"\f070"}.fa-warning:before,.fa-exclamation-triangle:before{content:"\f071"}.fa-plane:before{content:"\f072"}.fa-calendar:before{content:"\f073"}.fa-random:before{content:"\f074"}.fa-comment:before{content:"\f075"}.fa-magnet:before{content:"\f076"}.fa-chevron-up:before{content:"\f077"}.fa-chevron-down:before{content:"\f078"}.fa-retweet:before{content:"\f079"}.fa-shopping-cart:before{content:"\f07a"}.fa-folder:before{content:"\f07b"}.fa-folder-open:before{content:"\f07c"}.fa-arrows-v:before{content:"\f07d"}.fa-arrows-h:before{content:"\f07e"}.fa-bar-chart-o:before{content:"\f080"}.fa-twitter-square:before{content:"\f081"}.fa-facebook-square:before{content:"\f082"}.fa-camera-retro:before{content:"\f083"}.fa-key:before{content:"\f084"}.fa-gears:before,.fa-cogs:before{content:"\f085"}.fa-comments:before{content:"\f086"}.fa-thumbs-o-up:before{content:"\f087"}.fa-thumbs-o-down:before{content:"\f088"}.fa-star-half:before{content:"\f089"}.fa-heart-o:before{content:"\f08a"}.fa-sign-out:before{content:"\f08b"}.fa-linkedin-square:before{content:"\f08c"}.fa-thumb-tack:before{content:"\f08d"}.fa-external-link:before{content:"\f08e"}.fa-sign-in:before{content:"\f090"}.fa-trophy:before{content:"\f091"}.fa-github-square:before{content:"\f092"}.fa-upload:before{content:"\f093"}.fa-lemon-o:before{content:"\f094"}.fa-phone:before{content:"\f095"}.fa-square-o:before{content:"\f096"}.fa-bookmark-o:before{content:"\f097"}.fa-phone-square:before{content:"\f098"}.fa-twitter:before{content:"\f099"}.fa-facebook:before{content:"\f09a"}.fa-github:before{content:"\f09b"}.fa-unlock:before{content:"\f09c"}.fa-credit-card:before{content:"\f09d"}.fa-rss:before{content:"\f09e"}.fa-hdd-o:before{content:"\f0a0"}.fa-bullhorn:before{content:"\f0a1"}.fa-bell:before{content:"\f0f3"}.fa-certificate:before{content:"\f0a3"}.fa-hand-o-right:before{content:"\f0a4"}.fa-hand-o-left:before{content:"\f0a5"}.fa-hand-o-up:before{content:"\f0a6"}.fa-hand-o-down:before{content:"\f0a7"}.fa-arrow-circle-left:before{content:"\f0a8"}.fa-arrow-circle-right:before{content:"\f0a9"}.fa-arrow-circle-up:before{content:"\f0aa"}.fa-arrow-circle-down:before{content:"\f0ab"}.fa-globe:before{content:"\f0ac"}.fa-wrench:before{content:"\f0ad"}.fa-tasks:before{content:"\f0ae"}.fa-filter:before{content:"\f0b0"}.fa-briefcase:before{content:"\f0b1"}.fa-arrows-alt:before{content:"\f0b2"}.fa-group:before,.fa-users:before{content:"\f0c0"}.fa-chain:before,.fa-link:before{content:"\f0c1"}.fa-cloud:before{content:"\f0c2"}.fa-flask:before{content:"\f0c3"}.fa-cut:before,.fa-scissors:before{content:"\f0c4"}.fa-copy:before,.fa-files-o:before{content:"\f0c5"}.fa-paperclip:before{content:"\f0c6"}.fa-save:before,.fa-floppy-o:before{content:"\f0c7"}.fa-square:before{content:"\f0c8"}.fa-bars:before{content:"\f0c9"}.fa-list-ul:before{content:"\f0ca"}.fa-list-ol:before{content:"\f0cb"}.fa-strikethrough:before{content:"\f0cc"}.fa-underline:before{content:"\f0cd"}.fa-table:before{content:"\f0ce"}.fa-magic:before{content:"\f0d0"}.fa-truck:before{content:"\f0d1"}.fa-pinterest:before{content:"\f0d2"}.fa-pinterest-square:before{content:"\f0d3"}.fa-google-plus-square:before{content:"\f0d4"}.fa-google-plus:before{content:"\f0d5"}.fa-money:before{content:"\f0d6"}.fa-caret-down:before{content:"\f0d7"}.fa-caret-up:before{content:"\f0d8"}.fa-caret-left:before{content:"\f0d9"}.fa-caret-right:before{content:"\f0da"}.fa-columns:before{content:"\f0db"}.fa-unsorted:before,.fa-sort:before{content:"\f0dc"}.fa-sort-down:before,.fa-sort-asc:before{content:"\f0dd"}.fa-sort-up:before,.fa-sort-desc:before{content:"\f0de"}.fa-envelope:before{content:"\f0e0"}.fa-linkedin:before{content:"\f0e1"}.fa-rotate-left:before,.fa-undo:before{content:"\f0e2"}.fa-legal:before,.fa-gavel:before{content:"\f0e3"}.fa-dashboard:before,.fa-tachometer:before{content:"\f0e4"}.fa-comment-o:before{content:"\f0e5"}.fa-comments-o:before{content:"\f0e6"}.fa-flash:before,.fa-bolt:before{content:"\f0e7"}.fa-sitemap:before{content:"\f0e8"}.fa-umbrella:before{content:"\f0e9"}.fa-paste:before,.fa-clipboard:before{content:"\f0ea"}.fa-lightbulb-o:before{content:"\f0eb"}.fa-exchange:before{content:"\f0ec"}.fa-cloud-download:before{content:"\f0ed"}.fa-cloud-upload:before{content:"\f0ee"}.fa-user-md:before{content:"\f0f0"}.fa-stethoscope:before{content:"\f0f1"}.fa-suitcase:before{content:"\f0f2"}.fa-bell-o:before{content:"\f0a2"}.fa-coffee:before{content:"\f0f4"}.fa-cutlery:before{content:"\f0f5"}.fa-file-text-o:before{content:"\f0f6"}.fa-building-o:before{content:"\f0f7"}.fa-hospital-o:before{content:"\f0f8"}.fa-ambulance:before{content:"\f0f9"}.fa-medkit:before{content:"\f0fa"}.fa-fighter-jet:before{content:"\f0fb"}.fa-beer:before{content:"\f0fc"}.fa-h-square:before{content:"\f0fd"}.fa-plus-square:before{content:"\f0fe"}.fa-angle-double-left:before{content:"\f100"}.fa-angle-double-right:before{content:"\f101"}.fa-angle-double-up:before{content:"\f102"}.fa-angle-double-down:before{content:"\f103"}.fa-angle-left:before{content:"\f104"}.fa-angle-right:before{content:"\f105"}.fa-angle-up:before{content:"\f106"}.fa-angle-down:before{content:"\f107"}.fa-desktop:before{content:"\f108"}.fa-laptop:before{content:"\f109"}.fa-tablet:before{content:"\f10a"}.fa-mobile-phone:before,.fa-mobile:before{content:"\f10b"}.fa-circle-o:before{content:"\f10c"}.fa-quote-left:before{content:"\f10d"}.fa-quote-right:before{content:"\f10e"}.fa-spinner:before{content:"\f110"}.fa-circle:before{content:"\f111"}.fa-mail-reply:before,.fa-reply:before{content:"\f112"}.fa-github-alt:before{content:"\f113"}.fa-folder-o:before{content:"\f114"}.fa-folder-open-o:before{content:"\f115"}.fa-smile-o:before{content:"\f118"}.fa-frown-o:before{content:"\f119"}.fa-meh-o:before{content:"\f11a"}.fa-gamepad:before{content:"\f11b"}.fa-keyboard-o:before{content:"\f11c"}.fa-flag-o:before{content:"\f11d"}.fa-flag-checkered:before{content:"\f11e"}.fa-terminal:before{content:"\f120"}.fa-code:before{content:"\f121"}.fa-reply-all:before{content:"\f122"}.fa-mail-reply-all:before{content:"\f122"}.fa-star-half-empty:before,.fa-star-half-full:before,.fa-star-half-o:before{content:"\f123"}.fa-location-arrow:before{content:"\f124"}.fa-crop:before{content:"\f125"}.fa-code-fork:before{content:"\f126"}.fa-unlink:before,.fa-chain-broken:before{content:"\f127"}.fa-question:before{content:"\f128"}.fa-info:before{content:"\f129"}.fa-exclamation:before{content:"\f12a"}.fa-superscript:before{content:"\f12b"}.fa-subscript:before{content:"\f12c"}.fa-eraser:before{content:"\f12d"}.fa-puzzle-piece:before{content:"\f12e"}.fa-microphone:before{content:"\f130"}.fa-microphone-slash:before{content:"\f131"}.fa-shield:before{content:"\f132"}.fa-calendar-o:before{content:"\f133"}.fa-fire-extinguisher:before{content:"\f134"}.fa-rocket:before{content:"\f135"}.fa-maxcdn:before{content:"\f136"}.fa-chevron-circle-left:before{content:"\f137"}.fa-chevron-circle-right:before{content:"\f138"}.fa-chevron-circle-up:before{content:"\f139"}.fa-chevron-circle-down:before{content:"\f13a"}.fa-html5:before{content:"\f13b"}.fa-css3:before{content:"\f13c"}.fa-anchor:before{content:"\f13d"}.fa-unlock-alt:before{content:"\f13e"}.fa-bullseye:before{content:"\f140"}.fa-ellipsis-h:before{content:"\f141"}.fa-ellipsis-v:before{content:"\f142"}.fa-rss-square:before{content:"\f143"}.fa-play-circle:before{content:"\f144"}.fa-ticket:before{content:"\f145"}.fa-minus-square:before{content:"\f146"}.fa-minus-square-o:before{content:"\f147"}.fa-level-up:before{content:"\f148"}.fa-level-down:before{content:"\f149"}.fa-check-square:before{content:"\f14a"}.fa-pencil-square:before{content:"\f14b"}.fa-external-link-square:before{content:"\f14c"}.fa-share-square:before{content:"\f14d"}.fa-compass:before{content:"\f14e"}.fa-toggle-down:before,.fa-caret-square-o-down:before{content:"\f150"}.fa-toggle-up:before,.fa-caret-square-o-up:before{content:"\f151"}.fa-toggle-right:before,.fa-caret-square-o-right:before{content:"\f152"}.fa-euro:before,.fa-eur:before{content:"\f153"}.fa-gbp:before{content:"\f154"}.fa-dollar:before,.fa-usd:before{content:"\f155"}.fa-rupee:before,.fa-inr:before{content:"\f156"}.fa-cny:before,.fa-rmb:before,.fa-yen:before,.fa-jpy:before{content:"\f157"}.fa-ruble:before,.fa-rouble:before,.fa-rub:before{content:"\f158"}.fa-won:before,.fa-krw:before{content:"\f159"}.fa-bitcoin:before,.fa-btc:before{content:"\f15a"}.fa-file:before{content:"\f15b"}.fa-file-text:before{content:"\f15c"}.fa-sort-alpha-asc:before{content:"\f15d"}.fa-sort-alpha-desc:before{content:"\f15e"}.fa-sort-amount-asc:before{content:"\f160"}.fa-sort-amount-desc:before{content:"\f161"}.fa-sort-numeric-asc:before{content:"\f162"}.fa-sort-numeric-desc:before{content:"\f163"}.fa-thumbs-up:before{content:"\f164"}.fa-thumbs-down:before{content:"\f165"}.fa-youtube-square:before{content:"\f166"}.fa-youtube:before{content:"\f167"}.fa-xing:before{content:"\f168"}.fa-xing-square:before{content:"\f169"}.fa-youtube-play:before{content:"\f16a"}.fa-dropbox:before{content:"\f16b"}.fa-stack-overflow:before{content:"\f16c"}.fa-instagram:before{content:"\f16d"}.fa-flickr:before{content:"\f16e"}.fa-adn:before{content:"\f170"}.fa-bitbucket:before{content:"\f171"}.fa-bitbucket-square:before{content:"\f172"}.fa-tumblr:before{content:"\f173"}.fa-tumblr-square:before{content:"\f174"}.fa-long-arrow-down:before{content:"\f175"}.fa-long-arrow-up:before{content:"\f176"}.fa-long-arrow-left:before{content:"\f177"}.fa-long-arrow-right:before{content:"\f178"}.fa-apple:before{content:"\f179"}.fa-windows:before{content:"\f17a"}.fa-android:before{content:"\f17b"}.fa-linux:before{content:"\f17c"}.fa-dribbble:before{content:"\f17d"}.fa-skype:before{content:"\f17e"}.fa-foursquare:before{content:"\f180"}.fa-trello:before{content:"\f181"}.fa-female:before{content:"\f182"}.fa-male:before{content:"\f183"}.fa-gittip:before{content:"\f184"}.fa-sun-o:before{content:"\f185"}.fa-moon-o:before{content:"\f186"}.fa-archive:before{content:"\f187"}.fa-bug:before{content:"\f188"}.fa-vk:before{content:"\f189"}.fa-weibo:before{content:"\f18a"}.fa-renren:before{content:"\f18b"}.fa-pagelines:before{content:"\f18c"}.fa-stack-exchange:before{content:"\f18d"}.fa-arrow-circle-o-right:before{content:"\f18e"}.fa-arrow-circle-o-left:before{content:"\f190"}.fa-toggle-left:before,.fa-caret-square-o-left:before{content:"\f191"}.fa-dot-circle-o:before{content:"\f192"}.fa-wheelchair:before{content:"\f193"}.fa-vimeo-square:before{content:"\f194"}.fa-turkish-lira:before,.fa-try:before{content:"\f195"}.fa-plus-square-o:before{content:"\f196"} -------------------------------------------------------------------------------- /webskins/_default_/pub/fonts/FontAwesome.otf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirrreHQ/zncstrap/e4aef30eb510e8926068e43711e6c4aa65fc5dc2/webskins/_default_/pub/fonts/FontAwesome.otf -------------------------------------------------------------------------------- /webskins/_default_/pub/fonts/fontawesome-webfont.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirrreHQ/zncstrap/e4aef30eb510e8926068e43711e6c4aa65fc5dc2/webskins/_default_/pub/fonts/fontawesome-webfont.eot -------------------------------------------------------------------------------- /webskins/_default_/pub/fonts/fontawesome-webfont.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirrreHQ/zncstrap/e4aef30eb510e8926068e43711e6c4aa65fc5dc2/webskins/_default_/pub/fonts/fontawesome-webfont.ttf -------------------------------------------------------------------------------- /webskins/_default_/pub/fonts/fontawesome-webfont.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirrreHQ/zncstrap/e4aef30eb510e8926068e43711e6c4aa65fc5dc2/webskins/_default_/pub/fonts/fontawesome-webfont.woff -------------------------------------------------------------------------------- /webskins/_default_/pub/fonts/glyphicons-halflings-regular.eot: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirrreHQ/zncstrap/e4aef30eb510e8926068e43711e6c4aa65fc5dc2/webskins/_default_/pub/fonts/glyphicons-halflings-regular.eot -------------------------------------------------------------------------------- /webskins/_default_/pub/fonts/glyphicons-halflings-regular.ttf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirrreHQ/zncstrap/e4aef30eb510e8926068e43711e6c4aa65fc5dc2/webskins/_default_/pub/fonts/glyphicons-halflings-regular.ttf -------------------------------------------------------------------------------- /webskins/_default_/pub/fonts/glyphicons-halflings-regular.woff: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirrreHQ/zncstrap/e4aef30eb510e8926068e43711e6c4aa65fc5dc2/webskins/_default_/pub/fonts/glyphicons-halflings-regular.woff -------------------------------------------------------------------------------- /webskins/_default_/pub/selectize.bootstrap3.css: -------------------------------------------------------------------------------- 1 | /** 2 | * selectize.bootstrap3.css (v0.12.1) - Bootstrap 3 Theme 3 | * Copyright (c) 2013–2015 Brian Reavis & contributors 4 | * 5 | * Licensed under the Apache License, Version 2.0 (the "License"); you may not use this 6 | * file except in compliance with the License. You may obtain a copy of the License at: 7 | * http://www.apache.org/licenses/LICENSE-2.0 8 | * 9 | * Unless required by applicable law or agreed to in writing, software distributed under 10 | * the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF 11 | * ANY KIND, either express or implied. See the License for the specific language 12 | * governing permissions and limitations under the License. 13 | * 14 | * @author Brian Reavis 15 | */ 16 | .selectize-control.plugin-drag_drop.multi > .selectize-input > div.ui-sortable-placeholder { 17 | visibility: visible !important; 18 | background: #f2f2f2 !important; 19 | background: rgba(0, 0, 0, 0.06) !important; 20 | border: 0 none !important; 21 | -webkit-box-shadow: inset 0 0 12px 4px #ffffff; 22 | box-shadow: inset 0 0 12px 4px #ffffff; 23 | } 24 | .selectize-control.plugin-drag_drop .ui-sortable-placeholder::after { 25 | content: '!'; 26 | visibility: hidden; 27 | } 28 | .selectize-control.plugin-drag_drop .ui-sortable-helper { 29 | -webkit-box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); 30 | box-shadow: 0 2px 5px rgba(0, 0, 0, 0.2); 31 | } 32 | .selectize-dropdown-header { 33 | position: relative; 34 | padding: 3px 12px; 35 | border-bottom: 1px solid #d0d0d0; 36 | background: #f8f8f8; 37 | -webkit-border-radius: 4px 4px 0 0; 38 | -moz-border-radius: 4px 4px 0 0; 39 | border-radius: 4px 4px 0 0; 40 | } 41 | .selectize-dropdown-header-close { 42 | position: absolute; 43 | right: 12px; 44 | top: 50%; 45 | color: #333333; 46 | opacity: 0.4; 47 | margin-top: -12px; 48 | line-height: 20px; 49 | font-size: 20px !important; 50 | } 51 | .selectize-dropdown-header-close:hover { 52 | color: #000000; 53 | } 54 | .selectize-dropdown.plugin-optgroup_columns .optgroup { 55 | border-right: 1px solid #f2f2f2; 56 | border-top: 0 none; 57 | float: left; 58 | -webkit-box-sizing: border-box; 59 | -moz-box-sizing: border-box; 60 | box-sizing: border-box; 61 | } 62 | .selectize-dropdown.plugin-optgroup_columns .optgroup:last-child { 63 | border-right: 0 none; 64 | } 65 | .selectize-dropdown.plugin-optgroup_columns .optgroup:before { 66 | display: none; 67 | } 68 | .selectize-dropdown.plugin-optgroup_columns .optgroup-header { 69 | border-top: 0 none; 70 | } 71 | .selectize-control.plugin-remove_button [data-value] { 72 | position: relative; 73 | padding-right: 24px !important; 74 | } 75 | .selectize-control.plugin-remove_button [data-value] .remove { 76 | z-index: 1; 77 | /* fixes ie bug (see #392) */ 78 | position: absolute; 79 | top: 0; 80 | right: 0; 81 | bottom: 0; 82 | width: 17px; 83 | text-align: center; 84 | font-weight: bold; 85 | font-size: 12px; 86 | color: inherit; 87 | text-decoration: none; 88 | vertical-align: middle; 89 | display: inline-block; 90 | padding: 1px 0 0 0; 91 | border-left: 1px solid rgba(0, 0, 0, 0); 92 | -webkit-border-radius: 0 2px 2px 0; 93 | -moz-border-radius: 0 2px 2px 0; 94 | border-radius: 0 2px 2px 0; 95 | -webkit-box-sizing: border-box; 96 | -moz-box-sizing: border-box; 97 | box-sizing: border-box; 98 | } 99 | .selectize-control.plugin-remove_button [data-value] .remove:hover { 100 | background: rgba(0, 0, 0, 0.05); 101 | } 102 | .selectize-control.plugin-remove_button [data-value].active .remove { 103 | border-left-color: rgba(0, 0, 0, 0); 104 | } 105 | .selectize-control.plugin-remove_button .disabled [data-value] .remove:hover { 106 | background: none; 107 | } 108 | .selectize-control.plugin-remove_button .disabled [data-value] .remove { 109 | border-left-color: rgba(77, 77, 77, 0); 110 | } 111 | .selectize-control { 112 | position: relative; 113 | } 114 | .selectize-dropdown, 115 | .selectize-input, 116 | .selectize-input input { 117 | color: #333333; 118 | font-family: inherit; 119 | font-size: inherit; 120 | line-height: 20px; 121 | -webkit-font-smoothing: inherit; 122 | } 123 | .selectize-input, 124 | .selectize-control.single .selectize-input.input-active { 125 | background: #ffffff; 126 | cursor: text; 127 | display: inline-block; 128 | } 129 | .selectize-input { 130 | border: 1px solid #cccccc; 131 | padding: 6px 12px; 132 | display: inline-block; 133 | width: 100%; 134 | overflow: hidden; 135 | position: relative; 136 | z-index: 1; 137 | -webkit-box-sizing: border-box; 138 | -moz-box-sizing: border-box; 139 | box-sizing: border-box; 140 | -webkit-box-shadow: none; 141 | box-shadow: none; 142 | -webkit-border-radius: 4px; 143 | -moz-border-radius: 4px; 144 | border-radius: 4px; 145 | } 146 | .selectize-control.multi .selectize-input.has-items { 147 | padding: 5px 12px 2px; 148 | } 149 | .selectize-input.full { 150 | background-color: #ffffff; 151 | } 152 | .selectize-input.disabled, 153 | .selectize-input.disabled * { 154 | cursor: default !important; 155 | } 156 | .selectize-input.focus { 157 | -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15); 158 | box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.15); 159 | } 160 | .selectize-input.dropdown-active { 161 | -webkit-border-radius: 4px 4px 0 0; 162 | -moz-border-radius: 4px 4px 0 0; 163 | border-radius: 4px 4px 0 0; 164 | } 165 | .selectize-input > * { 166 | vertical-align: baseline; 167 | display: -moz-inline-stack; 168 | display: inline-block; 169 | zoom: 1; 170 | *display: inline; 171 | } 172 | .selectize-control.multi .selectize-input > div { 173 | cursor: pointer; 174 | margin: 0 3px 3px 0; 175 | padding: 1px 3px; 176 | background: #efefef; 177 | color: #333333; 178 | border: 0 solid rgba(0, 0, 0, 0); 179 | } 180 | .selectize-control.multi .selectize-input > div.active { 181 | background: #428bca; 182 | color: #ffffff; 183 | border: 0 solid rgba(0, 0, 0, 0); 184 | } 185 | .selectize-control.multi .selectize-input.disabled > div, 186 | .selectize-control.multi .selectize-input.disabled > div.active { 187 | color: #808080; 188 | background: #ffffff; 189 | border: 0 solid rgba(77, 77, 77, 0); 190 | } 191 | .selectize-input > input { 192 | display: inline-block !important; 193 | padding: 0 !important; 194 | min-height: 0 !important; 195 | max-height: none !important; 196 | max-width: 100% !important; 197 | margin: 0 !important; 198 | text-indent: 0 !important; 199 | border: 0 none !important; 200 | background: none !important; 201 | line-height: inherit !important; 202 | -webkit-user-select: auto !important; 203 | -webkit-box-shadow: none !important; 204 | box-shadow: none !important; 205 | } 206 | .selectize-input > input::-ms-clear { 207 | display: none; 208 | } 209 | .selectize-input > input:focus { 210 | outline: none !important; 211 | } 212 | .selectize-input::after { 213 | content: ' '; 214 | display: block; 215 | clear: left; 216 | } 217 | .selectize-input.dropdown-active::before { 218 | content: ' '; 219 | display: block; 220 | position: absolute; 221 | background: #ffffff; 222 | height: 1px; 223 | bottom: 0; 224 | left: 0; 225 | right: 0; 226 | } 227 | .selectize-dropdown { 228 | position: absolute; 229 | z-index: 10; 230 | border: 1px solid #d0d0d0; 231 | background: #ffffff; 232 | margin: -1px 0 0 0; 233 | border-top: 0 none; 234 | -webkit-box-sizing: border-box; 235 | -moz-box-sizing: border-box; 236 | box-sizing: border-box; 237 | -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); 238 | box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1); 239 | -webkit-border-radius: 0 0 4px 4px; 240 | -moz-border-radius: 0 0 4px 4px; 241 | border-radius: 0 0 4px 4px; 242 | } 243 | .selectize-dropdown [data-selectable] { 244 | cursor: pointer; 245 | overflow: hidden; 246 | } 247 | .selectize-dropdown [data-selectable] .highlight { 248 | background: rgba(255, 237, 40, 0.4); 249 | -webkit-border-radius: 1px; 250 | -moz-border-radius: 1px; 251 | border-radius: 1px; 252 | } 253 | .selectize-dropdown [data-selectable], 254 | .selectize-dropdown .optgroup-header { 255 | padding: 3px 12px; 256 | } 257 | .selectize-dropdown .optgroup:first-child .optgroup-header { 258 | border-top: 0 none; 259 | } 260 | .selectize-dropdown .optgroup-header { 261 | color: #777777; 262 | background: #ffffff; 263 | cursor: default; 264 | } 265 | .selectize-dropdown .active { 266 | background-color: #f5f5f5; 267 | color: #262626; 268 | } 269 | .selectize-dropdown .active.create { 270 | color: #262626; 271 | } 272 | .selectize-dropdown .create { 273 | color: rgba(51, 51, 51, 0.5); 274 | } 275 | .selectize-dropdown-content { 276 | overflow-y: auto; 277 | overflow-x: hidden; 278 | max-height: 200px; 279 | } 280 | .selectize-control.single .selectize-input, 281 | .selectize-control.single .selectize-input input { 282 | cursor: pointer; 283 | } 284 | .selectize-control.single .selectize-input.input-active, 285 | .selectize-control.single .selectize-input.input-active input { 286 | cursor: text; 287 | } 288 | .selectize-control.single .selectize-input:after { 289 | content: ' '; 290 | display: block; 291 | position: absolute; 292 | top: 50%; 293 | right: 17px; 294 | margin-top: -3px; 295 | width: 0; 296 | height: 0; 297 | border-style: solid; 298 | border-width: 5px 5px 0 5px; 299 | border-color: #333333 transparent transparent transparent; 300 | } 301 | .selectize-control.single .selectize-input.dropdown-active:after { 302 | margin-top: -4px; 303 | border-width: 0 5px 5px 5px; 304 | border-color: transparent transparent #333333 transparent; 305 | } 306 | .selectize-control.rtl.single .selectize-input:after { 307 | left: 17px; 308 | right: auto; 309 | } 310 | .selectize-control.rtl .selectize-input > input { 311 | margin: 0 4px 0 -2px !important; 312 | } 313 | .selectize-control .selectize-input.disabled { 314 | opacity: 0.5; 315 | background-color: #ffffff; 316 | } 317 | .selectize-dropdown, 318 | .selectize-dropdown.form-control { 319 | height: auto; 320 | padding: 0; 321 | margin: 2px 0 0 0; 322 | z-index: 1000; 323 | background: #ffffff; 324 | border: 1px solid #cccccc; 325 | border: 1px solid rgba(0, 0, 0, 0.15); 326 | -webkit-border-radius: 4px; 327 | -moz-border-radius: 4px; 328 | border-radius: 4px; 329 | -webkit-box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); 330 | box-shadow: 0 6px 12px rgba(0, 0, 0, 0.175); 331 | } 332 | .selectize-dropdown .optgroup-header { 333 | font-size: 12px; 334 | line-height: 1.42857143; 335 | } 336 | .selectize-dropdown .optgroup:first-child:before { 337 | display: none; 338 | } 339 | .selectize-dropdown .optgroup:before { 340 | content: ' '; 341 | display: block; 342 | height: 1px; 343 | margin: 9px 0; 344 | overflow: hidden; 345 | background-color: #e5e5e5; 346 | margin-left: -12px; 347 | margin-right: -12px; 348 | } 349 | .selectize-dropdown-content { 350 | padding: 5px 0; 351 | } 352 | .selectize-dropdown-header { 353 | padding: 6px 12px; 354 | } 355 | .selectize-input { 356 | min-height: 34px; 357 | } 358 | .selectize-input.dropdown-active { 359 | -webkit-border-radius: 4px; 360 | -moz-border-radius: 4px; 361 | border-radius: 4px; 362 | } 363 | .selectize-input.dropdown-active::before { 364 | display: none; 365 | } 366 | .selectize-input.focus { 367 | border-color: #66afe9; 368 | outline: 0; 369 | -webkit-box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6); 370 | box-shadow: inset 0 1px 1px rgba(0,0,0,.075), 0 0 8px rgba(102, 175, 233, 0.6); 371 | } 372 | .has-error .selectize-input { 373 | border-color: #a94442; 374 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); 375 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075); 376 | } 377 | .has-error .selectize-input:focus { 378 | border-color: #843534; 379 | -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; 380 | box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #ce8483; 381 | } 382 | .selectize-control.multi .selectize-input.has-items { 383 | padding-left: 9px; 384 | padding-right: 9px; 385 | } 386 | .selectize-control.multi .selectize-input > div { 387 | -webkit-border-radius: 3px; 388 | -moz-border-radius: 3px; 389 | border-radius: 3px; 390 | } 391 | .form-control.selectize-control { 392 | padding: 0; 393 | height: auto; 394 | border: none; 395 | background: none; 396 | -webkit-box-shadow: none; 397 | box-shadow: none; 398 | -webkit-border-radius: 0; 399 | -moz-border-radius: 0; 400 | border-radius: 0; 401 | } 402 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/Banner.tmpl: -------------------------------------------------------------------------------- 1 | 2 |

3 |

An Advanced IRC Bouncer

4 |
via
5 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/BaseHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | ZNC — <? VAR Title DEFAULT="Web Frontend" ?> 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | In your subpage (module page or static page) you'll probably want to do something like this... 29 | 30 | This is my super cool sub page! 31 | 32 | If you'd like to add your own local css file to be included after the global main.css, you can make your own Header.tmpl like so... 33 | 34 | 35 | 36 | 37 | 38 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/BreadCrumbs.tmpl: -------------------------------------------------------------------------------- 1 | 2 |
3 | 9 |
10 | 11 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/DocType.tmpl: -------------------------------------------------------------------------------- 1 | xml version="1.0" encoding="UTF-8"?> 2 | 3 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/Error.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 |
4 |
5 |
6 |
7 |
Error!
8 |
9 | 10 |
11 |
12 |
13 |
14 |
15 | 16 | 17 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/ExtraHeader.tmpl: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/Footer.tmpl: -------------------------------------------------------------------------------- 1 | 6 | 7 | 8 | 9 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/FooterTag.tmpl: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/FirrreHQ/zncstrap/e4aef30eb510e8926068e43711e6c4aa65fc5dc2/webskins/_default_/tmpl/FooterTag.tmpl -------------------------------------------------------------------------------- /webskins/_default_/tmpl/Header.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | This is a wrapper file which simply includes BaseHeader.tmpl so that new skins can make a Header.tmpl similar to... 5 | 6 | 7 | ...this way a skin can base itself off of the same html as the default skin but still add custom css/js 8 | @todo In the future I'd like to support something like or even just do a current file vs inc'd file comparison to make sure they aren't the same. This way we can from the "derived" Header.tmpl and not cause an recursive loop. 9 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/InfoBar.tmpl: -------------------------------------------------------------------------------- 1 |
2 |
3 |
4 | Logged in as: (from ) 5 |
6 |
7 |
8 | 9 | 10 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/LoginBar.tmpl: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 |
5 | 6 | 7 | 8 |
9 |
10 |
11 | 12 |
13 |
14 | 15 |
16 | 17 |
18 |
19 | 20 |
21 |
22 |
-------------------------------------------------------------------------------- /webskins/_default_/tmpl/MessageBar.tmpl: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 |
5 |
6 |
7 |
8 |
9 | 10 | 11 |
12 |
13 |
14 |
15 |
16 |
17 |
18 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/Navbar.tmpl: -------------------------------------------------------------------------------- 1 | 2 | 138 | 139 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/_csrf_check.tmpl: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /webskins/_default_/tmpl/index.tmpl: -------------------------------------------------------------------------------- 1 | 2 |
3 |
4 |
5 | 6 |
7 |

Welcome to ZNC's web interface! — This web interface will allow you to manage your ZNC account(s) via the WWW. You will be able to enable, disable, add, edit, remove, clone, search your bouncer(s).

8 |

New to ZNC? Trying to figure out how to connect to your ZNC? Check out the official ZNC Wiki or hop onto the IRC channel: #znc at Freenode or EFnet IRC Network.

9 | 10 | 11 |

Oppss! No Web-enabled modules have been loaded. Load modules from IRC ("/msg *status help" and "/msg *status loadmod <module>"). Once you have loaded some Web-enabled modules, the menu will expand.

12 | 13 | 14 | 15 |
16 |
17 | --------------------------------------------------------------------------------