function onDetailClicked(regatta) {
location.href = LINK_PRE + 'result?regatta=' + regatta;
}
async function onRankingClicked(id) {
var sailor = null;
for (var i in ranking) {
if (ranking[i].id == id) {
sailor = ranking[i];
break;
}
}
if (sailor == null) return;
$('#menu-rank').find('.menu-title').find('p').text(sailor.name);
if (lastRanking != null) {
var lastRank;
if (sailor.id in lastRanking) {
lastRank = lastRanking[sailor.id] + '.';
} else {
lastRank = 'nicht in der Rangliste';
}
$('#menu-item-text').text('Vorheriges Jahr: ' + lastRank);
$('#menu-item-text').show();
} else {
$('#menu-item-text').hide();
}
list = '';
for (var i in sailor.regattas) {
var entry = sailor.regattas[i];
var regatta = entry.regatta;
var boat = await dbGetData('boats', entry.boat);
var dateFrom = parseDate(regatta.date);
var dateTo = parseDate(regatta.date);
dateTo.setDate(dateTo.getDate() + Math.max(parseInt(regatta.length) - 1, 0));
list += '
';
// ZEILE 1
list += '
' + regatta.name + '
';
// ZEILE 2
list += '
';
// DATE
list += '
' + formatDate('d.m.Y', dateFrom) + ' - ' + formatDate('d.m.Y', dateTo) + '
';
// m
list += '
m: ' + entry.m + '
';
// rlf
list += '
RLF: ' + parseFloat(regatta.rlf).toFixed(2) + '
';
list += '
';
// ZEILE 3
list += '
';
// Place
list += '
Platz ' + entry.place + ' / ' + entry.fb + '
';
// rlp
var color;
if (entry.used == 0) { color = 'color-red2-dark'; }
else if (entry.used == entry.m) { color = 'color-green2-dark'; }
else { color = 'color-yellow2-dark'; }
list += '
Punkte: ' + entry.used + ' x ' + parseFloat(entry.rlp).toFixed(2) + '
';
list += '
';
// ZEILE 4
list += '
';
// Sailnumber
list += '
' + boat.sailnumber + '
';
// Boatname
list += '
' + boat.name + '
';
list += '
';
// ZEILE 5...
var crew = entry.crew.split(',');
crew.unshift(entry.helm);
for (var c in crew) {
var cr = await dbGetData('sailors', crew[c]);
if (cr != null) {
list += '
';
// Name
list += '
' + cr.name + '
';
// Year
list += '
' + ((cr.year != null) ? ('(' + cr.year + ')') : '') + '
';
list += '
';
}
}
list += '
';
}
$('#div-details').html(list);
$('#menu-rank').showMenu();
$('#menu-rank').scrollTop(0);
}
var rankings;
function selectChange(callSiteScript = true) {
return new Promise(async function (resolve) {
var year = $('#select-year').val();
if (year == "user") {
$('#select-type').parent().hide();
$('#input-from').trigger('focusin').trigger('focusout').parent().show();
$('#input-to').trigger('focusin').trigger('focusout').parent().show();
$('#input-altm').trigger('focusin').trigger('focusout').parent().show();
$('#input-maxage').trigger('focusin').trigger('focusout').parent().show();
$('#input-agestrict').parent().show();
$('#input-agecrew').parent().show();
$('#button-show').show();
$('#card-special-ranks').hide();
} else {
year = parseInt(year);
var type = $('#select-type').val();
console.log('[rank] selected', year, type);
$('#select-type').parent().show();
$('#input-from').parent().hide();
$('#input-to').parent().hide();
$('#input-altm').parent().hide();
$('#input-maxage').parent().hide();
$('#input-agestrict').parent().hide();
$('#input-agecrew').parent().hide();
$('#button-show').hide();
$('#card-special-ranks').hide(); // first hide, show only when there are special ranks
var rankingsShow = {};
var options = '';
for (var i in rankings) {
if (rankings[i].year_from !== null && rankings[i].year_from > year) continue;
if (rankings[i].year_to !== null && rankings[i].year_to < year) continue;
var alias = rankings[i].alias;
options += '';
// ZEILE 1
row.content += '
';
// Rank
var icon = '';
if (lastRanking != null) {
if (entry.id in lastRanking) {
if (entry.rank < lastRanking[entry.id]) { icon = 'color-green2-dark fa-caret-up'; }
else if (entry.rank > lastRanking[entry.id]) { icon = 'color-red2-dark fa-caret-down'; }
else { icon = 'color-yellow2-dark fa-minus'; }
} else {
icon = 'color-green2-dark fa-caret-up';
}
icon = '
';
}
row.content += '
' + icon + '' + entry.rank + '.
';
// m
row.content += '
m = ' + entry.m + '
';
// rlp
row.content += '
' + entry.rlp.toFixed(3) + '
';
row.content += '
';
// ZEILE 2
row.content += '
';
// Name
row.content += '
' + entry.name + '
';
// Year
row.content += '
' + ((entry.year != null) ? ('(' + entry.year + ')') : '') + '
';
row.content += '
';
rows.push(row);
}
if (!dsvEnd) {
rows.push(null);
}
drawList();
} else {
$('#div-rank').html('Keine Ergebnisse gefunden!');
$('#input-search').parent().hide();
}
hideLoader();
}