RA-#19 Update URL on year change
This commit is contained in:
@@ -11,7 +11,7 @@ async function onRankingClicked(id) {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (sailor == null) return;
|
if (sailor == null) return;
|
||||||
|
|
||||||
$('#menu-rank').find('.menu-title').find('p').text(sailor.name);
|
$('#menu-rank').find('.menu-title').find('p').text(sailor.name);
|
||||||
if (lastRanking != null) {
|
if (lastRanking != null) {
|
||||||
var lastRank;
|
var lastRank;
|
||||||
@@ -25,83 +25,83 @@ async function onRankingClicked(id) {
|
|||||||
} else {
|
} else {
|
||||||
$('#menu-item-text').hide();
|
$('#menu-item-text').hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
list = '';
|
list = '';
|
||||||
for (var i in sailor.regattas) {
|
for (var i in sailor.regattas) {
|
||||||
var entry = sailor.regattas[i];
|
var entry = sailor.regattas[i];
|
||||||
var regatta = entry.regatta;
|
var regatta = entry.regatta;
|
||||||
var boat = await dbGetData('boats', entry.boat);
|
var boat = await dbGetData('boats', entry.boat);
|
||||||
|
|
||||||
var dateFrom = parseDate(regatta.date);
|
var dateFrom = parseDate(regatta.date);
|
||||||
var dateTo = parseDate(regatta.date);
|
var dateTo = parseDate(regatta.date);
|
||||||
dateTo.setDate(dateTo.getDate() + Math.max(parseInt(regatta.length) - 1, 0));
|
dateTo.setDate(dateTo.getDate() + Math.max(parseInt(regatta.length) - 1, 0));
|
||||||
|
|
||||||
list += '<div onclick="onDetailClicked(' + regatta.id + ')">';
|
list += '<div onclick="onDetailClicked(' + regatta.id + ')">';
|
||||||
|
|
||||||
// ZEILE 1
|
// ZEILE 1
|
||||||
list += '<div><b>' + regatta.name + '</b></div>';
|
list += '<div><b>' + regatta.name + '</b></div>';
|
||||||
|
|
||||||
// ZEILE 2
|
// ZEILE 2
|
||||||
list += '<div>';
|
list += '<div>';
|
||||||
|
|
||||||
// DATE
|
// DATE
|
||||||
list += '<div>' + formatDate('d.m.Y', dateFrom) + ' - ' + formatDate('d.m.Y', dateTo) + '</div>';
|
list += '<div>' + formatDate('d.m.Y', dateFrom) + ' - ' + formatDate('d.m.Y', dateTo) + '</div>';
|
||||||
|
|
||||||
// m
|
// m
|
||||||
list += '<div>m: ' + entry.m + '</div>';
|
list += '<div>m: ' + entry.m + '</div>';
|
||||||
|
|
||||||
// rlf
|
// rlf
|
||||||
list += '<div>RLF: ' + parseFloat(regatta.rlf).toFixed(2) + '</div>';
|
list += '<div>RLF: ' + parseFloat(regatta.rlf).toFixed(2) + '</div>';
|
||||||
|
|
||||||
list += '</div>';
|
list += '</div>';
|
||||||
|
|
||||||
// ZEILE 3
|
// ZEILE 3
|
||||||
list += '<div>';
|
list += '<div>';
|
||||||
|
|
||||||
// Place
|
// Place
|
||||||
list += '<div>Platz ' + entry.place + ' / ' + entry.fb + '</div>';
|
list += '<div>Platz ' + entry.place + ' / ' + entry.fb + '</div>';
|
||||||
|
|
||||||
// rlp
|
// rlp
|
||||||
var color;
|
var color;
|
||||||
if (entry.used == 0) { color = 'color-red2-dark'; }
|
if (entry.used == 0) { color = 'color-red2-dark'; }
|
||||||
else if (entry.used == entry.m) { color = 'color-green2-dark'; }
|
else if (entry.used == entry.m) { color = 'color-green2-dark'; }
|
||||||
else { color = 'color-yellow2-dark'; }
|
else { color = 'color-yellow2-dark'; }
|
||||||
list += '<div>Punkte: ' + entry.used + ' x <b class="' + color + '">' + parseFloat(entry.rlp).toFixed(2) + '</b></div>';
|
list += '<div>Punkte: ' + entry.used + ' x <b class="' + color + '">' + parseFloat(entry.rlp).toFixed(2) + '</b></div>';
|
||||||
|
|
||||||
list += '</div>';
|
list += '</div>';
|
||||||
|
|
||||||
// ZEILE 4
|
// ZEILE 4
|
||||||
list += '<div>';
|
list += '<div>';
|
||||||
|
|
||||||
// Sailnumber
|
// Sailnumber
|
||||||
list += '<div>' + boat.sailnumber + '</div>';
|
list += '<div>' + boat.sailnumber + '</div>';
|
||||||
|
|
||||||
// Boatname
|
// Boatname
|
||||||
list += '<div>' + boat.name + '</div>';
|
list += '<div>' + boat.name + '</div>';
|
||||||
|
|
||||||
list += '</div>';
|
list += '</div>';
|
||||||
|
|
||||||
// ZEILE 5...
|
// ZEILE 5...
|
||||||
var crew = entry.crew.split(',');
|
var crew = entry.crew.split(',');
|
||||||
for (var c in crew) {
|
for (var c in crew) {
|
||||||
var cr = await dbGetData('sailors', crew[c]);
|
var cr = await dbGetData('sailors', crew[c]);
|
||||||
if (cr != null) {
|
if (cr != null) {
|
||||||
list += '<div>';
|
list += '<div>';
|
||||||
|
|
||||||
// Name
|
// Name
|
||||||
list += '<div>' + cr.name + '</div>';
|
list += '<div>' + cr.name + '</div>';
|
||||||
|
|
||||||
// Year
|
// Year
|
||||||
list += '<div>' + ((cr.year != null) ? ('(' + cr.year + ')') : '') + '</div>';
|
list += '<div>' + ((cr.year != null) ? ('(' + cr.year + ')') : '') + '</div>';
|
||||||
|
|
||||||
list += '</div>';
|
list += '</div>';
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
list += '</div>';
|
list += '</div>';
|
||||||
}
|
}
|
||||||
$('#div-details').html(list);
|
$('#div-details').html(list);
|
||||||
|
|
||||||
$('#menu-rank').showMenu();
|
$('#menu-rank').showMenu();
|
||||||
$('#menu-rank').scrollTop(0);
|
$('#menu-rank').scrollTop(0);
|
||||||
}
|
}
|
||||||
@@ -111,8 +111,8 @@ async function selectChange(callSiteScript = true) {
|
|||||||
var year = parseInt($('#select-year').val());
|
var year = parseInt($('#select-year').val());
|
||||||
if (type == "user") {
|
if (type == "user") {
|
||||||
$('#select-year').parent().hide();
|
$('#select-year').parent().hide();
|
||||||
$('#input-from').parent().show();
|
$('#input-from').trigger('focusin').trigger('focusout').parent().show();
|
||||||
$('#input-to').parent().show();
|
$('#input-to').trigger('focusin').trigger('focusout').parent().show();
|
||||||
$('#input-jugend').parent().parent().show();
|
$('#input-jugend').parent().parent().show();
|
||||||
$('#input-jugstrict').parent().parent().show();
|
$('#input-jugstrict').parent().parent().show();
|
||||||
$('#button-show').show();
|
$('#button-show').show();
|
||||||
@@ -123,7 +123,7 @@ async function selectChange(callSiteScript = true) {
|
|||||||
$('#input-jugend').parent().parent().hide();
|
$('#input-jugend').parent().parent().hide();
|
||||||
$('#input-jugstrict').parent().parent().hide();
|
$('#input-jugstrict').parent().parent().hide();
|
||||||
$('#button-show').hide();
|
$('#button-show').hide();
|
||||||
|
|
||||||
var from, to, jugend, jugstrict;
|
var from, to, jugend, jugstrict;
|
||||||
switch (type) {
|
switch (type) {
|
||||||
case 'year':
|
case 'year':
|
||||||
@@ -168,14 +168,26 @@ async function selectChange(callSiteScript = true) {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
$('#input-from').val(from);
|
$('#input-from').val(from);
|
||||||
$('#input-to').val(to);
|
$('#input-to').val(to);
|
||||||
$('#input-jugend').prop('checked', jugend);
|
$('#input-jugend').prop('checked', jugend);
|
||||||
$('#input-jugstrict').prop('checked', jugstrict);
|
$('#input-jugstrict').prop('checked', jugstrict);
|
||||||
|
|
||||||
if (callSiteScript && (typeof siteScript === 'function'))
|
if (callSiteScript && (typeof siteScript === 'function')) {
|
||||||
|
history.replaceState(null, '', '?type=' + type + '&year=' + year)
|
||||||
siteScript();
|
siteScript();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function buttonShowPressed() {
|
||||||
|
if (typeof siteScript === 'function') {
|
||||||
|
var chboxes = '';
|
||||||
|
if ($('#input-jugend').prop('checked')) chboxes += '&jugend=on'
|
||||||
|
if ($('#input-jugstrict').prop('checked')) chboxes += '&jugstrict=on'
|
||||||
|
history.replaceState(null, '', '?type=user&from=' + $('#input-from').val() + "&to=" + $('#input-to').val() + chboxes)
|
||||||
|
siteScript();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -186,10 +198,23 @@ function initSelects() {
|
|||||||
if (year === null) year = new Date().getFullYear();
|
if (year === null) year = new Date().getFullYear();
|
||||||
|
|
||||||
$('#select-type').val(type);
|
$('#select-type').val(type);
|
||||||
|
|
||||||
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
||||||
$('#select-year').val(year);
|
$('#select-year').val(year);
|
||||||
|
|
||||||
|
if (type == "user") {
|
||||||
|
var from = findGetParameter('from');
|
||||||
|
var to = findGetParameter('to');
|
||||||
|
if (from === null) from = formatDate('Y-m-d')
|
||||||
|
if (to === null) to = formatDate('Y-m-d')
|
||||||
|
$('#input-from').val(from).trigger('focusin').trigger('focusout');
|
||||||
|
$('#input-to').val(to).trigger('focusin').trigger('focusout');
|
||||||
|
var jugend = findGetParameter('jugend');
|
||||||
|
var jugstrict = findGetParameter('jugstrict');
|
||||||
|
$('#input-jugend').prop('checked', jugend !== null);
|
||||||
|
$('#input-jugstrict').prop('checked', jugstrict !== null);
|
||||||
|
}
|
||||||
|
|
||||||
selectChange(false);
|
selectChange(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -218,17 +243,17 @@ var siteScript = async function() {
|
|||||||
initSelects();
|
initSelects();
|
||||||
$('#select-type').change(selectChange);
|
$('#select-type').change(selectChange);
|
||||||
$('#select-year').change(selectChange);
|
$('#select-year').change(selectChange);
|
||||||
$('#button-show').click(siteScript);
|
$('#button-show').click(buttonShowPressed);
|
||||||
$('#input-search').on('input', drawList);
|
$('#input-search').on('input', drawList);
|
||||||
}
|
}
|
||||||
|
|
||||||
var minDate = parseDate($('#input-from').val());
|
var minDate = parseDate($('#input-from').val());
|
||||||
var maxDate = parseDate($('#input-to').val());
|
var maxDate = parseDate($('#input-to').val());
|
||||||
var jugend = $('#input-jugend').prop('checked');
|
var jugend = $('#input-jugend').prop('checked');
|
||||||
var jugstrict = $('#input-jugstrict').prop('checked');
|
var jugstrict = $('#input-jugstrict').prop('checked');
|
||||||
var dbRanking = await dbGetRanking(minDate, maxDate, jugend, jugstrict);
|
var dbRanking = await dbGetRanking(minDate, maxDate, jugend, jugstrict);
|
||||||
ranking = dbRanking[0];
|
ranking = dbRanking[0];
|
||||||
|
|
||||||
lastRanking = null;
|
lastRanking = null;
|
||||||
if (($('#select-type').val() == 'year') || ($('#select-type').val() == 'youth')) {
|
if (($('#select-type').val() == 'year') || ($('#select-type').val() == 'youth')) {
|
||||||
lastRanking = {};
|
lastRanking = {};
|
||||||
@@ -240,9 +265,9 @@ var siteScript = async function() {
|
|||||||
lastRanking[lDbRanking[i].id] = lDbRanking[i].rank;
|
lastRanking[lDbRanking[i].id] = lDbRanking[i].rank;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
var selectedYear = $('#select-year').val();
|
var selectedYear = $('#select-year').val();
|
||||||
|
|
||||||
var years = await dbGetData('years');
|
var years = await dbGetData('years');
|
||||||
years.sort(function (a, b) {
|
years.sort(function (a, b) {
|
||||||
if (a['year'] > b['year']) return -1;
|
if (a['year'] > b['year']) return -1;
|
||||||
@@ -256,7 +281,7 @@ var siteScript = async function() {
|
|||||||
}
|
}
|
||||||
$('#select-year').html(options);
|
$('#select-year').html(options);
|
||||||
$('#select-year').val(selectedYear);
|
$('#select-year').val(selectedYear);
|
||||||
|
|
||||||
if (dbRanking[1].length > 0) {
|
if (dbRanking[1].length > 0) {
|
||||||
$('#card-noresults').show();
|
$('#card-noresults').show();
|
||||||
list = '';
|
list = '';
|
||||||
@@ -269,18 +294,18 @@ var siteScript = async function() {
|
|||||||
} else {
|
} else {
|
||||||
$('#card-noresults').hide();
|
$('#card-noresults').hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
var count = ranking.length;
|
var count = ranking.length;
|
||||||
if (count > 0) {
|
if (count > 0) {
|
||||||
$('#input-search').parent().show();
|
$('#input-search').parent().show();
|
||||||
|
|
||||||
var dsvEnd = false;
|
var dsvEnd = false;
|
||||||
|
|
||||||
rows = [];
|
rows = [];
|
||||||
|
|
||||||
for (id in ranking) {
|
for (id in ranking) {
|
||||||
var entry = ranking[id];
|
var entry = ranking[id];
|
||||||
|
|
||||||
for (var i in entry.regattas) {
|
for (var i in entry.regattas) {
|
||||||
entry.regattas[i].regatta = await dbGetData('regattas', entry.regattas[i].regatta);
|
entry.regattas[i].regatta = await dbGetData('regattas', entry.regattas[i].regatta);
|
||||||
}
|
}
|
||||||
@@ -288,26 +313,26 @@ var siteScript = async function() {
|
|||||||
entry.regattas.sort(function (a,b) {
|
entry.regattas.sort(function (a,b) {
|
||||||
return a.regatta.date.localeCompare(b.regatta.date);
|
return a.regatta.date.localeCompare(b.regatta.date);
|
||||||
});
|
});
|
||||||
|
|
||||||
var club = null;
|
var club = null;
|
||||||
if (entry['club'] != null)
|
if (entry['club'] != null)
|
||||||
club = await dbGetData('clubs', entry['club']);
|
club = await dbGetData('clubs', entry['club']);
|
||||||
|
|
||||||
var row = { keywords: [], content: '' };
|
var row = { keywords: [], content: '' };
|
||||||
row.keywords.push(entry['name']);
|
row.keywords.push(entry['name']);
|
||||||
if (entry['year'] != null) row.keywords.push(entry['year']);
|
if (entry['year'] != null) row.keywords.push(entry['year']);
|
||||||
if (club != null) row.keywords.push(club['kurz'], club['name']);
|
if (club != null) row.keywords.push(club['kurz'], club['name']);
|
||||||
|
|
||||||
if (!dsvEnd && (entry.m < 9)) {
|
if (!dsvEnd && (entry.m < 9)) {
|
||||||
rows.push(null);
|
rows.push(null);
|
||||||
dsvEnd = true;
|
dsvEnd = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
row.content += '<div onclick="onRankingClicked(' + entry['id'] + ');">';
|
row.content += '<div onclick="onRankingClicked(' + entry['id'] + ');">';
|
||||||
|
|
||||||
// ZEILE 1
|
// ZEILE 1
|
||||||
row.content += '<div>';
|
row.content += '<div>';
|
||||||
|
|
||||||
// Rank
|
// Rank
|
||||||
var icon = '';
|
var icon = '';
|
||||||
if (lastRanking != null) {
|
if (lastRanking != null) {
|
||||||
@@ -321,39 +346,39 @@ var siteScript = async function() {
|
|||||||
icon = '<i class="font-16 fas ' + icon + '" style="width: 1.1em; text-align: center;"></i> ';
|
icon = '<i class="font-16 fas ' + icon + '" style="width: 1.1em; text-align: center;"></i> ';
|
||||||
}
|
}
|
||||||
row.content += '<div>' + icon + '<b>' + entry.rank + '.</b></div>';
|
row.content += '<div>' + icon + '<b>' + entry.rank + '.</b></div>';
|
||||||
|
|
||||||
// m
|
// m
|
||||||
row.content += '<div>m = ' + entry.m + '</div>';
|
row.content += '<div>m = ' + entry.m + '</div>';
|
||||||
|
|
||||||
// rlp
|
// rlp
|
||||||
row.content += '<div>' + entry.rlp.toFixed(3) + '</div>';
|
row.content += '<div>' + entry.rlp.toFixed(3) + '</div>';
|
||||||
|
|
||||||
row.content += '</div>';
|
row.content += '</div>';
|
||||||
|
|
||||||
// ZEILE 2
|
// ZEILE 2
|
||||||
row.content += '<div>';
|
row.content += '<div>';
|
||||||
|
|
||||||
// Name
|
// Name
|
||||||
row.content += '<div><b>' + entry.name + '</b></div>';
|
row.content += '<div><b>' + entry.name + '</b></div>';
|
||||||
|
|
||||||
// Year
|
// Year
|
||||||
row.content += '<div>' + ((entry.year != null) ? ('(' + entry.year + ')') : '') + '</div>';
|
row.content += '<div>' + ((entry.year != null) ? ('(' + entry.year + ')') : '') + '</div>';
|
||||||
|
|
||||||
row.content += '</div></div>';
|
row.content += '</div></div>';
|
||||||
|
|
||||||
rows.push(row);
|
rows.push(row);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!dsvEnd) {
|
if (!dsvEnd) {
|
||||||
rows.push(null);
|
rows.push(null);
|
||||||
}
|
}
|
||||||
|
|
||||||
drawList();
|
drawList();
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
$('#div-rank').html('Keine Ergebnisse gefunden!');
|
$('#div-rank').html('Keine Ergebnisse gefunden!');
|
||||||
$('#input-search').parent().hide();
|
$('#input-search').parent().hide();
|
||||||
}
|
}
|
||||||
|
|
||||||
hideLoader();
|
hideLoader();
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,8 +1,8 @@
|
|||||||
function selectChange(callSiteScript = true) {
|
function selectChange(callSiteScript = true) {
|
||||||
var val = $('#select-year').val();
|
var val = $('#select-year').val();
|
||||||
if (val == "user") {
|
if (val == "user") {
|
||||||
$('#input-from').parent().show();
|
$('#input-from').trigger('focusin').trigger('focusout').parent().show();
|
||||||
$('#input-to').parent().show();
|
$('#input-to').trigger('focusin').trigger('focusout').parent().show();
|
||||||
$('#button-show').show();
|
$('#button-show').show();
|
||||||
} else {
|
} else {
|
||||||
$('#input-from').parent().hide();
|
$('#input-from').parent().hide();
|
||||||
@@ -12,8 +12,17 @@ function selectChange(callSiteScript = true) {
|
|||||||
$('#input-from').val(val + '-01-01');
|
$('#input-from').val(val + '-01-01');
|
||||||
$('#input-to').val(val + '-12-31');
|
$('#input-to').val(val + '-12-31');
|
||||||
|
|
||||||
if (callSiteScript && (typeof siteScript === 'function'))
|
if (callSiteScript && (typeof siteScript === 'function')) {
|
||||||
|
history.replaceState(null, '', '?year=' + val);
|
||||||
siteScript();
|
siteScript();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function buttonShowPressed() {
|
||||||
|
if (typeof siteScript === 'function') {
|
||||||
|
history.replaceState(null, '', '?year=user&from=' + $('#input-from').val() + "&to=" + $('#input-to').val())
|
||||||
|
siteScript();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -24,6 +33,15 @@ function initYear() {
|
|||||||
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
$('#select-year').html('<option value="' + year + '">' + year + '</option>');
|
||||||
$('#select-year').val(year);
|
$('#select-year').val(year);
|
||||||
|
|
||||||
|
if (year == "user") {
|
||||||
|
var from = findGetParameter('from');
|
||||||
|
var to = findGetParameter('to');
|
||||||
|
if (from === null) from = formatDate('Y-m-d')
|
||||||
|
if (to === null) to = formatDate('Y-m-d')
|
||||||
|
$('#input-from').val(from).trigger('focusin').trigger('focusout');
|
||||||
|
$('#input-to').val(to).trigger('focusin').trigger('focusout');
|
||||||
|
}
|
||||||
|
|
||||||
selectChange(false);
|
selectChange(false);
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -50,7 +68,7 @@ var siteScript = async function() {
|
|||||||
firstCall = false;
|
firstCall = false;
|
||||||
initYear();
|
initYear();
|
||||||
$('#select-year').change(selectChange);
|
$('#select-year').change(selectChange);
|
||||||
$('#button-show').click(siteScript);
|
$('#button-show').click(buttonShowPressed);
|
||||||
$('#input-search').on('input', drawList);
|
$('#input-search').on('input', drawList);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user