function openTab(pageName, elmnt) { // Hide all elements with class="tabcontent" by default */ var i, tabcontent, tablinks; tabcontent = document.getElementsByClassName("tabcontent"); tablinks = document.getElementsByClassName("tablink"); for (i = 0; i < tabcontent.length; i++) { tabcontent[i].style.display = "none"; tablinks[i].classList.remove("active"); } // Show the specific tab content document.getElementById(pageName).style.display = "block"; elmnt.classList.add("active"); } function linkDatasetToField(detail, targetFormName, inputName) { let targetForm = document.getElementById(targetFormName); targetForm.addEventListener("populate", event => { let resourceField = targetForm.querySelector(`input[name="${inputName}"]`); if (resourceField) { resourceField.value = JSON.stringify({ '@id': detail.dataset.src }); resourceField.setAttribute('value', JSON.stringify({ '@id': detail.dataset.src })); } }); } function refreshList(formId, listId) { let form = document.getElementById(formId); form.addEventListener("save", event => { let list = document.getElementById(listId); list.dataset.src = list.dataset.src; }); } jQuery(document).ready(function($) { // Get the element with id="defaultOpen" and click on it document.getElementById("defaultOpen").click(); let userAccountDataSrc = document.getElementById("user-account-picture"); linkDatasetToField(userAccountDataSrc, 'validation-form', 'reviewer'); linkDatasetToField(userAccountDataSrc, 'improvement-dialog-form', 'reviewer'); linkDatasetToField(userAccountDataSrc, 'refusal-dialog-form', 'reviewer'); refreshList("resource-creation-form", "resources-history"); refreshList("validation-form", "pending-resources"); refreshList("refusal-dialog-form", "pending-resources"); refreshList("improvement-dialog-form", "pending-resources"); const logoutButton = document.getElementById('logout-button'); logoutButton.addEventListener('click', function() { window.dispatchEvent( new CustomEvent('requestNavigation', { detail: { route: 'splash-index' } }) ); document.querySelector('sib-auth').logout(); setTimeout(function(){ location.reload(); }, 1000); }) });