mirror of
https://github.com/monkeytypegame/monkeytype.git
synced 2025-02-05 13:27:49 +08:00
moved functions
This commit is contained in:
parent
9f8ac549da
commit
7c2bab730e
1 changed files with 0 additions and 109 deletions
|
@ -163,115 +163,6 @@ async function announceDailyLbResult(lbdata) {
|
|||
}
|
||||
|
||||
|
||||
async function checkIfPB(obj, userdata) {
|
||||
let pbs = null;
|
||||
if (obj.mode == "quote") {
|
||||
return false;
|
||||
}
|
||||
if (obj.funbox !== "none") {
|
||||
return false;
|
||||
}
|
||||
try {
|
||||
pbs = userdata.personalBests;
|
||||
if (pbs === undefined) {
|
||||
throw new Error("pb is undefined");
|
||||
}
|
||||
} catch (e) {
|
||||
User.findOne({ uid: userdata.uid }, (err, user) => {
|
||||
user.personalBests = {
|
||||
[obj.mode]: {
|
||||
[obj.mode2]: [
|
||||
{
|
||||
language: obj.language,
|
||||
difficulty: obj.difficulty,
|
||||
punctuation: obj.punctuation,
|
||||
wpm: obj.wpm,
|
||||
acc: obj.acc,
|
||||
raw: obj.rawWpm,
|
||||
timestamp: Date.now(),
|
||||
consistency: obj.consistency,
|
||||
},
|
||||
],
|
||||
},
|
||||
};
|
||||
}).then(() => {
|
||||
return true;
|
||||
});
|
||||
}
|
||||
// //check mode, mode2, punctuation, language and difficulty
|
||||
|
||||
let toUpdate = false;
|
||||
let found = false;
|
||||
try {
|
||||
if (pbs[obj.mode][obj.mode2] === undefined) {
|
||||
pbs[obj.mode][obj.mode2] = [];
|
||||
}
|
||||
pbs[obj.mode][obj.mode2].forEach((pb) => {
|
||||
if (
|
||||
pb.punctuation === obj.punctuation &&
|
||||
pb.difficulty === obj.difficulty &&
|
||||
pb.language === obj.language
|
||||
) {
|
||||
//entry like this already exists, compare wpm
|
||||
found = true;
|
||||
if (pb.wpm < obj.wpm) {
|
||||
//new pb
|
||||
pb.wpm = obj.wpm;
|
||||
pb.acc = obj.acc;
|
||||
pb.raw = obj.rawWpm;
|
||||
pb.timestamp = Date.now();
|
||||
pb.consistency = obj.consistency;
|
||||
toUpdate = true;
|
||||
} else {
|
||||
//no pb
|
||||
return false;
|
||||
}
|
||||
}
|
||||
});
|
||||
//checked all pbs, nothing found - meaning this is a new pb
|
||||
if (!found) {
|
||||
pbs[obj.mode][obj.mode2] = [
|
||||
{
|
||||
language: obj.language,
|
||||
difficulty: obj.difficulty,
|
||||
punctuation: obj.punctuation,
|
||||
wpm: obj.wpm,
|
||||
acc: obj.acc,
|
||||
raw: obj.rawWpm,
|
||||
timestamp: Date.now(),
|
||||
consistency: obj.consistency,
|
||||
},
|
||||
];
|
||||
toUpdate = true;
|
||||
}
|
||||
} catch (e) {
|
||||
// console.log(e);
|
||||
pbs[obj.mode] = {};
|
||||
pbs[obj.mode][obj.mode2] = [
|
||||
{
|
||||
language: obj.language,
|
||||
difficulty: obj.difficulty,
|
||||
punctuation: obj.punctuation,
|
||||
wpm: obj.wpm,
|
||||
acc: obj.acc,
|
||||
raw: obj.rawWpm,
|
||||
timestamp: Date.now(),
|
||||
consistency: obj.consistency,
|
||||
},
|
||||
];
|
||||
toUpdate = true;
|
||||
}
|
||||
|
||||
if (toUpdate) {
|
||||
User.findOne({ uid: userdata.uid }, (err, user) => {
|
||||
user.personalBests = pbs;
|
||||
user.save();
|
||||
});
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
async function checkIfTagPB(obj, userdata) {
|
||||
//function returns a list of tag ids where a pb was set //i think
|
||||
|
|
Loading…
Reference in a new issue