Pages: 1
- Sujet précédent - Lizmap : Aide API Lizmap pour la création d'un script js custom - Sujet suivant
#1 Tue 30 July 2024 17:00
- cteyssier
- Juste Inscrit !
- Date d'inscription: 18 Jul 2024
- Messages: 5
Lizmap : Aide API Lizmap pour la création d'un script js custom
Bonjour a tous,
Je suis actuellement en train de modifier un projet que je viens de récupérer après une prise de poste en tant que Géomaticien. Pour ce projet je vais avoir besoin de créer un projet parent qui contient des couches a l'échelle nationale et des projets enfants avec leurs couches respectives. Pour ce faire je vais donc avoir besoin d'appliquer un filtre personnalisé pour chaque projet enfant pour filtrer les couches nationales avec les départements correspondant à chaque région. Après avoir essayé plusieurs solutions la solution qui me parait le plus viable est de créer un script javascript qui va s'exécuter au lancement de la carte pour appliquer le filtre. Cependant n'étant pas un développeur javascript a la base et ne disposant que de la documentation générée automatiquement par Lizmap j'ai beaucoup de mal à comprendre comment le code fonctionne et quel objet je vais devoir manipuler. J'ai trouvé cette fonction sur le github du projet qui a priori fait ce que je veux faire mais pas moyen de la faire fonctionner ni de comprendre sa logique : https://github.com/3liz/lizmap-javascri … _filter.js
Est-ce qu'il y aurait quelqu'un a l'aise avec l'API javascript de Lizmap qui pourrait me donner des pistes pour me débloquer ?
Merci d'avance pour avoir pris le temps de lire,
Corentin
Hors ligne
#2 Tue 30 July 2024 23:12
- Al3+
- Participant actif
- Lieu: Fécamp
- Date d'inscription: 5 Sep 2005
- Messages: 57
Re: Lizmap : Aide API Lizmap pour la création d'un script js custom
Bonsoir,
Si vous optez pour la solution Lizmap, il y a bien plus simple pour atteindre votre objectif.
Je vous invite à consulter la documentation officielle ici :
https://docs.lizmap.com/current/fr/publ … login.html
où vous aurez les explications nécessaires pour mettre en place un filtre "géographique".
Pour la diffusion restreinte des données nominatives du cadastre, j'ai créé un seul projet QGIS dans lequel j'ai une couche me permettant de définir l'emprise autorisée à chaque groupe d'utilisateurs.
Il n'y a donc pas besoin de s'appuyer sur des scripts, certes proposés par 3Liz mais qui commencent à dater.
N'hésitez pas à me recontacter si besoin.
Hors ligne
#3 Wed 31 July 2024 10:09
- cteyssier
- Juste Inscrit !
- Date d'inscription: 18 Jul 2024
- Messages: 5
Re: Lizmap : Aide API Lizmap pour la création d'un script js custom
Bonjour,
Merci pour votre réponse j'aurais quelques questions. Si j'ai bien compris la documentation on parle ici de filtrer des couches en fonction des utilisateurs. Dans le contexte de mon projet je pourrais utiliser cette fonctionnalité en utilisant le tag "all".
Imaginons que je veux filtrer ma couche "commune" qui contient toutes les delimitations géographiques des communes à l'échelle nationale. J'ai donc une couche "commune" dans mon projet parent provenant de ma base Postgresql qui est utilisée dans tous les projets enfants à l'échelle régionale. Je devrais donc créer une colonne par région dans ma table commune qui prendrait la valeur "all" ou NULL en fonction de si je veux l'afficher ou pas ?
Merci encore pour le temps pris à me répondre,
Corentin
Hors ligne
#4 Fri 02 August 2024 15:05
- Al3+
- Participant actif
- Lieu: Fécamp
- Date d'inscription: 5 Sep 2005
- Messages: 57
Re: Lizmap : Aide API Lizmap pour la création d'un script js custom
C'est un peu l'idée mais il n'y a pas besoin de créer un champ par région, et heureusement...
On imagine que vous avez des couches gérées à l'échelon national : les délimitations de communes, les routes, le bâti etc... Ce sont ces couches que vous souhaitez filtrer en fonction des "droits" d'accès de vos utilisateurs.
Vous utilisez une autre couche "filtrante" : celle des régions (ou des départements, je n'ai pas bien compris votre niveau de filtre attendu), dans laquelle vous venez ajouter 1 et 1 seul champ. Ce champ doit alors contenir la liste des "groupes d'utilisateurs" définis dans la gestion des comptes de LizMap.
Vous aurez le choix de lister les groupes ou les utilisateurs, ça va dépendre du nombre de comptes que vous gérez et du nombre d'utilisateurs devant avoir les mêmes droits.
Typiquement, j'ai 33 communes pour lesquelles j'ai créé un groupe spécifique et pour chaque groupe je peux avoir de 1 à n comptes utilisateurs en fonction de la taille de chaque commune.
Ensuite, il vous reste à définir pour chaque couche de votre projet, si elle doit être filtrée ou non (voir en pièce jointe un aperçu de l'interface).
En l'occurrence, mon projet contient plus de 50 couches mais je n'en ai que 3 ou 4 pour lesquelles j'ai besoin de filtrer les données en fonction du périmètre de compétence. De votre côté, il faudra peut-être toutes les ajouter.
Si vous ne proposez que de la consultation de données via l'interface carto, c'est à dire sans passer par les tables attributaires proposées par LizMap, une autre astuce consiste à utiliser le principe de filtre non pas spatial mais attributaire sur une couche "mask".
J'ai utilisé cette astuce sur mon projet ouvert aux communes pour éviter d'avoir à définir toutes les couches 1 par 1 comme étant filtrées.
D'un point de vue performances, c'est peut-être moins bon car dans l'absolu toutes les données sont chargées. Il y a des compromis à faire entre le rendu, la gestion et les temps de réponse...
Hors ligne
#5 Tue 06 August 2024 16:55
- cteyssier
- Juste Inscrit !
- Date d'inscription: 18 Jul 2024
- Messages: 5
Re: Lizmap : Aide API Lizmap pour la création d'un script js custom
Je vois merci beaucoup pour la réponse et le temps pris à expliquer !
Hors ligne
Pages: 1
- Sujet précédent - Lizmap : Aide API Lizmap pour la création d'un script js custom - Sujet suivant