From d5a720fa0c895e4f31c2474109e39bc7e92dc374 Mon Sep 17 00:00:00 2001 From: Ajay Ramachandran Date: Sun, 2 Aug 2020 11:58:11 -0400 Subject: [PATCH 1/3] Check that start time is not less than zero --- src/routes/postSkipSegments.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/postSkipSegments.js b/src/routes/postSkipSegments.js index f575e53..acecbc2 100644 --- a/src/routes/postSkipSegments.js +++ b/src/routes/postSkipSegments.js @@ -148,7 +148,7 @@ module.exports = async function postSkipSegments(req, res) { let endTime = parseFloat(segments[i].segment[1]); if (isNaN(startTime) || isNaN(endTime) - || startTime === Infinity || endTime === Infinity || startTime > endTime) { + || startTime === Infinity || endTime === Infinity || startTime < 0 || startTime > endTime) { //invalid request res.sendStatus(400); return; From 25166348562f2281e0cdd77138eb6c7e8c61839a Mon Sep 17 00:00:00 2001 From: Ajay Ramachandran Date: Sun, 2 Aug 2020 12:08:44 -0400 Subject: [PATCH 2/3] Don't allow 0 ms submissions --- src/routes/postSkipSegments.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/routes/postSkipSegments.js b/src/routes/postSkipSegments.js index acecbc2..2aac4ea 100644 --- a/src/routes/postSkipSegments.js +++ b/src/routes/postSkipSegments.js @@ -148,7 +148,7 @@ module.exports = async function postSkipSegments(req, res) { let endTime = parseFloat(segments[i].segment[1]); if (isNaN(startTime) || isNaN(endTime) - || startTime === Infinity || endTime === Infinity || startTime < 0 || startTime > endTime) { + || startTime === Infinity || endTime === Infinity || startTime < 0 || startTime >= endTime) { //invalid request res.sendStatus(400); return; From 9cebb8769f34368f499bb7282c0a402877b0da41 Mon Sep 17 00:00:00 2001 From: Ajay Ramachandran Date: Sun, 23 Aug 2020 11:34:07 -0400 Subject: [PATCH 3/3] Add author name to discord notification --- src/routes/voteOnSponsorTime.js | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/routes/voteOnSponsorTime.js b/src/routes/voteOnSponsorTime.js index 3841390..f2cf152 100644 --- a/src/routes/voteOnSponsorTime.js +++ b/src/routes/voteOnSponsorTime.js @@ -13,6 +13,18 @@ var YouTubeAPI = require('../utils/youtubeAPI.js'); var request = require('request'); const logger = require('../utils/logger.js'); +function getVoteAuthor(submissionCount, isVIP, isOwnSubmission) { + if (submissionCount === 0) { + return "Report by New User"; + } else if (isVIP) { + return "Report by VIP User"; + } else if (isOwnSubmission) { + return "Report by Submitter"; + } + + return ""; +} + function categoryVote(UUID, userID, isVIP, category, hashedIP, res) { // Check if they've already made a vote let previousVoteInfo = privateDB.prepare('get', "select count(*) as votes, category from categoryVotes where UUID = ? and userID = ?", [UUID, userID]); @@ -227,7 +239,7 @@ async function voteOnSponsorTime(req, res) { getFormattedTime(submissionInfoRow.startTime) + " to " + getFormattedTime(submissionInfoRow.endTime), "color": 10813440, "author": { - "name": userSubmissionCountRow.submissionCount === 0 ? "Report by New User" : (isVIP ? "Report by VIP User" : "") + "name": getVoteAuthor(userSubmissionCountRow.submissionCount, isVIP, isOwnSubmission) }, "thumbnail": { "url": data.items[0].snippet.thumbnails.maxres ? data.items[0].snippet.thumbnails.maxres.url : "",