/**********************************
 *  TOGGLE
 * This script adds interactive toggle functionality to elements on a webpage,
 * allowing for showing/hiding or activating/deactivating UI components
 * based on user interaction.
 **********************************/
var isPopupVisible = false;

var CLASSES = {
  toggle: "toggle",
  toggleClose: "toggle-close",
  toggleExpanded: "toggle-expanded",
  toggleCollapsed: "toggle-collapsed",
  toggleButton: "toggle-button",
  toggleNormal: "toggle-normal",
};

// document.getElementById('closeIcon').addEventListener('click', function (event) {
//   isPopupVisible = true;  
//   document.getElementById('popup').style.display = 'block';  
// });

const toggleCloseButtons = document.querySelectorAll(`.${CLASSES.toggleClose}`);
const toggleElements = document.querySelectorAll(`.${CLASSES.toggle}`);
const toggleButtons = document.querySelectorAll(`.${CLASSES.toggleButton}`);

toggleCloseButtons.forEach((button) => {
  button.addEventListener("click", function () {
    if (this.id != 'closeIcon') {
      toggleElements.forEach((element) => {
        element.classList.add(CLASSES.toggleExpanded);
        element.classList.remove(CLASSES.toggleNormal);
      });

      const parent = this.closest(`.${CLASSES.toggle}`);
      if (parent) {
        parent.classList.remove(CLASSES.toggleExpanded);
        parent.classList.add(CLASSES.toggleCollapsed);
      }

      this.style.display = "none";    
    } else {
      // דואגים להציג את הפופאפ
      isPopupVisible = true;
      document.getElementById('popup').style.display = 'block';
    }
  });
});

toggleButtons.forEach((button) => {
  button.addEventListener("click", function () {
    toggleElements.forEach((element) => {
      element.classList.remove(CLASSES.toggleExpanded);
      element.classList.add(CLASSES.toggleNormal);
    });

    const parent = this.closest(`.${CLASSES.toggle}`);
    if (parent) {
      parent.classList.remove(CLASSES.toggleCollapsed);
      parent.classList.remove(CLASSES.toggleNormal);
    }

    toggleCloseButtons.forEach((closeButton) => {
      closeButton.style.display = "flex";
    });
  });
});

document.getElementById('saveChanges').addEventListener('click', function (event) {
  document.getElementById('popup').style.display = 'none'; 
});

document.addEventListener("DOMContentLoaded", function () {
    const discardBtn = document.getElementById('discardChanges');
    if (!discardBtn) return;

    discardBtn.addEventListener('click', function (event) {
        event.preventDefault();
        event.stopPropagation();

        // סגירת הפופאפ
        const popup = document.getElementById('popup');
        if (popup) popup.style.display = 'none';

        // הסתרת התוכן הראשי
        const contentDiv = document.getElementById('divForClose') || document.getElementById('divForClose1');
        if (contentDiv) {
            contentDiv.style.display = 'none';
        }

        // ניקוי הפרמטרים
        let url = new URL(window.location.href);
        const params = url.searchParams;

        // מחיקה של כל פרמטר שיכול לטעון את הטופס
        ['formId', 'type', 'stepid', 'msg', 'sessionid', 'id', 'summaryId', 'close'].forEach(p => {
            params.delete(p);
        });

        // שמירה רק של accountId ו-accountServiceId
        for (const [key] of params) {
            if (key !== 'accountId' && key !== 'accountServiceId') {
                params.delete(key);
            }
        }

        // עדכון ה־URL בלי close=yes
        history.replaceState(null, '', url.toString());
    });
});





