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');