"use strict";
import Scenari from './scenari.js';
import { showAlert } from './alerts.js';

function setToggleMovement() {
    const toggles = document.querySelectorAll('.toggle-button');
    for (const toggle of toggles) {
        setToggleMovement2(toggle);
    }
};

function setToggleMovement2(toggle) {
    toggle.addEventListener('click', event => {
        event.preventDefault();
        toggle.classList.toggle('active');
    }, false);
}

function scenariToggleListener(toggle, scenarioID) {
    const registerBtn = document.getElementById('scenari-registra');
    toggle.addEventListener('click', event => {
        event.preventDefault();
        if(registerBtn.innerText !== "Registra"){//sto registrando
            showAlert("Attenzione", "Stai registrando uno scenario, termina la registrazione per attivare lo scenario.", false);
            Scenari.makeElementBounce(registerBtn);
            return;
        }
        // select the option from the dropdown
        Scenari.addNameHere.value = scenarioID;
        // change text of the modal based on toggle state
        const modalBody = document.getElementById('attiva-scenari-modal').querySelector('.modal-body');
        const children = modalBody.children;
        //p, fieldset, p.more-margin-top, p
        //0,    1,            2,          3
        const okBtn = document.getElementById('attiva-scenari-btn')
        if (toggle.classList.contains('active')) {
            children[0].innerText = "Disabilitando questo scenario, disabiliterai l'antifurto.";
            children[2].innerText = "Disabilitare lo scenario?";
            children[3].classList.add('invisible')
            okBtn.innerText = "Disabilita";
        }
        else {
            children[0].innerText = "Attivando questo scenario, abiliterai l'antifurto.";
            if (Scenari.scenarioAttivoToggle != null) {
                children[2].innerText = "Inoltre disabiliterai gli altri scenari attivi.";
                children[3].classList.remove('invisible')
            } else {
                children[2].innerText = "Continuare l'attivazione?";
                children[3].classList.add('invisible')
            }
            okBtn.innerText = "Attiva";
        }
        // launch the modal
        const modalLauncher = document.getElementById('launch-modal-' + scenarioID);
        modalLauncher.click();
    }, false);
}

export { setToggleMovement, setToggleMovement2, scenariToggleListener };