From 80b040b1118f9af90c3f14b88b51c997a1c49c42 Mon Sep 17 00:00:00 2001 From: Alice <alice.poggioli@hotmail.fr> Date: Wed, 11 Sep 2019 15:15:35 +0200 Subject: [PATCH] Bug: Adapt js to a second logout button in entrepreneur account. --- src/includes/entrepreneur/profile/detail.pug | 2 +- src/includes/mentor/profile/detail.pug | 2 +- src/scripts/coopstarter.js | 107 ++++++++++--------- 3 files changed, 60 insertions(+), 51 deletions(-) diff --git a/src/includes/entrepreneur/profile/detail.pug b/src/includes/entrepreneur/profile/detail.pug index cf1907f4..3968fb97 100644 --- a/src/includes/entrepreneur/profile/detail.pug +++ b/src/includes/entrepreneur/profile/detail.pug @@ -19,7 +19,7 @@ div.block_list.flex div.button_base.ico_gauche.ico_search Back to dashboard div.dashboard__database - div#logout-button.button_base( + div.logout-button.button_base( role='log out' ) Logout diff --git a/src/includes/mentor/profile/detail.pug b/src/includes/mentor/profile/detail.pug index b5e02a9a..ea48963b 100644 --- a/src/includes/mentor/profile/detail.pug +++ b/src/includes/mentor/profile/detail.pug @@ -19,7 +19,7 @@ div.block_list.flex div.button_base.ico_gauche.ico_search Back to dashboard div.dashboard__database - div#logout-button.button_base( + div.logout-button.button_base( role='log out' ) Logout diff --git a/src/scripts/coopstarter.js b/src/scripts/coopstarter.js index 73ff168c..3526ae67 100644 --- a/src/scripts/coopstarter.js +++ b/src/scripts/coopstarter.js @@ -1,58 +1,67 @@ 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"); + // 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 })); - } - }); + 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; - }); + 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); - }) - }); \ No newline at end of file +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 logoutButtons = document.getElementsByClassName("logout-button"); + for (var i = 0; i < logoutButtons.length; i++) { + logoutButtons[i].addEventListener("click", function() { + window.dispatchEvent( + new CustomEvent("requestNavigation", { + detail: { route: "splash-index" } + }) + ); + document.querySelector("sib-auth").logout(); + setTimeout(function() { + location.reload(); + }, 1000); + }); + } +}); -- GitLab