mirror of
https://github.com/monkeytypegame/monkeytype.git
synced 2025-02-03 04:19:06 +08:00
added keyspacing and duration to the db event
checkign if user needs to verify added the ability to hide lb positions
This commit is contained in:
parent
7b97d14b5e
commit
afaf599469
1 changed files with 20 additions and 7 deletions
|
@ -426,6 +426,9 @@ exports.testCompleted = functions.https.onCall((request, response) => {
|
|||
obj.keySpacing = "removed";
|
||||
obj.keyDuration = "removed";
|
||||
|
||||
obj.keySpacing = keySpacing;
|
||||
obj.keyDuration = keyDuration;
|
||||
|
||||
return db
|
||||
.collection("users")
|
||||
.doc(request.uid)
|
||||
|
@ -434,14 +437,12 @@ exports.testCompleted = functions.https.onCall((request, response) => {
|
|||
let userdata = ret.data();
|
||||
let name = userdata.name === undefined ? false : userdata.name;
|
||||
let banned = userdata.banned === undefined ? false : userdata.banned;
|
||||
let verified =
|
||||
userdata.verified === undefined ? false : userdata.verified;
|
||||
|
||||
let verified = userdata.verified;
|
||||
request.obj.name = name;
|
||||
|
||||
//check keyspacing and duration here
|
||||
if (obj.mode === "time") {
|
||||
if (!verified) {
|
||||
if (verified === false || verified === undefined) {
|
||||
if (keySpacing !== null && keyDuration !== null) {
|
||||
if (
|
||||
keySpacing.sd <= 15 ||
|
||||
|
@ -484,8 +485,8 @@ exports.testCompleted = functions.https.onCall((request, response) => {
|
|||
.then((e) => {
|
||||
let createdDocId = e.id;
|
||||
return Promise.all([
|
||||
checkLeaderboards(request.obj, "global", banned, name),
|
||||
checkLeaderboards(request.obj, "daily", banned, name),
|
||||
checkLeaderboards(request.obj, "global", banned, name, verified),
|
||||
checkLeaderboards(request.obj, "daily", banned, name, verified),
|
||||
checkIfPB(request.uid, request.obj),
|
||||
])
|
||||
.then((values) => {
|
||||
|
@ -527,6 +528,7 @@ exports.testCompleted = functions.https.onCall((request, response) => {
|
|||
lbBanned: banned,
|
||||
name: name,
|
||||
createdId: createdDocId,
|
||||
needsToVerify: values[0].needsToVerify,
|
||||
};
|
||||
|
||||
if (ispb) {
|
||||
|
@ -816,6 +818,7 @@ class Leaderboard {
|
|||
entry.mode == this.mode &&
|
||||
parseInt(entry.mode2) === parseInt(this.mode2)
|
||||
) {
|
||||
let hid = entry.hidden === undefined ? false : entry.hidden;
|
||||
this.board.push({
|
||||
uid: entry.uid,
|
||||
name: entry.name,
|
||||
|
@ -825,6 +828,7 @@ class Leaderboard {
|
|||
mode: entry.mode,
|
||||
mode2: parseInt(entry.mode2),
|
||||
timestamp: entry.timestamp,
|
||||
hidden: hid,
|
||||
});
|
||||
}
|
||||
});
|
||||
|
@ -900,6 +904,7 @@ class Leaderboard {
|
|||
mode: a.mode,
|
||||
mode2: parseInt(a.mode2),
|
||||
timestamp: a.timestamp,
|
||||
hidden: a.hidden,
|
||||
});
|
||||
insertedAt = index;
|
||||
}
|
||||
|
@ -914,6 +919,7 @@ class Leaderboard {
|
|||
mode: a.mode,
|
||||
mode2: parseInt(a.mode2),
|
||||
timestamp: a.timestamp,
|
||||
hidden: a.hidden,
|
||||
});
|
||||
insertedAt = index;
|
||||
}
|
||||
|
@ -929,6 +935,7 @@ class Leaderboard {
|
|||
mode: a.mode,
|
||||
mode2: parseInt(a.mode2),
|
||||
timestamp: a.timestamp,
|
||||
hidden: a.hidden,
|
||||
});
|
||||
insertedAt = index;
|
||||
}
|
||||
|
@ -944,6 +951,7 @@ class Leaderboard {
|
|||
mode: a.mode,
|
||||
mode2: parseInt(a.mode2),
|
||||
timestamp: a.timestamp,
|
||||
hidden: a.hidden,
|
||||
});
|
||||
insertedAt = this.board.length - 1;
|
||||
}
|
||||
|
@ -1063,7 +1071,7 @@ exports.generatePairingCode = functions.https.onCall((request, response) => {
|
|||
}
|
||||
});
|
||||
|
||||
async function checkLeaderboards(resultObj, type, banned, name) {
|
||||
async function checkLeaderboards(resultObj, type, banned, name, verified) {
|
||||
// return {
|
||||
// insertedAt: null,
|
||||
// };
|
||||
|
@ -1078,6 +1086,11 @@ async function checkLeaderboards(resultObj, type, banned, name) {
|
|||
insertedAt: null,
|
||||
banned: true,
|
||||
};
|
||||
if (verified === false)
|
||||
return {
|
||||
insertedAt: null,
|
||||
needsToVerify: true,
|
||||
};
|
||||
if (
|
||||
resultObj.mode === "time" &&
|
||||
["15", "60"].includes(String(resultObj.mode2)) &&
|
||||
|
|
Loading…
Reference in a new issue