Fix erroneous stringified boolean value interpretation

This commit is contained in:
John Furrow
2017-11-28 22:13:15 -08:00
parent ba69c93bd6
commit a399da7e40
2 changed files with 22 additions and 3 deletions
+13
View File
@@ -0,0 +1,13 @@
'use strict';
module.exports = key => {
return (req, res, next) => {
const value = req.body[key];
if (value && typeof value === 'string') {
req.body[key] = value === 'true';
}
next();
};
};
+9 -3
View File
@@ -3,6 +3,7 @@ const express = require('express');
const multer = require('multer');
const ajaxUtil = require('../util/ajaxUtil');
const booleanCoerce = require('../middleware/booleanCoerce');
const client = require('../models/client');
const clientRequestService = require('../services/clientRequestService');
const router = express.Router();
@@ -17,9 +18,14 @@ router.post('/add', function(req, res, next) {
client.addUrls(req.body, ajaxUtil.getResponseFn(res));
});
router.post('/add-files', upload.array('torrents'), function(req, res, next) {
client.addFiles(req, ajaxUtil.getResponseFn(res));
});
router.post(
'/add-files',
upload.array('torrents'),
booleanCoerce('isBasePath'),
function(req, res, next) {
client.addFiles(req, ajaxUtil.getResponseFn(res));
}
);
router.get('/settings', function(req, res, next) {
client.getSettings(req.query, ajaxUtil.getResponseFn(res));