The Puggening: Update from Jade to Pug
1.) module dependency updated from jade 1.11.0 to pug 2.0.0-beta3 2.) All references to Jade have been changed to Pug 3.) /srv/web/jade.js is renamed to pug.js 4.) all template files renamed accordingly 5.) "mixin somename" is automatically considered a declaration, invocations must use "+somename" 6.) variable interpolation is no longer supported inside element attributes, use direct references and string concatenation instead. 7.) bumped minor version
This commit is contained in:
parent
f75d40d278
commit
df5c5cd54f
31 changed files with 233 additions and 233 deletions
|
|
@ -2,16 +2,16 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/account/channels")
|
||||
mixin navloginlogout("/account/channels")
|
||||
+navdefaultlinks("/account/channels")
|
||||
+navloginlogout("/account/channels")
|
||||
section#mainpage
|
||||
.container
|
||||
if !loggedIn
|
||||
|
|
@ -38,13 +38,13 @@ html(lang="en")
|
|||
for c in channels
|
||||
tr
|
||||
th
|
||||
form.form-inline.pull-right(action="/account/channels", method="post", onsubmit="return confirm('Are you sure you want to delete #{c.name}? This cannot be undone');")
|
||||
form.form-inline.pull-right(action="/account/channels", method="post", onsubmit="return confirm('Are you sure you want to delete " +c.name+ "? This cannot be undone');")
|
||||
input(type="hidden", name="_csrf", value=csrfToken)
|
||||
input(type="hidden", name="action", value="delete_channel")
|
||||
input(type="hidden", name="name", value="#{c.name}")
|
||||
input(type="hidden", name="name", value=c.name)
|
||||
button.btn.btn-xs.btn-danger(type="submit") Delete
|
||||
span.glyphicon.glyphicon-trash
|
||||
a(href="/r/#{c.name}", style="margin-left: 5px")= c.name
|
||||
a(href="/r/"+c.name, style="margin-left: 5px")= c.name
|
||||
.col-lg-6.col-md-6
|
||||
h3 Register a new channel
|
||||
if newChannelError
|
||||
|
|
@ -60,4 +60,4 @@ html(lang="en")
|
|||
button.btn.btn-primary.btn-block(type="submit") Register
|
||||
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
|
|
@ -2,16 +2,16 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/account/edit")
|
||||
mixin navloginlogout("/account/edit")
|
||||
+navdefaultlinks("/account/edit")
|
||||
+navloginlogout("/account/edit")
|
||||
section#mainpage
|
||||
.container
|
||||
if !loggedIn
|
||||
|
|
@ -60,7 +60,7 @@ html(lang="en")
|
|||
input#email.form-control(type="email", name="email")
|
||||
button#changeemailbtn.btn.btn-danger.btn-block(type="submit") Change Email
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
script(type="text/javascript").
|
||||
function validatePasswordChange() {
|
||||
var pw = $("#newpassword").val();
|
||||
|
|
@ -2,16 +2,16 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/account/passwordrecover/")
|
||||
mixin navloginlogout("/account/passwordrecover/")
|
||||
+navdefaultlinks("/account/passwordrecover/")
|
||||
+navloginlogout("/account/passwordrecover/")
|
||||
section#mainpage
|
||||
.container
|
||||
.col-lg-6.col-lg-offset-3.col-md-6.col-md-offset-3
|
||||
|
|
@ -25,4 +25,4 @@ html(lang="en")
|
|||
strong Password recovery failed
|
||||
p= recoverErr
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
|
|
@ -2,16 +2,16 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/account/passwordreset")
|
||||
mixin navloginlogout("/account/passwordreset")
|
||||
+navdefaultlinks("/account/passwordreset")
|
||||
+navloginlogout("/account/passwordreset")
|
||||
section#mainpage
|
||||
.container
|
||||
.col-lg-6.col-lg-offset-3.col-md-6.col-md-offset-3
|
||||
|
|
@ -35,4 +35,4 @@ html(lang="en")
|
|||
button.btn.btn-primary.btn-block(type="submit") Send reset request
|
||||
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
|
|
@ -2,16 +2,16 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/account/profile")
|
||||
mixin navloginlogout("/account/profile")
|
||||
+navdefaultlinks("/account/profile")
|
||||
+navloginlogout("/account/profile")
|
||||
section#mainpage
|
||||
.container
|
||||
if !loggedIn
|
||||
|
|
@ -42,6 +42,6 @@ html(lang="en")
|
|||
button.btn.btn-primary.btn-block(type="submit") Save
|
||||
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
script(type="text/javascript").
|
||||
$("#profileimage").val("#{profileImage}");
|
||||
|
|
@ -2,21 +2,21 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
link(rel="stylesheet", type="text/css", href="/css/acp.css")
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/acp")
|
||||
+navdefaultlinks("/acp")
|
||||
li#nav-acp-section.dropdown
|
||||
a#nav-acp-dd-toggle.dropdown-toggle(data-toggle="dropdown", href="javascript:void(0)") Menu
|
||||
span.caret
|
||||
ul.dropdown-menu
|
||||
mixin navloginlogout("/acp")
|
||||
+navloginlogout("/acp")
|
||||
section#mainpage
|
||||
.container
|
||||
.row
|
||||
|
|
@ -125,7 +125,7 @@ html(lang="en")
|
|||
canvas#stat_mem(width="1140", height="400")
|
||||
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
script(type="text/javascript").
|
||||
var USEROPTS = { secure_connection: true };
|
||||
script(src=sioSource)
|
||||
|
|
@ -2,18 +2,18 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
link(href="//code.jquery.com/ui/1.10.3/themes/smoothness/jquery-ui.css", rel="stylesheet")
|
||||
link(rel="stylesheet", href="/css/video-js.css")
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
- var cname = "/r/" + channelName
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks(cname)
|
||||
+navdefaultlinks(cname)
|
||||
li: a(href="javascript:void(0)", onclick="javascript:showUserOptions()") Options
|
||||
li: a#showchansettings(href="javascript:void(0)", onclick="javascript:showChannelSettings()") Channel Settings
|
||||
li.dropdown
|
||||
|
|
@ -22,7 +22,7 @@ html(lang="en")
|
|||
ul.dropdown-menu
|
||||
li: a(href="#" onclick="javascript:chatOnly()") Chat Only
|
||||
li: a(href="#" onclick="javascript:removeVideo(event)") Remove Video
|
||||
mixin navloginlogout(cname)
|
||||
+navloginlogout(cname)
|
||||
section#mainpage
|
||||
.container
|
||||
#motdrow.row
|
||||
|
|
@ -168,11 +168,11 @@ html(lang="en")
|
|||
.modal-body
|
||||
.tab-content
|
||||
include useroptions
|
||||
mixin us-general()
|
||||
mixin us-playback()
|
||||
mixin us-chat()
|
||||
mixin us-scripts()
|
||||
mixin us-mod()
|
||||
+us-general()
|
||||
+us-playback()
|
||||
+us-chat()
|
||||
+us-scripts()
|
||||
+us-mod()
|
||||
.modal-footer
|
||||
button.btn.btn-primary(type="button", data-dismiss="modal", onclick="javascript:saveUserOptions()") Save
|
||||
button.btn.btn-default(type="button", data-dismiss="modal") Close
|
||||
|
|
@ -219,23 +219,23 @@ html(lang="en")
|
|||
.modal-body
|
||||
.tab-content
|
||||
include channeloptions
|
||||
mixin miscoptions()
|
||||
mixin adminoptions()
|
||||
mixin motdeditor()
|
||||
mixin csseditor()
|
||||
mixin jseditor()
|
||||
mixin banlist()
|
||||
mixin recentjoins()
|
||||
mixin chanranks()
|
||||
mixin chatfilters()
|
||||
mixin emotes()
|
||||
mixin chanlog()
|
||||
mixin permeditor()
|
||||
+miscoptions()
|
||||
+adminoptions()
|
||||
+motdeditor()
|
||||
+csseditor()
|
||||
+jseditor()
|
||||
+banlist()
|
||||
+recentjoins()
|
||||
+chanranks()
|
||||
+chatfilters()
|
||||
+emotes()
|
||||
+chanlog()
|
||||
+permeditor()
|
||||
.modal-footer
|
||||
button.btn.btn-default(type="button", data-dismiss="modal") Close
|
||||
#pmbar
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
script(id="socketio-js", src=sioSource)
|
||||
script(src="/js/data.js")
|
||||
script(src="/js/util.js")
|
||||
|
|
@ -50,19 +50,19 @@ mixin miscoptions
|
|||
#cs-miscoptions.tab-pane.active
|
||||
h4 General Settings
|
||||
form.form-horizontal(action="javascript:void(0)")
|
||||
mixin rcheckbox-auto("cs-allow_voteskip", "Allow voteskip")
|
||||
mixin rcheckbox-auto("cs-allow_dupes", "Allow duplicate videos on the playlist")
|
||||
mixin textbox-auto("cs-voteskip_ratio", "Voteskip ratio", "0.5")
|
||||
mixin textbox-auto("cs-maxlength", "Max video length", "HH:MM:SS")
|
||||
mixin textbox-auto("cs-afk_timeout", "Auto-AFK Delay", "0 (disabled)")
|
||||
+rcheckbox-auto("cs-allow_voteskip", "Allow voteskip")
|
||||
+rcheckbox-auto("cs-allow_dupes", "Allow duplicate videos on the playlist")
|
||||
+textbox-auto("cs-voteskip_ratio", "Voteskip ratio", "0.5")
|
||||
+textbox-auto("cs-maxlength", "Max video length", "HH:MM:SS")
|
||||
+textbox-auto("cs-afk_timeout", "Auto-AFK Delay", "0 (disabled)")
|
||||
.form-group
|
||||
.col-sm-offset-4
|
||||
h4 Chat Settings
|
||||
form.form-horizontal(action="javascript:void(0)")
|
||||
mixin rcheckbox-auto("cs-enable_link_regex", "Convert URLs in chat to links")
|
||||
mixin rcheckbox-auto("cs-chat_antiflood", "Throttle chat")
|
||||
mixin textbox-auto("cs-chat_antiflood_burst", "# of messages allowed before throttling")
|
||||
mixin textbox-auto("cs-chat_antiflood_sustained", "# of messages (after burst) allowed per second")
|
||||
+rcheckbox-auto("cs-enable_link_regex", "Convert URLs in chat to links")
|
||||
+rcheckbox-auto("cs-chat_antiflood", "Throttle chat")
|
||||
+textbox-auto("cs-chat_antiflood_burst", "# of messages allowed before throttling")
|
||||
+textbox-auto("cs-chat_antiflood_sustained", "# of messages (after burst) allowed per second")
|
||||
.form-group
|
||||
.col-sm-8.col-sm-offset-4
|
||||
span.text-info Changes are automatically saved.
|
||||
|
|
@ -72,14 +72,14 @@ mixin adminoptions
|
|||
h4 Admin-Only Settings
|
||||
form.form-horizontal(action="javascript:void(0)")
|
||||
- var defname = "CyTube - /r/" + channelName
|
||||
mixin textbox-auto("cs-pagetitle", "Page title", defname)
|
||||
mixin textbox-auto("cs-password", "Password", "leave blank to disable")
|
||||
mixin textbox-auto("cs-externalcss", "External CSS", "Stylesheet URL")
|
||||
mixin textbox-auto("cs-externaljs", "External Javascript", "Script URL")
|
||||
mixin rcheckbox-auto("cs-show_public", "List channel publicly")
|
||||
mixin rcheckbox-auto("cs-torbanned", "Block connections from Tor")
|
||||
mixin rcheckbox-auto("cs-allow_ascii_control", "Allow ASCII control characters (e.g. newlines)")
|
||||
mixin textbox-auto("cs-playlist_max_per_user", "Maximum # of videos per user")
|
||||
+textbox-auto("cs-pagetitle", "Page title", defname)
|
||||
+textbox-auto("cs-password", "Password", "leave blank to disable")
|
||||
+textbox-auto("cs-externalcss", "External CSS", "Stylesheet URL")
|
||||
+textbox-auto("cs-externaljs", "External Javascript", "Script URL")
|
||||
+rcheckbox-auto("cs-show_public", "List channel publicly")
|
||||
+rcheckbox-auto("cs-torbanned", "Block connections from Tor")
|
||||
+rcheckbox-auto("cs-allow_ascii_control", "Allow ASCII control characters (e.g. newlines)")
|
||||
+textbox-auto("cs-playlist_max_per_user", "Maximum # of videos per user")
|
||||
.form-group
|
||||
.col-sm-8.col-sm-offset-4
|
||||
span.text-info Set to 0 for no limit
|
||||
|
|
@ -1,20 +1,20 @@
|
|||
mixin email(e, k)
|
||||
button.btn.btn-xs.btn-default(onclick="showEmail(this, '#{e}', '#{k}')") Show Email
|
||||
button.btn.btn-xs.btn-default(onclick="showEmail(this, '"+e+"', '"+k+"')") Show Email
|
||||
|
||||
doctype html
|
||||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/contact")
|
||||
mixin navloginlogout("/contact")
|
||||
+navdefaultlinks("/contact")
|
||||
+navloginlogout("/contact")
|
||||
section#mainpage
|
||||
.container
|
||||
.col-md-8.col-md-offset-2
|
||||
|
|
@ -23,14 +23,14 @@ html(lang="en")
|
|||
each contact in contacts
|
||||
strong= contact.name
|
||||
p.text-muted= contact.title
|
||||
mixin email(contact.email, contact.emkey)
|
||||
+email(contact.email, contact.emkey)
|
||||
br
|
||||
hr
|
||||
h3 IRC
|
||||
p.
|
||||
The developer and other knowledgeable people are usually available on IRC for quick questions or comments. Official support can be provided for cytu.be and synchtube.6irc.net at <a href="http://webchat.6irc.net/?channels=cytube">irc.6irc.net#cytube</a>. These people can also address general questions about the software, but cannot provide technical support for third-party websites using this code.
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
script(type="text/javascript").
|
||||
function showEmail(btn, email, key) {
|
||||
email = unescape(email);
|
||||
|
|
@ -2,16 +2,16 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks(path)
|
||||
mixin navloginlogout(path)
|
||||
+navdefaultlinks(path)
|
||||
+navloginlogout(path)
|
||||
|
||||
section#mainpage.container
|
||||
.col-md-12
|
||||
|
|
@ -28,4 +28,4 @@ html(lang="en")
|
|||
a(href=referer) Return to previous page
|
||||
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
mixin head()
|
||||
meta(charset="utf-8")
|
||||
meta(name="viewport", content="width=device-width, initial-scale=1.0")
|
||||
meta(name="description", content="#{siteDescription}")
|
||||
meta(name="author", content="#{siteAuthor}")
|
||||
meta(name="description", content=siteDescription)
|
||||
meta(name="author", content=siteAuthor)
|
||||
|
||||
title= siteTitle
|
||||
link(href="/css/sticky-footer-navbar.css", rel="stylesheet")
|
||||
|
|
@ -13,26 +13,26 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks(path)
|
||||
mixin navloginlogout(path)
|
||||
+navdefaultlinks(path)
|
||||
+navloginlogout(path)
|
||||
|
||||
section#mainpage.container
|
||||
.col-md-12
|
||||
.alert.alert-danger
|
||||
if status == 404
|
||||
mixin notfound()
|
||||
+notfound()
|
||||
else if status == 403
|
||||
mixin forbidden()
|
||||
+forbidden()
|
||||
else
|
||||
mixin genericerror()
|
||||
+genericerror()
|
||||
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
|
|
@ -2,16 +2,16 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/")
|
||||
mixin navloginlogout("/")
|
||||
+navdefaultlinks("/")
|
||||
+navloginlogout("/")
|
||||
section#mainpage
|
||||
.container
|
||||
.col-lg-9.col-md-9
|
||||
|
|
@ -24,7 +24,7 @@ html(lang="en")
|
|||
tbody
|
||||
each chan in channels
|
||||
tr
|
||||
td: a(href="/r/#{chan.name}") #{chan.pagetitle} (#{chan.name})
|
||||
td: a(href="/r/"+chan.name) #{chan.pagetitle} (#{chan.name})
|
||||
td= chan.usercount
|
||||
td= chan.mediatitle
|
||||
.col-lg-3.col-md-3
|
||||
|
|
@ -32,7 +32,7 @@ html(lang="en")
|
|||
input#channelname.form-control(type="text", placeholder="Channel Name")
|
||||
p.text-muted New channels can be registered from the <a href="/account/channels">My Channels</a> page.
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
script(type="text/javascript").
|
||||
$("#channelname").keydown(function (ev) {
|
||||
if (ev.keyCode === 13) {
|
||||
|
|
@ -2,17 +2,17 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/login")
|
||||
+navdefaultlinks("/login")
|
||||
if loggedIn
|
||||
mixin navlogoutform("/")
|
||||
+navlogoutform("/")
|
||||
section#mainpage.container
|
||||
if wasAlreadyLoggedIn
|
||||
.col-lg-6.col-lg-offset-3.col-md-6.col-md-offset-3
|
||||
|
|
@ -51,4 +51,4 @@ html(lang="en")
|
|||
br
|
||||
a(href=redirect) Return to previous page
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
|
|
@ -2,16 +2,16 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/logout")
|
||||
mixin navloginform("/")
|
||||
+navdefaultlinks("/logout")
|
||||
+navloginform("/")
|
||||
section#mainpage.container
|
||||
.col-lg-6.col-lg-offset-3.col-md-6.col-md-offset-3
|
||||
.alert.alert-info.center.messagebox
|
||||
|
|
@ -20,4 +20,4 @@ html(lang="en")
|
|||
if redirect
|
||||
a(href=redirect) Return to previous page
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
|
|
@ -1,4 +1,4 @@
|
|||
- var links = { "/": "Home" }
|
||||
- var links = { "/": "Home" };
|
||||
|
||||
mixin navlink(page, title, active)
|
||||
if active
|
||||
|
|
@ -19,9 +19,9 @@ mixin navheader()
|
|||
mixin navdefaultlinks(page)
|
||||
each t, p in links
|
||||
if p == page
|
||||
mixin navlink(p, t, true)
|
||||
+navlink(p, t, true)
|
||||
else
|
||||
mixin navlink(p, t, false)
|
||||
+navlink(p, t, false)
|
||||
li.dropdown
|
||||
a.dropdown-toggle(href="#", data-toggle="dropdown") Account
|
||||
b.caret
|
||||
|
|
@ -29,24 +29,24 @@ mixin navdefaultlinks(page)
|
|||
if loggedIn
|
||||
li: a(href="javascript:$('#logoutform').submit();") Log out
|
||||
li.divider
|
||||
li: a(href="#{loginDomain}/account/channels") Channels
|
||||
li: a(href="#{loginDomain}/account/profile") Profile
|
||||
li: a(href="#{loginDomain}/account/edit") Change Password/Email
|
||||
li: a(href=loginDomain+"/account/channels") Channels
|
||||
li: a(href=loginDomain+"/account/profile") Profile
|
||||
li: a(href=loginDomain+"/account/edit") Change Password/Email
|
||||
else
|
||||
li: a(href="#{loginDomain}/login?dest=#{encodeURIComponent(baseUrl + page)}") Login
|
||||
li: a(href="#{loginDomain}/register") Register
|
||||
li: a(href=loginDomain+"/login?dest=" + encodeURIComponent(baseUrl + page)) Login
|
||||
li: a(href=loginDomain+"/register") Register
|
||||
|
||||
mixin navloginlogout(redirect)
|
||||
if loggedIn
|
||||
mixin navlogoutform(redirect)
|
||||
+navlogoutform(redirect)
|
||||
else
|
||||
mixin navloginform(redirect)
|
||||
+navloginform(redirect)
|
||||
|
||||
mixin navloginform(redirect)
|
||||
if loginDomain == null
|
||||
- loginDomain = ""
|
||||
.visible-lg
|
||||
form#loginform.navbar-form.navbar-right(action="#{loginDomain}/login", method="post")
|
||||
form#loginform.navbar-form.navbar-right(action=loginDomain+"/login", method="post")
|
||||
input(type="hidden", name="_csrf", value=csrfToken)
|
||||
input(type="hidden", name="dest", value=baseUrl + redirect)
|
||||
.form-group
|
||||
|
|
@ -61,7 +61,7 @@ mixin navloginform(redirect)
|
|||
button#login.btn.btn-default(type="submit") Login
|
||||
.visible-md
|
||||
p#loginform.navbar-text.pull-right
|
||||
a#login.navbar-link(href="#{loginDomain}/login?dest=#{encodeURIComponent(baseUrl + redirect)}") Log in
|
||||
a#login.navbar-link(href=loginDomain+"/login?dest="+encodeURIComponent(baseUrl+redirect)) Log in
|
||||
span ·
|
||||
a#register.navbar-link(href="/register") Register
|
||||
|
||||
|
|
@ -2,16 +2,16 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/policies/privacy")
|
||||
mixin navloginlogout("/policies/privacy")
|
||||
+navdefaultlinks("/policies/privacy")
|
||||
+navloginlogout("/policies/privacy")
|
||||
section#mainpage
|
||||
.container
|
||||
.col-md-12
|
||||
|
|
@ -50,4 +50,4 @@ html(lang="en")
|
|||
p
|
||||
| When you register a channel on #{siteTitle}, you may optionally provide certain information
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
|
|
@ -2,17 +2,17 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/register")
|
||||
+navdefaultlinks("/register")
|
||||
if loggedIn
|
||||
mixin navlogoutform("/register")
|
||||
+navlogoutform("/register")
|
||||
section#mainpage.container
|
||||
if loggedIn
|
||||
.col-lg-6.col-lg-offset-3.col-md-6.col-md-offset-3
|
||||
|
|
@ -50,7 +50,7 @@ html(lang="en")
|
|||
strong Registration Successful
|
||||
p Thanks for registering, #{registerName}! Now you can <a href="/login">Login</a> to use your account.
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
script(src="/js/jquery.js")
|
||||
script(type="text/javascript").
|
||||
function verify() {
|
||||
|
|
@ -2,16 +2,16 @@ doctype html
|
|||
html(lang="en")
|
||||
head
|
||||
include head
|
||||
mixin head()
|
||||
+head()
|
||||
body
|
||||
#wrap
|
||||
nav.navbar.navbar-inverse.navbar-fixed-top(role="navigation")
|
||||
include nav
|
||||
mixin navheader()
|
||||
+navheader()
|
||||
#nav-collapsible.collapse.navbar-collapse
|
||||
ul.nav.navbar-nav
|
||||
mixin navdefaultlinks("/useragreement")
|
||||
mixin navloginlogout("/useragreement")
|
||||
+navdefaultlinks("/useragreement")
|
||||
+navloginlogout("/useragreement")
|
||||
section#mainpage
|
||||
.container
|
||||
.col-md-12
|
||||
|
|
@ -38,4 +38,4 @@ html(lang="en")
|
|||
li Attempting to exploit the site in order to gain unauthorized access or interrupt service is not allowed. If you believe you have found an exploit, please responsibly disclose it to an administrator.
|
||||
li Use good judgement when representing #{siteTitle} on other websites. Do not spam links to your channel.
|
||||
include footer
|
||||
mixin footer()
|
||||
+footer()
|
||||
|
|
@ -47,8 +47,8 @@ mixin us-general
|
|||
.col-sm-4
|
||||
.col-sm-8
|
||||
p.text-danger Changing layouts may require refreshing to take effect.
|
||||
mixin rcheckbox("us-no-channelcss", "Ignore Channel CSS")
|
||||
mixin rcheckbox("us-no-channeljs", "Ignore Channel Javascript")
|
||||
+rcheckbox("us-no-channelcss", "Ignore Channel CSS")
|
||||
+rcheckbox("us-no-channeljs", "Ignore Channel Javascript")
|
||||
.clear
|
||||
|
||||
mixin us-scripts
|
||||
|
|
@ -66,15 +66,15 @@ mixin us-playback
|
|||
#us-playback.tab-pane
|
||||
h4 Playback Preferences
|
||||
form.form-horizontal(action="javascript:void(0)")
|
||||
mixin rcheckbox("us-synch", "Synchronize video playback")
|
||||
mixin textbox("us-synch-accuracy", "Synch threshold (seconds)", "2")
|
||||
mixin rcheckbox("us-wmode-transparent", "Set wmode=transparent")
|
||||
+rcheckbox("us-synch", "Synchronize video playback")
|
||||
+textbox("us-synch-accuracy", "Synch threshold (seconds)", "2")
|
||||
+rcheckbox("us-wmode-transparent", "Set wmode=transparent")
|
||||
.col-sm-4
|
||||
.col-sm-8
|
||||
p.text-info Setting <code>wmode=transparent</code> allows objects to be displayed above the video player, but may cause performance issues on some systems.
|
||||
mixin rcheckbox("us-hidevideo", "Remove the video player")
|
||||
mixin rcheckbox("us-playlistbuttons", "Hide playlist buttons by default")
|
||||
mixin rcheckbox("us-oldbtns", "Old style playlist buttons")
|
||||
+rcheckbox("us-hidevideo", "Remove the video player")
|
||||
+rcheckbox("us-playlistbuttons", "Hide playlist buttons by default")
|
||||
+rcheckbox("us-oldbtns", "Old style playlist buttons")
|
||||
.form-group
|
||||
label.control-label.col-sm-4(for="#us-default-quality") Quality Preference
|
||||
.col-sm-8
|
||||
|
|
@ -91,9 +91,9 @@ mixin us-chat
|
|||
#us-chat.tab-pane
|
||||
h4 Chat Preferences
|
||||
form.form-horizontal(action="javascript:void(0)")
|
||||
mixin rcheckbox("us-chat-timestamp", "Show timestamps in chat")
|
||||
mixin rcheckbox("us-sort-rank", "Sort userlist by rank")
|
||||
mixin rcheckbox("us-sort-afk", "Sort AFKers to bottom")
|
||||
+rcheckbox("us-chat-timestamp", "Show timestamps in chat")
|
||||
+rcheckbox("us-sort-rank", "Sort userlist by rank")
|
||||
+rcheckbox("us-sort-afk", "Sort AFKers to bottom")
|
||||
.col-sm-4
|
||||
.col-sm-8
|
||||
p.text-info The following 2 options apply to how and when you will be notified if a new chat message is received while CyTube is not the active window.
|
||||
|
|
@ -111,12 +111,12 @@ mixin us-chat
|
|||
option(value="never") Never
|
||||
option(value="onlyping") Only when I am mentioned or PMed
|
||||
option(value="always") Always
|
||||
mixin rcheckbox("us-sendbtn", "Add a send button to chat")
|
||||
mixin rcheckbox("us-no-emotes", "Disable chat emotes")
|
||||
+rcheckbox("us-sendbtn", "Add a send button to chat")
|
||||
+rcheckbox("us-no-emotes", "Disable chat emotes")
|
||||
|
||||
mixin us-mod
|
||||
#us-mod.tab-pane
|
||||
h4 Moderator Preferences
|
||||
form.form-horizontal(action="javascript:void(0)")
|
||||
mixin rcheckbox("us-modflair", "Show name color")
|
||||
mixin rcheckbox("us-shadowchat", "Show shadowmuted messages")
|
||||
+rcheckbox("us-modflair", "Show name color")
|
||||
+rcheckbox("us-shadowchat", "Show shadowmuted messages")
|
||||
Loading…
Add table
Add a link
Reference in a new issue