From f511a9ad17cdb4ddb90bcc46da3e0d27c5bf69c0 Mon Sep 17 00:00:00 2001 From: Pierre Marx Date: Thu, 4 Sep 2025 15:35:09 -0400 Subject: [PATCH] =?UTF-8?q?fix:=20R=C3=A9initialisation=20du=20formulaire?= =?UTF-8?q?=20de=20connexion=20apr=C3=A8s=20d=C3=A9connexion=20(v1.2.4)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Correction du bug où le bouton restait grisé "Reconnexion..." - Nouvelle fonction resetLoginForm() pour nettoyer le formulaire - Vide les champs code/mot de passe et décoche "Débloquer" - Réactive le bouton avec le texte "Se connecter" - Formulaire propre et fonctionnel après déconnexion - Préserve la sélection du terminal pour la commodité --- docs/changelog.md | 22 ++++++++++++++++++++++ renderer.js | 33 +++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) diff --git a/docs/changelog.md b/docs/changelog.md index f32293e..7d8327e 100644 --- a/docs/changelog.md +++ b/docs/changelog.md @@ -1,5 +1,27 @@ # Changelog - SimpleConnect Electron +## [1.2.4] - 2025-09-04 + +### Corrigé +- **Bug du formulaire de connexion après déconnexion** : Réinitialisation complète + - Le bouton "Se connecter" restait grisé avec le texte "Reconnexion..." après déconnexion + - Les champs restaient pré-remplis avec les anciennes valeurs + - La checkbox "Débloquer" restait cochée + +### Ajouté +- **Fonction resetLoginForm()** : Nettoyage du formulaire de connexion + - Vide automatiquement les champs code d'accès et mot de passe + - Décoche la checkbox "Débloquer" + - Efface les messages d'erreur + - Réactive le bouton et restaure le texte "Se connecter" + - Préserve la sélection du terminal pour la commodité + +### Modifié +- **Comportement de déconnexion** : Expérience utilisateur améliorée + - Retour sur un formulaire de connexion propre et fonctionnel + - Plus d'état "bloqué" avec le bouton désactivé + - Réinitialisation également appliquée au démarrage si personne n'est connecté + ## [1.2.3] - 2025-09-04 ### Ajouté diff --git a/renderer.js b/renderer.js index a1d3e7e..2d2bd41 100644 --- a/renderer.js +++ b/renderer.js @@ -35,6 +35,9 @@ document.addEventListener('DOMContentLoaded', async () => { currentAgent = agentData.agent; currentCentres = agentData.centres; showMainPage(); + } else { + // S'assurer que le formulaire est propre au démarrage + resetLoginForm(); } // Gestionnaire du formulaire de connexion @@ -211,6 +214,7 @@ function showLogoutModal() { currentCentres = []; activeCenter = null; webviews = {}; + resetLoginForm(); // Réinitialiser le formulaire showLoginPage(); cancelBtn.removeEventListener('click', handleCancel); confirmBtn.removeEventListener('click', handleConfirm); @@ -242,6 +246,35 @@ function showLoginPage() { document.getElementById('mainPage').classList.remove('active'); } +// Réinitialiser le formulaire de connexion +function resetLoginForm() { + // Vider les champs + const accessCode = document.getElementById('accessCode'); + const password = document.getElementById('password'); + const terminal = document.getElementById('terminal'); + const forceDisconnect = document.getElementById('forceDisconnect'); + const loginError = document.getElementById('loginError'); + const loginBtn = document.querySelector('#loginForm button[type="submit"]'); + + if (accessCode) accessCode.value = ''; + if (password) password.value = ''; + + // Réinitialiser le terminal (garder la dernière sélection si elle existe) + // Ne pas réinitialiser le terminal pour garder la préférence + + // Décocher la checkbox de déblocage + if (forceDisconnect) forceDisconnect.checked = false; + + // Vider les messages d'erreur + if (loginError) loginError.textContent = ''; + + // Réactiver le bouton et remettre le texte par défaut + if (loginBtn) { + loginBtn.disabled = false; + loginBtn.textContent = 'Se connecter'; + } +} + function showMainPage() { document.getElementById('loginPage').classList.remove('active'); document.getElementById('mainPage').classList.add('active');