mirror of https://gitgud.io/fatchan/jschan.git
parent
92f8e993d9
commit
82bc97ea3f
8 changed files with 104 additions and 24 deletions
@ -0,0 +1,28 @@ |
||||
'use strict'; |
||||
|
||||
const uuidv4 = require('uuid/v4') |
||||
, path = require('path') |
||||
, util = require('util') |
||||
, fs = require('fs') |
||||
, unlink = util.promisify(fs.unlink) |
||||
, uploadDirectory = require(__dirname+'/../../helpers/uploadDirectory.js') |
||||
, Boards = require(__dirname+'/../../db/boards.js'); |
||||
|
||||
module.exports = async (req, res, next) => { |
||||
|
||||
const redirect = `/${req.params.board}/manage` |
||||
|
||||
await Promise.all(req.body.checkedbanners.map(async filename => { |
||||
unlink(uploadDirectory + filename); |
||||
})); |
||||
|
||||
// i dont think there is a way to get the number of array items removed with $pullAll
|
||||
// so i cant return how many banners were deleted
|
||||
await Boards.removeBanners(req.params.board, req.body.checkedbanners); |
||||
|
||||
return res.render('message', { |
||||
'title': 'Success', |
||||
'message': `Deleted banners.`, |
||||
'redirect': redirect |
||||
}); |
||||
} |
@ -1,14 +1,20 @@ |
||||
section.form-wrapper |
||||
label.toggle-label Upload Banners |
||||
label.toggle-label Add Banners |
||||
input.toggle(type='checkbox') |
||||
form.form-post.togglable(action=`/forms/board/${board._id}/addbanners`, enctype='multipart/form-data', method='POST') |
||||
|
||||
input(type='hidden' name='_csrf' value=csrf) |
||||
|
||||
span |
||||
input#file(type='file', name='file' multiple) |
||||
|
||||
input(type='submit', value='submit') |
||||
|
||||
|
||||
|
||||
section.form-wrapper |
||||
label.toggle-label Delete Banners |
||||
input.toggle(type='checkbox') |
||||
form.form-post.togglable(action=`/forms/board/${board._id}/deletebanners`, enctype='application/x-www-form-urlencoded', method='POST') |
||||
input(type='hidden' name='_csrf' value=csrf) |
||||
each banner in board.banners |
||||
label.banner-check |
||||
input(type='checkbox' name='checkedbanners[]' value=banner) |
||||
object.board-banner(data=`/img/${banner}` width='300' height='100') |
||||
input(type='submit', value='submit') |
||||
|
||||
|
Loading…
Reference in new issue