From 314461c9f0b2ab052cebea9b7ba5baa6d26c23b2 Mon Sep 17 00:00:00 2001 From: Ajay Date: Mon, 28 Apr 2025 19:03:24 -0400 Subject: [PATCH] Fix old user check --- src/utils/permissions.ts | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/src/utils/permissions.ts b/src/utils/permissions.ts index 90c296b..d591b0b 100644 --- a/src/utils/permissions.ts +++ b/src/utils/permissions.ts @@ -70,10 +70,13 @@ async function oldDeArrowSubmitterOrAllowed(userID: HashedUserID): Promise= 1; if (!isOldSubmitter) { if (!submitterThreshold) { - const voteResult = await privateDB.prepare("get", `SELECT "UUID" from "titleVotes" where "userID" = ?`, [userID], { useReplica: true }); - if (voteResult?.UUID) { - // Count at least one vote as an old submitter as well - return { canSubmit: true, newUser: false }; + const bannedResult = await db.prepare("get", `SELECT count(*) as "submissionCount" FROM "titles" JOIN "titleVotes" ON "titles"."UUID" = "titleVotes"."UUID" WHERE "userID" = ? AND "shadowHidden" != 0`, [userID], { useReplica: true }); + if (bannedResult?.submissionCount === 0) { + const voteResult = await privateDB.prepare("get", `SELECT "UUID" from "titleVotes" where "userID" = ?`, [userID], { useReplica: true }); + if (voteResult?.UUID) { + // Count at least one vote as an old submitter as well + return { canSubmit: true, newUser: false }; + } } }