ref #356 deletebanners, and update the others, just call the check on array directly

merge-requests/350/merge
Thomas Lynch 3 years ago
parent e8c3cfab8f
commit db01644f14
  1. 6
      controllers/forms/addcustompage.js
  2. 8
      controllers/forms/deletebanners.js
  3. 6
      controllers/forms/globalsettings.js
  4. 9
      controllers/forms/login.js

@ -19,7 +19,7 @@ module.exports = {
const { globalLimits } = config.get;
const schema = [
const errors = await checkSchema([
{ result: existsBody(req.body.message), expected: true, error: 'Missing message' },
{ result: existsBody(req.body.title), expected: true, error: 'Missing title' },
{ result: existsBody(req.body.page), expected: true, error: 'Missing .html name' },
@ -38,9 +38,7 @@ module.exports = {
{ result: async () => {
return (await CustomPages.findOne(req.params.board, req.body.page)) == null;
}, expected: true, error: '.html name must be unique'},
];
const errors = await checkSchema(schema);
]);
if (errors.length > 0) {
return dynamicResponse(req, res, 400, 'message', {

@ -14,11 +14,9 @@ module.exports = {
controller: async (req, res, next) => {
const errors = [];
if (!req.body.checkedbanners || req.body.checkedbanners.length === 0) {
errors.push('Must select at least one banner to delete');
}
const errors = await checkSchema([
{ result: lengthBody(req.body.checkedbanners, 1), expected: false, error: 'Must select at least one banner to delete' },
]);
if (errors.length > 0) {
return dynamicResponse(req, res, 400, 'message', {

@ -39,7 +39,7 @@ module.exports = {
const { globalLimits } = config.get;
const schema = [
const errors = await checkSchema([
{ result: () => {
if (req.body.thumb_extension) {
return /\.[a-z0-9]+/i.test(req.body.thumb_extension);
@ -179,9 +179,7 @@ module.exports = {
{ result: lengthBody(req.body.webring_following, 0, 10000), expected: false, error: 'Webring following list must not exceed 10000 characters' },
{ result: lengthBody(req.body.webring_blacklist, 0, 10000), expected: false, error: 'Webring blacklist must not exceed 10000 characters' },
{ result: lengthBody(req.body.webring_logos, 0, 10000), expected: false, error: 'Webring logos list must not exceed 10000 characters' },
];
const errors = await checkSchema(schema);
]);
if (errors.length > 0) {
return dynamicResponse(req, res, 400, 'message', {

@ -13,13 +13,14 @@ module.exports = {
}),
controller: async (req, res, next) => {
const schema = [
const errors = await checkSchema([
{ result: existsBody(req.body.username), expected: true, error: 'Missing username' },
{ result: existsBody(req.body.password), expected: true, error: 'Missing password' },
{ result: lengthBody(req.body.username, 1, 50), expected: false, error: 'Username must be 50 characters or less' },
{ result: lengthBody(req.body.password, 1, 100), expected: false, error: 'Password must be 100 characters or less' },
];
const errors = await checkSchema(schema);
]);
if (errors.length > 0) {
return dynamicResponse(req, res, 400, 'message', {
'title': 'Bad request',
@ -27,11 +28,13 @@ module.exports = {
'redirect': '/login.html'
})
}
try {
await loginAccount(req, res, next);
} catch (err) {
return next(err);
}
},
}

Loading…
Cancel
Save