From a971072cb8be995133d4a07c87d31a8391d8e38b Mon Sep 17 00:00:00 2001 From: Joe Dowd Date: Sat, 22 Aug 2020 04:23:28 +0100 Subject: [PATCH] reject submissions that have meen marked as invalid by a vip --- src/routes/postSkipSegments.js | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/routes/postSkipSegments.js b/src/routes/postSkipSegments.js index 1dbaf21..40a3e25 100644 --- a/src/routes/postSkipSegments.js +++ b/src/routes/postSkipSegments.js @@ -157,6 +157,8 @@ module.exports = async function postSkipSegments(req, res) { //hash the ip 5000 times so no one can get it from the database let hashedIP = getHash(getIP(req) + config.globalSalt); + let noSegmentList = db.prepare('all', 'SELECT category from noSegments where videoID = ?', [videoID]); + // Check if all submissions are correct for (let i = 0; i < segments.length; i++) { if (segments[i] === undefined || segments[i].segment === undefined || segments[i].category === undefined) { @@ -165,6 +167,14 @@ module.exports = async function postSkipSegments(req, res) { return; } + // Reject segemnt if it's in the no segments list + if (noSegmentList.indexOf(segments[i].category) !== -1) { + // TODO: Do something about the fradulent submission + res.sendStatus(403); + return; + } + + let startTime = parseFloat(segments[i].segment[0]); let endTime = parseFloat(segments[i].segment[1]);