Public Access
-
v2026.5.46 Stable
released this
2026-07-09 16:21:59 +02:00 | 2 commits to main since this releasev2026.5.46 — Refonte de la couche données, vue « échelle de temps exacte », session fiabilisée, réservations enrichies
Version majeure par son contenu : la couche données est entièrement refondue (store unifié par jour, un seul verdict par intervention, synchronisation du dossier partagé en sous-dossier
v2), une nouvelle disposition « échelle de temps exacte » s'ajoute à la vue horizontale, la détection de session EasyVista est fiabilisée de bout en bout, et les réservations portent enfin leurs informations (n°, lieu, catégorie) sur tous les postes. Le script PowerShell du dossier partagé est désormais publié avec l'extension et téléchargeable depuis les Paramètres.Couche données v2 (refonte complète)
- Un store par jour (
planv2_<date>) : liste plate d'interventions dédoublonnées par identité stable (requestId > actionId > réf) — la seule source de vérité ; le rendu, le cache local, le dossier partagé et EasyVista n'en sont que des projections ou des sources. - Un seul verdict par intervention (
live / done / suspended / closed / gone / moved / unknown) qui remplace les anciens marqueurs dispersés (ghost, statuts de disparition, diagnostics). - Une seule fusion (modèle vie/mort) utilisée partout : EV↔store, local↔dossier, import. Une vie strictement postérieure à une mort lève les tombstones (réapparition EV autoritaire).
- Dossier partagé : transport natif inchangé (verrous + écriture atomique + compare-and-swap), fichiers v2 dans le sous-dossier
v2du partage — les postes en ancienne version n'interfèrent plus. Ordre des sources refondu : EasyVista s'affiche immédiatement, le dossier habille les cartes sans re-télécharger, le fetch ne traite que ce qui manque, l'enrichissement est repoussé au dossier en fin de chargement. - Les interventions déplacées par l'extension portent un verdict « déplacée » propagé (plus d'analyse inutile), avec fenêtre anti cache-serveur EV.
- Les disparues en attente de verdict restent affichées (grisées, spinner) au lieu de disparaître puis réapparaître.
- Outil réservé à l'auteur (onglet Test) : conversion de l'ancien cache dossier v1 vers le modèle v2, sans modifier les anciens fichiers.
- Les anciens caches (
planning_cache_*) sont purgés au démarrage.
Vue horizontale : nouvelle disposition « échelle de temps exacte »
- Nouvelle option dans Paramètres → Apparence (exclusive avec « Afficher les pauses » : cocher l'une décoche l'autre). La vue par défaut reste inchangée.
- Le bandeau timeline disparaît : chaque intervention/réservation/absence partielle est posée en position réelle sur une bande continue de la plage affichée (position et largeur proportionnelles à l'heure et à la durée).
- Règle des heures fixe en haut (reste collée au défilement), lignes verticales continues sur toute la hauteur du tableau : trait net à chaque heure, pointillé discret aux demi-heures, césure rayée à midi ; les traits passent derrière les bulles et sautent les techniciens absents.
- Ligne rouge « maintenant » continue sur toute la hauteur (jour courant), reposée instantanément à chaque rendu ; elle saute aussi les absents.
- Chevauchements : les éléments qui se recouvrent s'empilent en sous-lignes de même hauteur — la zone du technicien s'agrandit seulement dans ce cas ; tolérance de 10 minutes pour ne pas empiler de simples enchaînements.
- Cartes : fond neutre, le bord gauche porte la couleur de catégorie et sert de poignée (cliquer = fenêtre de modification, glisser = déplacer ; présente sur toutes les cartes, déplacement bloqué pour les faites/clôturées, réservations et absences). Numéro d'intervention en tête, ville + adresse groupées ; cartes étroites : texte compact (ville + fin d'adresse, « Rue de l'Université 5 » → « Université 5 »), jamais vides tant qu'il reste de la place.
- Réservations : affichent sous l'intitulé le lieu renseigné à la création, sinon le nom de la personne qui a réservé.
- Zones libres : survol = « Libre HH:MM–HH:MM » (y compris sur les journées totalement vides), clic droit = Réservation/Absence à l'heure du curseur, dépôt du drag précis (pas de 30 min) avec marqueur vert sur toute la bande.
- Alignement règle/cartes mesuré au pixel réel (indépendant du zoom et de la taille de texte).
Session EasyVista fiabilisée (fin des faux « déconnecté »)
- Cookie réécrit ≠ supprimé : le navigateur émet toujours une « suppression » technique juste avant de reposer un cookie mis à jour — l'extension basculait à tort en « session expirée » à chaque rafraîchissement du PHPSESSID (permission cookies active). Désormais ignoré ; une vraie suppression attend 3 s (relog possible) puis vérifie au serveur avant d'alarmer.
- Expiration sur preuve uniquement : une erreur transitoire (réseau, HTTP 5xx) ne déclenche plus la bannière — seule une preuve le fait (page de login à la sonde, temps restant nul, plus aucun PHPSESSID) ; sinon nouvel essai dans 30 s.
- Onglet EasyVista facultatif avec la permission cookies : le cookie suffit aux requêtes — fermer l'onglet EV ne « perd » plus la session.
- Contre-vérification HTTP : avant de classer un 401/403/404 en « session expirée », l'endpoint d'autorité
session_timeest sondé ; si la session vit, l'erreur est reclassée « EV inaccessible » (transitoire). - Compteur calé sur le serveur : recalage périodique sur la vraie valeur EasyVista (au démarrage, toutes les 90 s, au retour de visibilité), plus de recalage erroné sur l'expiration du cookie ; badge session en direct (MM:SS) avec « Prolonger la session » dans le popup.
Réservations
- Modal enrichie : préréglages Matin/Après-midi/Journée puis heures ; champs n° d'intervention, ville, rue, catégorie ; recherche automatique des informations dans EasyVista à partir du n° (catégorie et localisation pré-remplies).
- Meta persistante et partagée : ces informations survivent aux rafraîchissements (EV ne les stocke pas) et remontent désormais au dossier partagé — tous les postes voient le n°, le lieu et la catégorie d'une réservation, quel que soit le poste qui l'a créée ou modifiée.
- Édition d'une réservation (heures ou infos seules), suppression, tooltip détaillé avec ouverture/copie du n° lié.
Pompier
- Assignations « pompier du mois » : définition par période (bouton Ajouter → Pompier), affichage dans la barre de stats, liste des pompiers actuels/à venir, édition/déplacement de période.
- La bandelette « En pompier du … au … » reste fixée en haut de la carte ; un pompier absent toute la journée est exclu du compteur.
Coordinateur (en développement)
- Badge « Mes actions » dans la barre de stats + onglet dédié listant les interventions où le coordinateur a une action ; outil d'impersonation (réservé à l'auteur) pour tester.
Douchette
- Vraie confirmation EasyVista : l'envoi vérifie le marqueur de prise en compte renvoyé par EV — toast « confirmé par EasyVista » fiable.
- Resynchronisation automatique après un déplacement d'intervention (jour source + jour cible, regroupés si même jour), avec compte-rendu clair et relance possible.
Recherche
- Opérateurs : espace = tous les mots,
%joker,"expression exacte",-motexclusion,tech:/lieu:/ref:/cat:/contact:ciblage de champ. - Pagination 15 par 15 au défilement ; passé replié par défaut ; badge « Jour affiché » ; aide sur la syntaxe.
- Mise en avant stabilisée : « Jour ↗ » navigue et surligne la carte pendant 15 s, survit aux re-rendus, un seul défilement animé.
- La croix d'effacement native du navigateur (en doublon avec celle de l'extension) est masquée.
Interventions & affichage
- Multi-jours : badge pilule (« 📅 ⇢ 16/06 » / « ⇠ 12/06 »), heures d'affichage par jour, période complète au survol, déplacement bloqué (à modifier dans EasyVista).
- Conflit au déplacement : le modal de confirmation signale toute occupation du technicien cible (détail en rouge) et propose le créneau libre le plus proche (même durée) en un bouton.
- Vérification d'adresse : la localisation officielle de la fiche devient l'adresse affichée ; si elle diverge de celle écrite dans l'action, le lieu passe en rouge avec explication au survol (comparaison tolérante ; exception Roll Out).
- Contacts : deux numéros de téléphone dans une action ne sont plus collés à l'affichage (désormais « 021 557 11 62 / 079 172 68 85 ») ; labels de fiche collés au contact séparés proprement.
- Ouverture de fiche : les interventions faites/clôturées se rouvrent à nouveau dans EasyVista (le lien interne est régénéré via la référence).
- Sections Matin / Après-midi / « Journée » harmonisées sur les deux vues ; éléments chevauchant midi non découpés ; catégorie « Autre » en violet foncé (fini le gris confondu avec les cartes faites).
- Interventions « faites » plus ré-analysées à chaque actualisation (économie réseau).
Dossier partagé : script PowerShell publié
- Le script hôte (native messaging) est publié avec cette version et téléchargeable depuis Paramètres → Dossier partagé.
Qualité
- Nettoyage complet : fonctions mortes retirées, aucun doublon de code, tous les journaux passés au logger maison (console propre en production), plus aucun emoji dans les logs, marqueurs de révision internes retirés.
Downloads
- Un store par jour (