[MPP-63] pre-select activities for checked checkbox

This commit is contained in:
Nicolas Hislaire 2021-03-04 09:00:08 +01:00
parent b332f67a10
commit 47aba3526f
1 changed files with 19 additions and 10 deletions

View File

@ -18,16 +18,25 @@
{% endwith %}
<script type="text/javascript">
dom_activities = document.querySelectorAll('.activity')
function synchronize(index){
element_id = document.querySelector('#var_activities_plaines input').id
element_name = element_id + "$element" + index
linked_element = document.getElementsByName(element_name)[0]
linked_element.checked = !linked_element.checked
$(function(){
let dom_activities = document.querySelectorAll('.activity');
let checkboxes_id = document.querySelector('#var_activities_plaines').getAttribute('data-widget-name');
function check_uncheck(index){
element_name = checkboxes_id + "$element" + index;
linked_element = document.getElementsByName(element_name)[0];
linked_element.checked = !linked_element.checked;
}
for(i=0; i<dom_activities.length; i++){
let checkbox_name = checkboxes_id + "$element" + dom_activities[i].id;
if(document.getElementsByName(checkbox_name)[0].checked){
dom_activities[i].classList.add('selected');
}
dom_activities[i].addEventListener('click', function(e){
let selected = this.parentNode.querySelector('.selected')
if (this.isSameNode(selected)) {
@ -35,14 +44,14 @@
} else if (selected != null) {
selected.classList.remove('selected');
this.classList.add('selected');
synchronize(selected.id)
check_uncheck(selected.id)
} else {
this.classList.add('selected');
}
synchronize(this.id);
check_uncheck(this.id);
})
}
})
</script>
<style>