|
@@ -1,4 +1,5 @@
|
|
const asyncWrapper = require('../../middleware/asyncWrapper');
|
|
const asyncWrapper = require('../../middleware/asyncWrapper');
|
|
|
|
+const ErrorResponse = require('../../utils/ErrorResponse');
|
|
const File = require('../../utils/File');
|
|
const File = require('../../utils/File');
|
|
|
|
|
|
// @desc Add custom search query
|
|
// @desc Add custom search query
|
|
@@ -8,6 +9,12 @@ const addQuery = asyncWrapper(async (req, res, next) => {
|
|
const file = new File('data/customQueries.json');
|
|
const file = new File('data/customQueries.json');
|
|
let content = JSON.parse(file.read());
|
|
let content = JSON.parse(file.read());
|
|
|
|
|
|
|
|
+ const prefixes = content.queries.map((q) => q.prefix);
|
|
|
|
+
|
|
|
|
+ if (prefixes.includes(req.body.prefix)) {
|
|
|
|
+ return next(new ErrorResponse('Prefix must be unique', 400));
|
|
|
|
+ }
|
|
|
|
+
|
|
// Add new query
|
|
// Add new query
|
|
content.queries.push(req.body);
|
|
content.queries.push(req.body);
|
|
file.write(content, true);
|
|
file.write(content, true);
|