diff --git a/views/includes/boardheader.pug b/views/includes/boardheader.pug index b95ca162..265ef00e 100644 --- a/views/includes/boardheader.pug +++ b/views/includes/boardheader.pug @@ -1,3 +1,4 @@ -a.no-decoration(href=`/${board._id}`) - h1.board-title /#{board._id}/ - #{board.name} -h4.board-description #{board.description} +section.board-header + a.no-decoration(href=`/${board._id}`) + h1.board-title /#{board._id}/ - #{board.name} + h4.board-description #{board.description} diff --git a/views/includes/navbar.pug b/views/includes/navbar.pug index 9d77b7a0..7589d92d 100644 --- a/views/includes/navbar.pug +++ b/views/includes/navbar.pug @@ -1,5 +1,7 @@ nav.navbar a.nav-item(href='/') Home - a.nav-item(href='/login') Login if board - a.nav-item(href=`/${board._id}/manage`) Manage Board + a.nav-item.right(href=`/${board._id}/manage`) Manage Board + a.nav-item.right(href='/logout') Logout + a.nav-item.right(href='/register') Register + a.nav-item.right(href='/login') Login diff --git a/views/mixins/ban.pug b/views/mixins/ban.pug new file mode 100644 index 00000000..b506ff61 --- /dev/null +++ b/views/mixins/ban.pug @@ -0,0 +1,16 @@ +include ./post.pug + +mixin ban(ban) + if ban.board + div Board: #[a(href=`/${ban.board}`) /#{ban.board}/] + else + div Global ban. + div Reason: #{ban.reason} + div Issuer: #{ban.issuer} + div Date: #{ban.date} + div Expiry: #{ban.expireAt} + if ban.post + span Post: + section.thread + +post(ban.post, false) + diff --git a/views/mixins/post.pug b/views/mixins/post.pug index e1cc90e9..16a6d6ef 100644 --- a/views/mixins/post.pug +++ b/views/mixins/post.pug @@ -1,4 +1,4 @@ -mixin post(board, post, truncate, showreports) +mixin post(post, truncate, showreports) article(id=post.postId class='post-container '+(post.thread ? '' : 'op')) header.post-info input.post-check(type='checkbox', name='checked[]' value=post.postId) @@ -11,7 +11,7 @@ mixin post(board, post, truncate, showreports) span.post-name #{post.name} span #{post.date.toLocaleString()} span.user-id(style=`background: #${post.userId}`) #{post.userId} - span: a(href=`/${board._id}/thread/${post.thread ? post.thread : post.postId}#${post.postId}`) ##{post.postId} + span: a(href=`/${post.board}/thread/${post.thread ? post.thread : post.postId}#${post.postId}`) ##{post.postId} if post.files.length > 0 .post-files each file in post.files @@ -39,7 +39,7 @@ mixin post(board, post, truncate, showreports) } if truncated blockquote.post-message !{truncatedMessage} - p Message too long. #[a(href=`/${board._id}/thread/${post.thread == null ? post.postId : post.thread}#${post.postId}`) Click here] to view the full text. + p Message too long. #[a(href=`/${post.board}/thread/${post.thread == null ? post.postId : post.thread}#${post.postId}`) Click here] to view the full text. else blockquote.post-message !{post.message} else diff --git a/views/pages/ban.pug b/views/pages/ban.pug index 515efd80..1a733185 100644 --- a/views/pages/ban.pug +++ b/views/pages/ban.pug @@ -1,5 +1,5 @@ extends ../layout.pug -include ../mixins/post.pug +include ../mixins/ban.pug block head title Banned! @@ -10,16 +10,5 @@ block content Bans currently in place against your IP: hr(size=1) for ban in bans - if ban.board - div Board: #[a(href=`/${ban.board}`) /#{ban.board}/] - else - div Global ban. - div Reason: #{ban.reason} - div Issuer: #{ban.issuer} - div Date: #{ban.date} - div Expiry: #{ban.expireAt} - if ban.post - span Post: - section.thread - +post(ban.post.board, ban.post, false) + +ban(ban) hr(size=1) diff --git a/views/pages/board.pug b/views/pages/board.pug index 75137981..b912c862 100644 --- a/views/pages/board.pug +++ b/views/pages/board.pug @@ -17,9 +17,9 @@ block content hr(size=1) for thread in threads section.thread - +post(board, thread, true) + +post(thread, true) for post in thread.replies - +post(board, post, true) + +post(post, true) hr(size=1) if pages > 0 span.pages Page diff --git a/views/pages/login.pug b/views/pages/login.pug index 85d15f09..fcd7d50f 100644 --- a/views/pages/login.pug +++ b/views/pages/login.pug @@ -7,6 +7,7 @@ block content section.form-wrapper form.form-post(action='/forms/login' method='POST') input(type='hidden' name='_csrf' value=csrf) + input(type='hidden' name='redirect' value=redirect) input#username(type='text', name='username', placeholder='username' maxlength='50') input#password(type='password', name='password', placeholder='password' maxlength='100') input(type='submit', value='submit') diff --git a/views/pages/manage.pug b/views/pages/manage.pug index f4cacf23..447a1878 100644 --- a/views/pages/manage.pug +++ b/views/pages/manage.pug @@ -1,5 +1,6 @@ extends ../layout.pug include ../mixins/post.pug +include ../mixins/ban.pug block head title Manage @@ -7,38 +8,48 @@ block head block content include ../includes/boardheader.pug hr(size=1) - h4.board-description Management Panel - form(action='/forms/board/'+board._id+'/posts' method='POST' enctype='application/x-www-form-urlencoded') + h4 Reports: + form(action=`/forms/board/${board._id}/posts` method='POST' enctype='application/x-www-form-urlencoded') input(type='hidden' name='_csrf' value=csrf) if posts.length === 0 p No reports. hr(size=1) for post in posts section.thread - +post(board, post, false, true) + +post(post, false, true) hr(size=1) section.action-wrapper - span - label - input.post-check(type='checkbox', name='delete' value=1) - | Delete - span - label - input.post-check(type='checkbox', name='spoiler' value=1) - | Spoiler - span - label - input.post-check(type='checkbox', name='dismiss' value=1) - | Dismiss - span - label - input.post-check(type='checkbox', name='ban' value=1) - | Ban - label - input.post-check(type='checkbox', name='global_ban' value=1) - | Global Ban - label - input#report(type='text', name='reason', placeholder='ban reason' autocomplete='off') + label + input.post-check(type='checkbox', name='delete' value=1) + | Delete Post + label + input.post-check(type='checkbox', name='spoiler' value=1) + | Spoiler Images + label + input.post-check(type='checkbox', name='dismiss' value=1) + | Dismiss Reports + label + input.post-check(type='checkbox', name='ban' value=1) + | Ban Poster + label + input.post-check(type='checkbox', name='global_ban' value=1) + | Global Ban Poster + label + input.post-check(type='checkbox', name='preserve_post' value=1) + | Show Post In Ban + label + input#report(type='text', name='reason', placeholder='ban reason' autocomplete='off') input(type='submit', value='submit') - - + hr(size=1) + h4 Bans: + form(action=`/forms/board/${board._id}/unban` method='POST' enctype='application/x-www-form-urlencoded') + input(type='hidden' name='_csrf' value=csrf) + if bans.length === 0 + p No bans. + hr(size=1) + for ban in bans + section.thread + +ban(ban) + hr(size=1) + //section.action-wrapper + input(type='submit', value='unban') diff --git a/views/pages/thread.pug b/views/pages/thread.pug index cb23c2ba..a047896e 100644 --- a/views/pages/thread.pug +++ b/views/pages/thread.pug @@ -18,8 +18,8 @@ block content form(action='/forms/board/'+board._id+'/posts' method='POST' enctype='application/x-www-form-urlencoded') input(type='hidden' name='_csrf' value=csrf) section.thread - +post(board, thread) + +post(thread) for post in thread.replies - +post(board, post) + +post(post) hr(size=1) include ../includes/deletefooter.pug