Sysma offline
Make Sysma Offline again
- répo altéo : /var/www/sysma/dev/dev-test-01/sysma-foss
- TOTEST : points importants
- Reste à faire coté front:
- Reste à faire coté back:
- Bugs P1 AR :
- Notes:
- BUG report SR
TOTEST : points importants
-
TOTEST! : A tester en coupant la comm, la carte réseau, le wifi ou équivalent**
-
TOTEST! P1 - test/debug sur cible chrome.
-
TOTEST! TBD quid du comportement du mode offline si sysma ouvert sur plusieurs instance? (ex: ff ouvert et connecté sur 2 sysmas) --> aucun problème pas de mélange des indexedDB
-
TOTEST! TBD quid du comportement du mode offline si ff en nav privé? --> Ne fonctionne pas car indexedDB ne fonctionne pas en navigation privée sur FF
-
TOTEST! P1 - Priorité: passage en mode offline vraiment effectif que quand tout ok et ack par serveur.
ie. on verifie lors du 1er appel server "export dico" que la reponse server soit conforme pour declancher la suite: le offline. On ne check pas encore lors du 2nd appel server: "export layer" si tout est ok.-> Si si tout est fait, TOTEST! : -
TOTEST! P1 - Priorité: retour mode online quoique se passe (TimeOut, error, FAILURE, try/catch etc.). -> Fait, TOTEST!
Reste à faire coté front:
-
ajout bouton/link admin/debug de reset d'indexedDB au cas de pepin lors des beta-tests et plus...
-
P1 modale de re-connection: ajout bouton annulé/perte de donnée sir le user le souhaite
-
P1.1 @alr TODO refreshLayer()
-
P1 @alr dans sysma ONLINE : refaire une passe sur TOUS les "form" ('<form') et lever l'ambiguité entre 'action=..." et "onClick=..."
-
P1.1 les styles des objets créés par le offline est celui du dictionnaire (donc pas celui défini par l'utilisateur)
-
P1.1 le surlignage des polygones et des lignes (à la sélection avec la souris sur la carte) après de la modification du tracé reste sur l'ancienne géométrie.
-
Le bouton de forçage de repassage en ligne en perdant les données est trop gros et permet trop facilement de perdre les données venant du hors-ligne
-
Il arrive que la modale de REsélection des couches à télécharger n'affiche plus rien (si plus logged in par exemple)
-
P2+ suivi dans le temps: pour l'instant il est possible de corriger ou MAJ UNE seul valeur de param en offline. Il faudrait pouvoir conserver une historique en offline et l'uploader au retour en online.
-
P2+ traité/voir le prb des retards/décalages éventuels entre la "base sysma" du offline et la base du server. Ex quid des choix multiples
-
P1.8 supprimer l'objet (cf. bouton rouge dans le fiche correction objet)
-
P1.9 @alr TODO coté back : import des multiple choices
-
P1.4 gerer comportement front en fct des droits du user: flag "access_right" (R/RW) posé par le back sur les properties des 1) featureCollection et 2) des features.
-
P1.9 lors de l'upload des couches vers server -> reselectionner les couches a upload dans la liste les couches contenues dans indexedDB. Cochées pas défaut a minima.
-
P2 creation de objet/params -> mettre la date du jour dans le champs: date d'observation
-
P2 style appliquer au objet: 1) style du dico (ref commune), 2) style de la featureCollection (perso du user), 3) P3 par feature (TBD. cf. @sr "Analyse thématique")
-
P2 Leaflet offline pour le chargement des fond raster
-
P2 boundingBox pour le pre-chargement modique des rasters ET des geojson du layer sysma.
-
test sur la bBox du bassin pour voir le volume de data
-
si pas ok -> demander au user
-
-
P2 Désactiver les features incompatible avec le Offline. Utiliser la fonction js offlineModeIsActive()
-
P3 TBC creer un layer manager leger special offline
-
P3 switch online -> offline : recentrage de la carte a tester?
fait
-
P1.1 recuperer sur la route "/offline-init-data" :
- la liste de layerIds + names
- le sysmaOrgLabel ("ORGANISATION_ACRONYM")
- la listes des orgLabels (les labels des "Structures")
- la listes des statusLabels (les labels des "statut")
-
P1 modifier le tracé, la geometrie de l'object (cf. bouton vert dans le fiche correction objet)
-
P1 pour Alr : En offline -> le bouton refresh ou un F5 du navigateur ne doit pas casser Sysma
-
P1 masquer le bouton offline (on/off) mode déconnecté (sinon cela pose un problème) voir le twig
-
P1 bug: la key "name" de l'objet n'est pas mis dans les properties du geojson à importer. (il faut la key name dans les properties geojson comme pour tous les properties de l'object). C'est à dire: Il faut que dans le premier formulaire objet: toutes les keys doivent etre initialisées avec une valeurs
-
P1 quand on n'est plus connecter (suite à un timeout par ex) -> le mode offline ne doit pas pouvoir etre actif. S'il il l'était, il doit "clear all" (reset en mode online). -> TBD à designer -> note: Not an issue. C'est gérer autrement.
-
nom de la structrure/org affichée à droite.
-
P1 Bug fonction "Recherche" cassé en online @alr. (soupcon prb d'async puisque avec debugger cela fcontionne au ralenti)
-
retirer/masquer les parties 'action' visible sur le layermanager pour zone d'action argi par ex + autres boutons 'analyse'++.
-
P1.9 bouton toggle "correction/MAJ" a mettre que dans le cas: edition des valeurs sur les params suivis dans le temps sinon: bouton correction seulement.
-
Afficher le form création lors de creation nouvel objet sysma
-
Afficher le form modif objet sysma lors de l'ouverture de modif object sysma (ar @alr ok ?)
-
Afficher le form modif parameters d'obj sysma lors de l'ouverture de la fiche objet
-
Bouton type toggle en forme d'icone "connecté / non connecté" en haut à droite
-
lors de mise en mode offline -> ouvrir une modale pour la selection des couches à embarquer et eventuelement la bBox
-
lors de re-mise en mode online -> ouvrir une modale pour confirmation/commit des données vers serveur + log warning si problemes.
-
-
les nouveaux objets doivent etre tagger "offline-status:created" et les objets/params modifiés sont taggés "offline-status:modified"
-
switch online -> offline : clean de indexed db
-
switch online -> offline : retour à la route "/carte" (ne pas rester sur une route object ou autre
Reste à faire coté back:
-
P2 prolonger la session pour le mode offline -> forcer la pose du cookie lors du passage en offline
-
P2 gere comportement front en fct des droits du user: flag "access_right" (R/RW) poser par le back sur les properties des 1) featureCollection et 2) des features.
fait:
-
P1 fix le @$%& de login casser depuis le offline -> cf. sendData...
-
P1 API d'import de geojson pour insert/update des data en DB au retour en mode online
- P1 offline_status=added
-
creer route recup liste thesaurus (fct des droits!) -> /layerIdsNames
-
creer route recup des thesaurus (fct des droits!)
Bugs P1 AR :
-
offline : @srenou trouver une solution pour éviter de pouvoir saisir des choix multiples (Mc) car enregistre en base un array qui posera un pb lors des exports pg... corruption des données.
@ariviere AR :
TOTEST- offline : bouton fermer de la modale lors de transfert echec, ne permet pas de fermer (exemple '01_test_AR' avec choix multiples 0 et 1 cochés).
fait:
-
offline [REGRESSION] : impossible d'ajouter un objet, même de type 'test_sysma_offline' , lors de la saisie des parametres le contenu du volet est blanc,
erreur js on promise
-
offline : parametre boolean enregistré avec les valeurs oui/non et pas 1/0 (exemple 01_test_AR) => pose pb lors de l'export PG
- on line : recherche
- on line : dico bouton assistant création de style sur type d'objet
- on line : supprimer dico supprimer un type d'objet
Notes:
- le geojson donné à Leaflet pour afficher les features provient de deux routes différentes (online=/geojson/objecttype/{objectTypeId} / offline=/geojson/sysmalayer/{objectTypeId}) d'où le fix de la fonction popUp qui attribue les leaflet_id
BUG report SR
Suite à update du 10/02
online
- Pb sur les icones -> "1" apparait au lieu de l'icone (pb déjà rencontré dans une version antérieure)
offline
- PRIO : quand on crée un nouvel objet en offline, il n'apparait pas sur la carte (quelque soit le type de géom) MAIS il est bien enregistré car visible lorsqu'on revient en online.
online
- NON PRIO Conflit de CSS entre bootstap/custom et VueBuild/assets/index.css
- NON PRIO Supprimer le bouton online/offline quand on n'est pas connecté
- objets d'une couche non cliquables après création d'un nouvel objet (-> refeshLayer)
- style non rechargé après modif du style de couche (-> refreshLayer)
offline
- l'acronyme de la structure doit apparaître dans la fiche objet (pas le nom de l'instance)
en offline
en online (comportement attendu)
-
Après modif en hors ligne d'un paramètre d'un objet, quand je repasse en online, j'ai un message "Objet test2-3 (131340) -> Vous n'avez pas les droits de modifier ou créer cet objet" (alors que je les ai), et l'objet est bien modifié. Je n'ai pas ce message quand je modifie l'objet, uniquement quand je modifie un paramètre de l'objet
-
PRIO si je repasse en mode online alors que je n'ai pas de connexion réseau, je perds mes modifs faites offline.
-
PRIO quand on crée un premier objet, nommé "test1" par exemple, puis un deuxième objet, sans nom (nom laissé vide), il est automatiquement nommé "test1"
-
NON PRIO au retour en online, toutes les couches sont décochées même si certaines étaient cochées avant de passer offline. Normalement l'appel du layer manager devrait conserver les couches précédemment cochées.