Standings page in progress
This commit is contained in:
42
view-webapp/src/main/webapp/js/tour-standings.inc.js
Normal file
42
view-webapp/src/main/webapp/js/tour-standings.inc.js
Normal file
@@ -0,0 +1,42 @@
|
||||
onLoad(() => {
|
||||
$('.criterium').on('click', e => {
|
||||
let alreadyOpen = e.target.closest('select');
|
||||
if (alreadyOpen) return;
|
||||
let select = e.target.closest('.criterium').find('select');
|
||||
$('.criterium select').removeClass('active');
|
||||
select.toggleClass('active');
|
||||
});
|
||||
document.on('click', e => {
|
||||
let crit = e.target.closest('.criterium');
|
||||
if (!crit) $('.criterium select').removeClass('active');
|
||||
});
|
||||
$('.criterium select').on('input', e => {
|
||||
let select = e.target.closest('select');
|
||||
let info = select.previousElementSibling;
|
||||
info.textContent = select.selectedOptions[0].value;
|
||||
$('.criterium select').removeClass('active');
|
||||
$('#params-submit').removeClass('hidden');
|
||||
});
|
||||
$('#params-form .cancel.button').on('click', e => {
|
||||
$('.criterium select').removeClass('active').forEach(elem => {
|
||||
elem.value = elem.data('initial');
|
||||
elem.previousElementSibling.textContent = elem.value;
|
||||
});
|
||||
$('#params-submit').addClass('hidden');
|
||||
});
|
||||
$('#params-form').on('submit', e => {
|
||||
if (!$('#params-submit').hasClass('hidden')) {
|
||||
api.putJson(`tour/${tour_id}`, {
|
||||
pairing: {
|
||||
placement: $('.criterium select').map(elem => elem.value)
|
||||
}
|
||||
}).then(rst => {
|
||||
if (rst !== 'error') {
|
||||
document.location.reload();
|
||||
}
|
||||
})
|
||||
}
|
||||
e.preventDefault();
|
||||
return false;
|
||||
});
|
||||
});
|
Reference in New Issue
Block a user