From 505f2c7385a8349f1433ca5b57e323fd69aafccb Mon Sep 17 00:00:00 2001 From: Ajay Ramachandran Date: Tue, 3 Dec 2019 17:02:02 -0500 Subject: [PATCH 1/2] Fixed getSavedTimeForUser to ignore low voted or shadow hidden submissions. --- index.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/index.js b/index.js index 259b425..5753b6a 100644 --- a/index.js +++ b/index.js @@ -577,7 +577,7 @@ app.get('/api/getSavedTimeForUser', function (req, res) { userID = getHash(userID); //up the view count by one - db.prepare("SELECT SUM((endTime - startTime) / 60 * views) as minutesSaved FROM sponsorTimes WHERE userID = ?").get(userID, function(err, row) { + db.prepare("SELECT SUM((endTime - startTime) / 60 * views) as minutesSaved FROM sponsorTimes WHERE userID = ? AND votes > -1 AND shadowHidden != 1 ").get(userID, function(err, row) { if (err) console.log(err); if (row.minutesSaved != null) { From 691d87d4ff27b569defe8ee7c4625beaa0a43f44 Mon Sep 17 00:00:00 2001 From: Ajay Ramachandran Date: Tue, 3 Dec 2019 17:32:03 -0500 Subject: [PATCH 2/2] Merged users with the same username for leaderboard purposes. --- index.js | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/index.js b/index.js index 5753b6a..da4d937 100644 --- a/index.js +++ b/index.js @@ -618,13 +618,12 @@ app.get('/api/getTopUsers', function (req, res) { let totalSubmissions = []; let minutesSaved = []; - db.prepare("SELECT sponsorTimes.userID as userID, COUNT(*) as totalSubmissions, SUM(views) as viewCount, SUM((sponsorTimes.endTime - sponsorTimes.startTime) / 60 * sponsorTimes.views) as minutesSaved, userNames.userName as userName FROM sponsorTimes LEFT JOIN userNames ON sponsorTimes.userID=userNames.userID WHERE sponsorTimes.votes > -1 AND sponsorTimes.shadowHidden != 1 GROUP BY sponsorTimes.userID ORDER BY " + sortBy + " DESC LIMIT 100").all(function(err, rows) { + db.prepare("SELECT COUNT(*) as totalSubmissions, SUM(views) as viewCount," + + "SUM((sponsorTimes.endTime - sponsorTimes.startTime) / 60 * sponsorTimes.views) as minutesSaved, " + + "IFNULL(userNames.userName, sponsorTimes.userID) as userName FROM sponsorTimes LEFT JOIN userNames ON sponsorTimes.userID=userNames.userID " + + "WHERE sponsorTimes.votes > -1 AND sponsorTimes.shadowHidden != 1 GROUP BY IFNULL(userName, sponsorTimes.userID) ORDER BY " + sortBy + " DESC LIMIT 100").all(function(err, rows) { for (let i = 0; i < rows.length; i++) { - if (rows[i].userName != null) { - userNames[i] = rows[i].userName; - } else { - userNames[i] = rows[i].userID; - } + userNames[i] = rows[i].userName; viewCounts[i] = rows[i].viewCount; totalSubmissions[i] = rows[i].totalSubmissions;