mirror of https://gitgud.io/fatchan/jschan.git
parent
f540d07e67
commit
529e6bfacc
15 changed files with 164 additions and 61 deletions
@ -0,0 +1,31 @@ |
||||
'use strict'; |
||||
|
||||
const Posts = require(__dirname+'/../../../db/posts.js'); |
||||
|
||||
module.exports = async (req, res, next) => { |
||||
|
||||
const page = req.params.page === 'index' ? 1 : Number(req.params.page); |
||||
let maxPage; |
||||
let threads; |
||||
try { |
||||
maxPage = Math.min(Math.ceil((await Posts.getPages(req.params.board)) / 10), Math.ceil(res.locals.board.settings.threadLimit/10)) || 1; |
||||
if (page > maxPage) { |
||||
return next(); |
||||
} |
||||
threads = await Posts.getRecent(req.params.board, page); |
||||
} catch (err) { |
||||
return next(err); |
||||
} |
||||
|
||||
res |
||||
.set('Cache-Control', 'private, max-age=5') |
||||
.render('board', { |
||||
modview: true, |
||||
page, |
||||
maxPage, |
||||
threads, |
||||
board: res.locals.board, |
||||
csrf: req.csrfToken(), |
||||
}); |
||||
|
||||
} |
@ -0,0 +1,26 @@ |
||||
'use strict'; |
||||
|
||||
const Posts = require(__dirname+'/../../../db/posts.js'); |
||||
|
||||
module.exports = async (req, res, next) => { |
||||
|
||||
let thread; |
||||
try { |
||||
thread = await Posts.getThread(res.locals.board._id, res.locals.thread.postId); |
||||
if (!thread) { |
||||
return next(); //deleted between exists
|
||||
} |
||||
} catch (err) { |
||||
return next(err); |
||||
} |
||||
|
||||
res |
||||
.set('Cache-Control', 'private, max-age=5') |
||||
.render('thread', { |
||||
modview: true, |
||||
board: res.locals.board, |
||||
thread, |
||||
csrf: req.csrfToken(), |
||||
}); |
||||
|
||||
} |
@ -1,10 +1,16 @@ |
||||
mixin managenav(selected) |
||||
mixin managenav(selected, upLevel) |
||||
nav.pages |
||||
a(href='reports.html' class=(selected === 'reports' ? 'bold' : '')) [Reports] |
||||
if selected === 'index' |
||||
include ../includes/boardpages.pug |
||||
| |
||||
else |
||||
a(href=`${upLevel ? '../' : ''}index.html` class=(selected === 'index' ? 'bold' : '')) [Mod Index] |
||||
| |
||||
a(href=`${upLevel ? '../' : ''}reports.html` class=(selected === 'reports' ? 'bold' : '')) [Reports] |
||||
| |
||||
a(href='bans.html' class=(selected === 'bans' ? 'bold' : '')) [Bans] |
||||
a(href=`${upLevel ? '../' : ''}bans.html` class=(selected === 'bans' ? 'bold' : '')) [Bans] |
||||
| |
||||
if permLevel < 3 |
||||
a(href='settings.html' class=(selected === 'settings' ? 'bold' : '')) [Settings] |
||||
a(href=`${upLevel ? '../' : ''}settings.html` class=(selected === 'settings' ? 'bold' : '')) [Settings] |
||||
| |
||||
a(href='banners.html' class=(selected === 'banners' ? 'bold' : '')) [Banners] |
||||
a(href=`${upLevel ? '../' : ''}banners.html` class=(selected === 'banners' ? 'bold' : '')) [Banners] |
||||
|
Loading…
Reference in new issue