From 364fd6fea0a34340e1389aa93763ffc6a8badd3a Mon Sep 17 00:00:00 2001 From: Timon Ostertun Date: Sat, 26 Sep 2020 18:58:29 +0200 Subject: [PATCH] rank can idjm --- server/scripts/rank.js | 36 ++++++++++++++++++++++++++++++------ 1 file changed, 30 insertions(+), 6 deletions(-) diff --git a/server/scripts/rank.js b/server/scripts/rank.js index decaffc..6e811ba 100644 --- a/server/scripts/rank.js +++ b/server/scripts/rank.js @@ -106,7 +106,7 @@ async function onRankingClicked(id) { $('#menu-rank').scrollTop(0); } -function selectChange(callSiteScript = true) { +async function selectChange(callSiteScript = true) { var type = $('#select-type').val(); var year = parseInt($('#select-year').val()); if (type == "user") { @@ -137,11 +137,35 @@ function selectChange(callSiteScript = true) { jugend = jugstrict = true; break; case 'idjm': - // TODO - from = (year - 1) + '-12-01'; - to = year + '-11-30'; - jugend = true; - jugstrict = false; + var beginn = null; + var regattas = await dbGetData('regattas'); + regattas.sort(function(a,b){ return b.date.localeCompare(a.date); }); + for (var r in regattas) { + var regatta = regattas[r]; + var date = parseDate(regatta.date); + if ((date < parseDate('01.01.' + year)) || (date > parseDate('31.12.' + year))) { + continue; + } + if (regatta.name.indexOf(YOUTH_GERMAN_NAME) >= 0) { + beginn = ((regatta.meldungSchluss != null) ? parseDate(regatta.meldungSchluss) : date); + break; + } + } + if (beginn != null) { + from = new Date(beginn); + from.setFullYear(from.getFullYear() - 1); + from.setDate(from.getDate() - 13); + from = formatDate('Y-m-d', from); + to = new Date(beginn); + to.setDate(to.getDate() - 14); + to = formatDate('Y-m-d', to); + jugend = true; + jugstrict = false; + } else { + $('#div-rank').html('Keine ' + YOUTH_GERMAN_NAME + ' gefunden!'); + $('#input-search').parent().hide(); + return; + } break; }