Move last used date check guard to SQL side, implement max cap

- Server side date comparison and cap check further improve js sort performance
- The alias check has also been moved out of calculateUsageBias to support the new cap system
This commit is contained in:
DominikDoom
2024-03-16 16:44:43 +01:00
parent a454383c43
commit ef59cff651
4 changed files with 57 additions and 28 deletions

View File

@@ -196,16 +196,9 @@ function flatten(obj, roots = [], sep = ".") {
}
// Calculate biased tag score based on post count and frequent usage
function calculateUsageBias(result, count, uses, lastUseDate) {
// Calculate days since last use
const diffTime = Math.abs(Date.now() - (lastUseDate || Date.now()));
const diffDays = Math.ceil(diffTime / (1000 * 60 * 60 * 24));
function calculateUsageBias(result, count, uses) {
// Check setting conditions
if (
uses < TAC_CFG.frequencyMinCount ||
diffDays > TAC_CFG.frequencyMaxAge ||
(!TAC_CFG.frequencyIncludeAlias && result.aliases && !result.text.includes(tagword))
) {
if (uses < TAC_CFG.frequencyMinCount) {
uses = 0;
} else if (uses != 0) {
result.usageBias = true;