function newPassword(id = ''){ if(id != ''){ id = '&id=' + id; } alert('Le mot de passe a été modifié.'); window.setTimeout(function(){ location.href = "index.php?page=" + window.Config.page + "&message=nouveau_mdp" + id; }, 0); } function copyInClipBoard(link){ // une balise avec des attributs var element = document.createElement("input"); element.setAttribute("id", "copyMe"); element.setAttribute("value", link); // placement dans la page (= le "document") document.body.appendChild(element); var cible = document.getElementById('copyMe'); // selection comme on le ferait à la souris cible.select(); // copie (= Ctrl + C) document.execCommand("copy"); // nettoyage element.parentNode.removeChild(element); toastNotify('Cette adresse a été copiée dans le presse-papier:
' + link); } function toastNotify(message){ var toast = document.getElementById('toast'); toast.innerHTML = message; toast.className = 'toast show'; setTimeout(function(){ toast.className = toast.className.replace('show', ''); }, 5000); } function controlURL(input){ const url = input.value.trim(); if(!url){ return; } if(/^[a-z][a-z0-9+.-]*:/i.test(url) // un "protocole" (https://, ftp://, mailto:, etc) || url.startsWith('/') || url.startsWith('./') || url.startsWith('../')){ // Lien local (commence par /, ./ ou ../) return; } input.value = 'https://' + url; // Cas par défaut } function toggleTouchMenu(){ const nav = document.getElementById('nav_zone').querySelector('.nav_main'); const open_state = nav.classList.toggle('show'); // interrupteur if(!open_state){ nav.querySelectorAll('li').forEach(li => { li.classList.remove('open'); // fermer les sous-menus à la fermeture }); } } function makeDropLeftMenuEntries(){ // détection d'éléments de 1er niveau possédant un menu déroulant possédant un menu déroulant document.getElementById('nav_zone').querySelector('.nav_main').querySelectorAll('.drop-down:has(.drop-right)').forEach(drop_down => { const rect = drop_down.getBoundingClientRect(); // coordonnées spatiales // il se situe dans la moitié droite if((rect.width / 2 + rect.left) > (window.innerWidth / 2)){ // centre de l'élément > largeur de la fenêtre? drop_down.querySelectorAll('.drop-right').forEach(drop_right => { drop_right.classList.remove('drop-right'); drop_right.classList.add('drop-left'); }); } }); } // exécuté à la fin du chargement de la page document.addEventListener('DOMContentLoaded', () => { // ouvrir/fermer les sous-menus avec écran tactile document.querySelectorAll('.sub-menu-toggle').forEach(button => { button.addEventListener('click', e => { e.preventDefault(); const li = button.parentElement; //