From 090be4135f8da4f1c8675937f42e68554c09a862 Mon Sep 17 00:00:00 2001 From: 3Liz Bot Date: Wed, 23 Oct 2024 12:32:04 +0000 Subject: [PATCH] Deployed fe5ab8e with MkDocs version: 1.6.1 --- search/search_index.json | 2 +- sitemap.xml | 58 ++++++++++++++++----------------- sitemap.xml.gz | Bin 427 -> 427 bytes talks/index.html | 68 ++++++++++++++++++++++++++++++++++++--- 4 files changed, 94 insertions(+), 34 deletions(-) diff --git a/search/search_index.json b/search/search_index.json index a87911a..b04598a 100644 --- a/search/search_index.json +++ b/search/search_index.json @@ -1 +1 @@ -{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"3Liz","text":"

3Liz documentation about :

"},{"location":"links/","title":"Links","text":""},{"location":"lizmap-i18n-stats/","title":"Lizmap i18n stats","text":"

Tip

Translations are available on Transifex, no development knowledge is required.

These statistics are about the Lizmap Web Client application only, for the two current maintained branches and the next major version combined.

Statistics updated: 2024-10-02

Number of strings Number of target languages Overall Translation ratio 3878 29 50.07 Language Translation ratio (%) French \ud83c\uddeb\ud83c\uddf7

100.0

Czech \ud83c\udde8\ud83c\uddff

99.95

Romanian \ud83c\uddf7\ud83c\uddf4

99.95

Portuguese \ud83c\uddf5\ud83c\uddf9

99.07

Italian \ud83c\uddee\ud83c\uddf9

94.79

Polish (Poland) \ud83c\uddf5\ud83c\uddf1

84.61

Dutch \ud83c\uddf3\ud83c\uddf1

82.13

Japanese \ud83c\uddef\ud83c\uddf5

72.38

Ukrainian (Ukraine) \ud83c\uddfa\ud83c\udde6

68.18

Russian \ud83c\uddf7\ud83c\uddfa

68.0

German \ud83c\udde9\ud83c\uddea

63.74

Galician

61.6

Slovak \ud83c\uddf8\ud83c\uddf0

59.03

Portuguese (Brazil) \ud83c\udde7\ud83c\uddf7

53.22

Swedish (Sweden) \ud83c\uddf8\ud83c\uddea

53.09

Spanish \ud83c\uddea\ud83c\uddf8

52.27

Slovenian \ud83c\uddf8\ud83c\uddee

47.5

Hungarian (Hungary) \ud83c\udded\ud83c\uddfa

46.13

Finnish \ud83c\uddeb\ud83c\uddee

43.12

Basque

30.4

Greek \ud83c\uddec\ud83c\uddf7

24.6

Bulgarian \ud83c\udde7\ud83c\uddec

22.41

Norwegian \ud83c\uddf3\ud83c\uddf4

15.6

Spanish (Argentina) \ud83c\udde6\ud83c\uddf7

5.08

Indonesian \ud83c\uddee\ud83c\udde9

4.05

Serbian (Cyrillic) \ud83c\uddf7\ud83c\uddf8

1.13

Arabic

0.0

Basque (Spain)

0.0

Vietnamese (Viet Nam)

0.0

"},{"location":"lizmap/","title":"Lizmap Web Client","text":"

Visit the main dedicated website for the Lizmap documentation.

"},{"location":"lizmap/#module","title":"Module","text":"

Additional modules can be added on top of Lizmap

"},{"location":"lizmap/#french-use-cases","title":"French use cases","text":""},{"location":"lizmap/#api-documentation","title":"API documentation","text":""},{"location":"lizmap/#translations","title":"Translations","text":"

Tip

Translations are available on Transifex, no development knowledge is required.

These statistics are about the Lizmap Web Client application only, for the two current maintained branches and the next major version combined.

Statistics updated: 2024-10-02

Number of strings Number of target languages Overall Translation ratio 3878 29 50.07 Language Translation ratio (%) French \ud83c\uddeb\ud83c\uddf7

100.0

Czech \ud83c\udde8\ud83c\uddff

99.95

Romanian \ud83c\uddf7\ud83c\uddf4

99.95

Portuguese \ud83c\uddf5\ud83c\uddf9

99.07

Italian \ud83c\uddee\ud83c\uddf9

94.79

Polish (Poland) \ud83c\uddf5\ud83c\uddf1

84.61

Dutch \ud83c\uddf3\ud83c\uddf1

82.13

Japanese \ud83c\uddef\ud83c\uddf5

72.38

Ukrainian (Ukraine) \ud83c\uddfa\ud83c\udde6

68.18

Russian \ud83c\uddf7\ud83c\uddfa

68.0

German \ud83c\udde9\ud83c\uddea

63.74

Galician

61.6

Slovak \ud83c\uddf8\ud83c\uddf0

59.03

Portuguese (Brazil) \ud83c\udde7\ud83c\uddf7

53.22

Swedish (Sweden) \ud83c\uddf8\ud83c\uddea

53.09

Spanish \ud83c\uddea\ud83c\uddf8

52.27

Slovenian \ud83c\uddf8\ud83c\uddee

47.5

Hungarian (Hungary) \ud83c\udded\ud83c\uddfa

46.13

Finnish \ud83c\uddeb\ud83c\uddee

43.12

Basque

30.4

Greek \ud83c\uddec\ud83c\uddf7

24.6

Bulgarian \ud83c\udde7\ud83c\uddec

22.41

Norwegian \ud83c\uddf3\ud83c\uddf4

15.6

Spanish (Argentina) \ud83c\udde6\ud83c\uddf7

5.08

Indonesian \ud83c\uddee\ud83c\udde9

4.05

Serbian (Cyrillic) \ud83c\uddf7\ud83c\uddf8

1.13

Arabic

0.0

Basque (Spain)

0.0

Vietnamese (Viet Nam)

0.0

"},{"location":"plugins/","title":"QGIS Plugins","text":"

Some plugins are available on https://plugins.qgis.org.

Most of our plugins are available on our own custom repository https://docs.3liz.org/plugins.xml. You need to follow the tutorial how to add a custom repository.

"},{"location":"plugins/#desktop","title":"Desktop","text":""},{"location":"plugins/#server","title":"Server","text":"

To manage plugins on a server, you can use QGIS-Plugin-Manager.

For managing the plugins.xml, you can use QGIS-Plugin-Repo.

"},{"location":"talks/","title":"Talks and presentations","text":""},{"location":"talks/#lizmap","title":"Lizmap","text":""},{"location":"talks/#openstreetmap","title":"OpenStreetMap","text":""},{"location":"talks/#qgis-desktop","title":"QGIS Desktop","text":""},{"location":"talks/#qgis-server","title":"QGIS Server","text":""},{"location":"talks/#pgmetadata","title":"PgMetadata","text":""},{"location":"talks/#french-cadastre","title":"French Cadastre","text":""},{"location":"tools/","title":"Tools","text":""},{"location":"tools/#rust","title":"Rust","text":""},{"location":"internships/gsoc/","title":"Google Summer Of Code","text":"

These are the things we would like a GSOC student to dabble with. Get in touch with info@3liz.com if interested.

"},{"location":"internships/gsoc/#javascript-refactoring-in-order-to-add-code-coverage","title":"Javascript refactoring in order to add code coverage.","text":"

Our current front-end code, mostly written ins Javascript is not easily testable. We would like to refactor this code and add has many tests as possible. You'll need to understand how Lizmap works in order to complete the subject. This is mostly about javascript, testing and tools to make it happen.

"},{"location":"internships/gsoc/#add-sso-support","title":"Add SSO support","text":"

We would like to have the ability to use lizmap with SSO providers like okta, Auth0 ... This project is about working with our backend library Jelix ( see https://jelix.org) and our front-end code in order to bring the code architecture to have the possibility to use SSO when connecting to lizmap. This will require PHP and javascript skills. In order to make the necessary changes in our code base in order to bring one provider and make it easy to add SSO providers.

"},{"location":"tutorial/","title":"Tutorials","text":"

You can find either French or English some tutorials :

"},{"location":"tutorial/filezilla-en/","title":"Filezilla","text":""},{"location":"tutorial/filezilla-en/#installation","title":"Installation","text":""},{"location":"tutorial/filezilla-en/#register-a-lizmap-ftp-server","title":"Register a Lizmap FTP server","text":"

Note, it's possible to synchronize the navigation between the local directory and the remote directory in the Advanced tab. You need to fill the local and remote paths and also toggle the two checkboxes in the tab.

"},{"location":"tutorial/filezilla-en/#file-tree","title":"File tree","text":"

On the server, always in the qgis, we are going to create directories which will be a Lizmap theme.

Then, in your Lizmap panel administration, you need to add the directory.

For instance :

/\n\u251c\u2500\u2500 qgis\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 forest\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs.cfg\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 media\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0     \u2514\u2500\u2500 logo.png\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 social\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 urban\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs.cfg\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 urban_project.qgs\n\u2502\u00a0\u00a0     \u2514\u2500\u2500 urban_project.qgs.cfg\n\u2514\u2500\u2500 web\n
"},{"location":"tutorial/filezilla-fr/","title":"Filezilla","text":""},{"location":"tutorial/filezilla-fr/#installation","title":"Installation","text":""},{"location":"tutorial/filezilla-fr/#enregistrement-de-votre-serveur-lizmap","title":"Enregistrement de votre serveur Lizmap","text":"

Note, il est possible de synchroniser la navigation dans l'onglet Avanc\u00e9. Vous devez compl\u00e9ter les chemins locaux et distants ainsi que cocher les deux cases \u00e0 cocher dans cet onglet.

"},{"location":"tutorial/filezilla-fr/#arborescence-par-defaut","title":"Arborescence par d\u00e9faut","text":"

Sur le serveur, toujours dans le dossier qgis, nous allons cr\u00e9er des r\u00e9pertoires qui seront vos th\u00e9matiques Lizmap.

Ensuite, dans votre panneau d'administration Lizmap, vous devez ajouter ce r\u00e9pertoire.

Par exemple :

/\n\u251c\u2500\u2500 qgis\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 forest\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs.cfg\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 media\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0     \u2514\u2500\u2500 logo.png\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 social\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 urban\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs.cfg\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 urban_project.qgs\n\u2502\u00a0\u00a0     \u2514\u2500\u2500 urban_project.qgs.cfg\n\u2514\u2500\u2500 web\n
"},{"location":"tutorial/qgis-repository-en/","title":"Add a custom QGIS plugin repository","text":""},{"location":"tutorial/qgis-repository-en/#add-the-repository","title":"Add the repository","text":"

You need to go in the plugin manager :

Then, go in the Settings tab.

"},{"location":"tutorial/qgis-repository-en/#add-the-authentification","title":"Add the authentification","text":"

The plugin might be protected by a login/password.

In the dialog below, click Edit in the Authentification section.

By default, you will have No Authentification. Click the + icon to create one.

Warning

If it's the first time that you are using the password manager in QGIS, it will ask you to set the master password. It's a password that you must set with your own password. It will be used to unlock the password database. If you forget it, it's not possible to recover this password.

"},{"location":"tutorial/qgis-repository-fr/","title":"Ajouter un d\u00e9p\u00f4t personnalis\u00e9 d'extensions QGIS","text":""},{"location":"tutorial/qgis-repository-fr/#ajouter-le-depot","title":"Ajouter le d\u00e9p\u00f4t","text":"

Il faut se rendre dans le gestionnaire des extensions.

Ensuite, aller dans l'onglet Param\u00e8tres.

"},{"location":"tutorial/qgis-repository-fr/#ajouter-une-authentification","title":"Ajouter une authentification","text":"

L'extension peut \u00eatre prot\u00e9g\u00e9e par un nom d'utilisateur/mot de passe.

Dans le dialogue suivant, cliquer \u00c9diter dans la ligne Authentification.

Par d\u00e9faut, vous allez obtenir Pas d'authentification. Cliquer sur l'ic\u00f4ne + pour en cr\u00e9er une.

Warning

Si c'est la premi\u00e8re fois que vous utilisez le gestionnaire de mot de passe de QGIS, il vous demandera de d\u00e9finir le mot de passe principal. Il s'agit d'un mot de passe que vous devez d\u00e9finir, avec votre propre mot de passe. Il servira \u00e0 d\u00e9verrouiller la base de donn\u00e9es des mots de passes. En cas d'oubli, ce mot de passe n'est pas r\u00e9cup\u00e9rable.

QGIS va remplir avec une cha\u00eene al\u00e9atoire le jeton d'authentification pour acc\u00e9der au d\u00e9p\u00f4t. Vous pouvez d\u00e9sormais re-suivre la section pr\u00e9c\u00e9dente afin de recharger les d\u00e9p\u00f4ts.

"},{"location":"tutorial/resources-sharing-en/","title":"QGIS Resources sharing","text":""},{"location":"tutorial/resources-sharing-en/#plugin-installation","title":"Plugin installation","text":"

The full documentation about the plugin is available online.

"},{"location":"tutorial/resources-sharing-en/#add-the-3liz-repository","title":"Add the 3Liz repository","text":"

Finally, in your menu Processing \u27a1 Toolbox of QGIS, you should see some new Processing scripts, for instance Scripts \u27a1 Lizmap \u27a1 Set color field value with feature symbol main colour.

"},{"location":"tutorial/resources-sharing-fr/","title":"QGIS Resources sharing","text":""},{"location":"tutorial/resources-sharing-fr/#installation-de-lextension","title":"Installation de l'extension","text":"

La documentation compl\u00e8te de cette extension est disponible en ligne.

"},{"location":"tutorial/resources-sharing-fr/#ajout-de-depot-3liz","title":"Ajout de d\u00e9p\u00f4t 3Liz","text":"

Dans votre menu Traitements \u27a1 Bo\u00eete \u00e0 outils de QGIS, vous devriez avoir des scripts Processing d\u00e9sormais, par exemple Scripts \u27a1 Lizmap \u27a1 Set color field value with feature symbol main colour.

"},{"location":"tutorial/winscp-en/","title":"WinSCP","text":""},{"location":"tutorial/winscp-en/#installation","title":"Installation","text":""},{"location":"tutorial/winscp-en/#register-your-lizmap-server","title":"Register your Lizmap server","text":" "},{"location":"tutorial/winscp-en/#file-tree","title":"File tree","text":"

On the server, always in the qgis, we are going to create directories which will be a Lizmap theme.

Then, in your Lizmap panel administration, you need to add the directory.

For instance :

/\n\u251c\u2500\u2500 qgis\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 forest\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs.cfg\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 media\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0     \u2514\u2500\u2500 logo.png\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 social\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 urban\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs.cfg\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 urban_project.qgs\n\u2502\u00a0\u00a0     \u2514\u2500\u2500 urban_project.qgs.cfg\n\u2514\u2500\u2500 web\n
"},{"location":"tutorial/winscp-fr/","title":"WinSCP","text":""},{"location":"tutorial/winscp-fr/#installation","title":"Installation","text":""},{"location":"tutorial/winscp-fr/#enregistrement-de-votre-serveur-lizmap","title":"Enregistrement de votre serveur Lizmap","text":" "},{"location":"tutorial/winscp-fr/#arborescence-par-defaut","title":"Arborescence par d\u00e9faut","text":"

Sur le serveur, toujours dans le dossier qgis, nous allons cr\u00e9er des r\u00e9pertoires qui seront vos th\u00e9matiques Lizmap.

Ensuite, dans votre panneau d'administration Lizmap, vous devez ajouter ce r\u00e9pertoire.

Par exemple :

/\n\u251c\u2500\u2500 qgis\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 forest\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs.cfg\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 media\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0     \u2514\u2500\u2500 logo.png\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 social\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 urban\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs.cfg\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 urban_project.qgs\n\u2502\u00a0\u00a0     \u2514\u2500\u2500 urban_project.qgs.cfg\n\u2514\u2500\u2500 web\n
"},{"location":"workshop/actions/","title":"Actions","text":"

Nous allons cr\u00e9er une action permettant de connaitre la distance entre un logement et la borne incendie la plus proche. Nous nous r\u00e9fererons \u00e0 la documentation pour la cr\u00e9ation d'actions.

"},{"location":"workshop/actions/#sql","title":"SQL","text":"

Commen\u00e7ons par cr\u00e9er une table de bornes incendie :

SET SEARCH_PATH = votre_schema;\nCREATE TABLE IF NOT EXISTS bornes_incendie\n(\n    id SERIAL PRIMARY KEY,\n    geom geometry(Point,2154)\n);\n\nCREATE INDEX ON bornes_incendie USING GIST (geom);\n
"},{"location":"workshop/actions/#proprietes-du-projet","title":"Propri\u00e9t\u00e9s du projet","text":""},{"location":"workshop/actions/#exercice","title":"Exercice","text":"

En vous inspirant de la documenation, cr\u00e9er le SQL ainsi que le JSON de l'action. Celle-ci doit :

"},{"location":"workshop/actions/#solution","title":"Solution","text":"SQL de l'action JSON de l'action
[\n    {\n        \"name\": \"plus_proche_borne_incendie\",\n        \"title\": \"Trouver la plus proche borne \u00e0 incendie de ce logement\",\n        \"scope\": \"feature\",\n        \"layers\" : [\n            \"logement_47b4d824_19f3_40a6_95ac_c144f8e53562\"\n        ],\n        \"icon\": \"icon-resize-small\",\n        \"options\": {},\n        \"style\": {\n            \"graphicName\": \"circle\",\n            \"pointRadius\": 6,\n            \"fill\": true,\n            \"fillColor\": \"lightred\",\n            \"fillOpacity\": 0.3,\n            \"stroke\": true,\n            \"strokeWidth\": 4,\n            \"strokeColor\": \"red\",\n            \"strokeOpacity\": 0.8\n        },\n        \"callbacks\": [\n            {\"method\": \"zoom\"},\n            {\"method\": \"select\", \"layerId\": \"bornes_incendie_7e4f3577_4c55_4351_8949_a4359ae05340\"}\n        ]\n    }\n]\n
"},{"location":"workshop/edition/","title":"\u00c9dition","text":"

Nous allons faire un petit mod\u00e8le de donn\u00e9es pour recenser des logements.

Nous pourrons voir \u00e0 travers cet exemple diff\u00e9rent aspect de Lizmap.

classDiagram class logement{ id serial PK adresse text not null code_insee text type text not null nb_pieces int besoin_renov boolean pmr boolean not null fiche_web text photo text, date_construction date, date_revision_fiche date default now() geom Point EPSG:2154 } class agents{ id serial PK nom text not null } class etat_des_lieux{ id serial PK id_logement int not null id_agent int not null date date not null photo text } logement -- etat_des_lieux agents -- etat_des_lieux"},{"location":"workshop/edition/#sql","title":"SQL","text":"

Commen\u00e7ons par cr\u00e9er les tables.

DROP SCHEMA IF EXISTS z_formation CASCADE;\nCREATE SCHEMA z_formation;\n
Afficher les solutions
CREATE TABLE z_formation.logement (\n    id SERIAL PRIMARY KEY,\n    adresse TEXT NOT NULL,\n    code_insee text,\n    type TEXT NOT NULL,\n    nb_pieces INTEGER,\n    besoin_renov boolean,\n    pmr boolean NOT NULL,\n    fiche_web TEXT,\n    photo TEXT,\n    date_construction DATE,\n    date_revision_fiche DATE,\n    geom Geometry(Point, 2154)\n);\nCREATE TABLE z_formation.agents\n(\n    id SERIAL PRIMARY KEY,\n    nom TEXT NOT NULL\n);\n\nCREATE TABLE z_formation.etat_des_lieux\n(\n    id SERIAL PRIMARY KEY,\n    id_logement INTEGER NOT NULL,\n    id_agent INTEGER NOT NULL,\n    date TIMESTAMP NOT NULL,\n    photo TEXT,\n    FOREIGN KEY (id_logement) REFERENCES z_formation.logement(id),\n    FOREIGN KEY (id_agent) REFERENCES z_formation.agents(id)\n);\n

N'oublions pas l'index spatial

CREATE INDEX ON z_formation.logement USING GIST (geom);\n

Info

Pour profiter pleinement de cette excerice, vous devez avoir une couche des communes avec les codes INSEE dans votre projet \u00e9galement. Cette couche ne doit pas n\u00e9cessairement \u00eatre dans la base PostgreSQL, car on n'\u00e9dite pas la couche des communes en ligne.

"},{"location":"workshop/edition/#proprietes-du-projet","title":"Propri\u00e9t\u00e9s du projet","text":""},{"location":"workshop/edition/#formulaire-logement","title":"Formulaire logement","text":"

Tip

Regarder uniquement le formulaire dans QGIS bureautique dans un premier temps, pendant les diff\u00e9rentes \u00e9tapes, en ouvrant une session d'\u00e9dition.

Tip

Nous n'avons pas besoin du champ id pour nos utilisateurs lors d'une \u00e9dition. C'est une information interne. Nous pouvons donc le supprimer.

"},{"location":"workshop/edition/#parametrage-des-outils-pour-les-champs","title":"Param\u00e9trage des \"outils\" pour les champs","text":"

Pour l'ensemble des champs, nous allons configurer les Type d'outil ainsi que les contraintes si n\u00e9cessaire.

Nous allons utiliser la documentation Lizmap sur les formulaires avanc\u00e9s.

Tip

On remarque que QGIS d\u00e9tecte les contraintes des champs qui sont en base de donn\u00e9es. Mais on peut personnaliser les messages d'erreurs.

Tip

Concernant l'expression de contrainte, QGIS va l'ex\u00e9cuter et va v\u00e9rifier si l'expression renvoi une valeur bool\u00e9enne si la saisie est valide ou non.

Warning

Le support complet des expressions est un sujet complexe et non termin\u00e9. Il y a plein de diff\u00e9rents contextes pour l'\u00e9valuation des expressions, voir le ticket GitHub.

L'\u00e9valuation d'une expression lors d'une MAJ de l'entit\u00e9 ne peut pas se faire via une expression QGIS. Il faut utiliser un trigger

"},{"location":"workshop/edition/#utilisation-des-popups-avec-la-relation","title":"Utilisation des popups avec la relation","text":"

Nous pouvons activer :

"},{"location":"workshop/edition/#edition-des-tables-filles","title":"\u00c9dition des tables filles","text":"

Pour permettre l'ajout des \u00e9tats des lieux, il faut :

"},{"location":"workshop/edition/#quelques-solutions","title":"Quelques solutions","text":"V\u00e9rifier qu'un champ n'est ni NULL ni une cha\u00eene vide

\"adresse\" IS NOT NULL AND \"adresse\" <> ''

V\u00e9rifier que la cha\u00eene commence par http

left(\"fiche_web\", 4) = 'http'

Sinon, avec regex101, une regexp possible: (http|https):\\/\\/([\\w-]+(\\.[\\w-]+)+)

"},{"location":"workshop/edition/#continuer-plus-loin","title":"Continuer plus loin","text":"

On peut continuer plus loin avec l'utilisation de la dataviz, par exemple pour afficher dans les informations d'une commune la r\u00e9partition des types de logements.

"},{"location":"workshop/lizmap-short-english/","title":"Workshop Lizmap","text":""},{"location":"workshop/lizmap-short-english/#pre-requirements","title":"Pre-requirements","text":"

This workshop is designed for QGIS users.

"},{"location":"workshop/lizmap-short-english/#qgis-uc-2024","title":"QGIS UC 2024","text":"

Presentations talking about QGIS Server and Lizmap during this QGIS UC from 3Liz :

"},{"location":"workshop/lizmap-short-english/#links","title":"Links","text":""},{"location":"workshop/lizmap-short-english/#documentation","title":"Documentation","text":""},{"location":"workshop/lizmap-short-english/#setting-up-the-training","title":"Setting up the training","text":"

Warning

QGIS might ask you to set up a master password. This password belongs to you and is not linked to Lizmap. It's to lock your internal QGIS password manager.

Question

Is-it \ud83d\udc4d or something else ?

Info

This workshop was designed for 3 hours, so some steps in the QGIS downloaded project are already.

"},{"location":"workshop/lizmap-short-english/#first-quick-map","title":"First quick map","text":"

Tip

Bonus if you have a small PNG picture called name_of_project.qgs.png to replace the default project thumbnail. It works as well with jpg, jpeg files.

"},{"location":"workshop/lizmap-short-english/#quick-overview-of-the-lizmap-web-interface","title":"Quick overview of the Lizmap web interface","text":""},{"location":"workshop/lizmap-short-english/#legend","title":"Legend","text":"

Success

Lizmap is using QGIS Server in the background, the legend is, therefore, the same as in QGIS Desktop.

Some settings in the QGIS project or in the Lizmap plugin can have effects in the web interface.

"},{"location":"workshop/lizmap-short-english/#attribute-table","title":"Attribute table","text":"

Tip

We can improve our attribute table by adding some alias on the fields :

Tip

Two new tools appeared in Lizmap Web Client : Attribute table as expected, but also Selection. Let's have a look.

"},{"location":"workshop/lizmap-short-english/#lets-identify-the-feature-by-clicking","title":"Let's identify the feature by clicking","text":"

Tip

The automatic popup will use alias if available on the layer.

These QGIS popups are powerful with the use of QGIS expressions. \ud83d\ude80

"},{"location":"workshop/lizmap-short-english/#with-some-expressions-inside","title":"With some expressions inside","text":"

You can use expressions :

Display solutions "},{"location":"workshop/lizmap-short-english/#editing-capabilities-on-a-layer","title":"Editing capabilities on a layer","text":"

We want now to enable editing capabilities on a layer in the Lizmap interface, to let some users add some observations.

Tip

We can use QGIS Expressions in the form (visibility, conditions, default value etc.). Read the documentation.

"},{"location":"workshop/lizmap-short-english/#pdf-print","title":"PDF Print","text":""},{"location":"workshop/lizmap-short-english/#extent-chosen-by-the-user","title":"Extent chosen by the user","text":"

Success

In this case, the user is choosing the area of interest

"},{"location":"workshop/lizmap-short-english/#from-a-popup-extent-defined-by-the-feature","title":"From a popup, extent defined by the feature","text":"

Success

While in this situation, the PDF is linked to a feature.

"},{"location":"workshop/lizmap-short-english/#dataviz","title":"Dataviz","text":""},{"location":"workshop/lizmap-short-english/#bar-chart","title":"Bar chart","text":""},{"location":"workshop/lizmap-short-english/#pie-chart","title":"Pie chart","text":"
relation_aggregate(\n    relation:='observation_fk_id_person_fkey',\n    aggregate:='count',\n    expression:=\"id\"\n)\n
"},{"location":"workshop/lizmap-short-english/#advanced-filtered-plot","title":"Advanced filtered plot","text":"

For now, it's only charts at the layer level. It's possible to make charts for a given feature, for instance for a given \"watcher\", to know his own observations. You can watch the animated GIF at the bottom to understand the expected output, in the \"Final result\".

Tip

Watch the video tutorial about the filtered plot.

attribute(get_feature('species_aa247cf3_58c8_4852_8ada_1d707a593cfe', 'id', \"fk_id_specie\"),'es_nom_commun')\n

Final result

Thanks \ud83d\ude0e

"},{"location":"workshop/workshop/","title":"Workshops","text":""},{"location":"workshop/workshop/#lizmap","title":"Lizmap","text":""},{"location":"workshop/fr/lizmap-short-01-intro/","title":"Atelier Lizmap","text":""},{"location":"workshop/fr/lizmap-short-01-intro/#pre-requis","title":"Pr\u00e9-requis","text":"

Cet atelier concerne les utilisateurs de l'atelier Lizmap sur 1/2 journ\u00e9e.

"},{"location":"workshop/fr/lizmap-short-01-intro/#liens","title":"Liens","text":""},{"location":"workshop/fr/lizmap-short-01-intro/#documentation","title":"Documentation","text":"

Commen\u00e7ons enfin le TP en publiant notre premi\u00e8re carte \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-02-first-map/","title":"Premi\u00e8re publication rapide","text":"

Nous allons publier le projet QGIS qui se trouve dans l'email afin de faire notre premi\u00e8re carte visualisable sur internet.

"},{"location":"workshop/fr/lizmap-short-02-first-map/#extension-lizmap","title":"Extension Lizmap","text":""},{"location":"workshop/fr/lizmap-short-02-first-map/#manipulation-dans-qgis","title":"Manipulation dans QGIS","text":"

Tip

Bonus si vous avez une petite image PNG qui se nomme nom_du_projet.qgs.png pour remplacer l'image du projet par d\u00e9faut. Vous pouvez regarder l'aide dans l'extension Lizmap \u2192 Options de la carte pour avoir de l'aide sur la vignette. Il faut mettre cette image \u00e0 c\u00f4t\u00e9 de votre fichier nom_du_projet.qgs. L'image peut-\u00eatre jpeg aussi.

"},{"location":"workshop/fr/lizmap-short-02-first-map/#prendre-en-main-linterface-web-lizmap","title":"Prendre en main l'interface web Lizmap","text":"

Warning

Seul un participant va faire la manipulation suivante afin de publier le dossier avec l'ensemble des projets QGIS.

Success

Dans votre l\u00e9gende Lizmap, si vous pouvez voir vos couches et les afficher, c'est que \u00e7a marche !

Nous allons d\u00e9sormais personnaliser l'affichage de nos couches, par exemple afficher certaines couches par d\u00e9faut \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-03-legend/","title":"L\u00e9gende","text":"

** Note, je ne vais plus utiliser le groupe hidden.

Success

Lizmap utilise QGIS Serveur en arri\u00e8re-plan, la l\u00e9gende est donc identique que sur QGIS Bureautique.

Certaines configurations dans le projet QGIS ou dans l'extension Lizmap ont un impact dans l'interface web.

Tip

\u00c0 partir de maintenant, envoyez souvent les donn\u00e9es sur le serveur pour voir les modifications.

Rendons notre carte \"interactif\" pour r\u00e9pondre au clic sur la carte avec l'usage des popups \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-04-popups/","title":"Interactions au clic","text":"

D\u00e9couvrons le principe des popups automatiques et Infobulle QGIS.

"},{"location":"workshop/fr/lizmap-short-04-popups/#automatique","title":"Automatique","text":""},{"location":"workshop/fr/lizmap-short-04-popups/#infobulle-qgis","title":"Infobulle QGIS","text":"

Tip

Dans QGIS \u27a1 Vue \u27a1 Panneaux \u2192 Aper\u00e7u HTML Lizmap pour afficher directement dans QGIS bureautique. Vous devez s\u00e9lectionner aussi l'outil infobulle dans la barre d'outils.

Ces informations avec les infobulles QGIS sont tr\u00e8s puissantes gr\u00e2ce \u00e0 l'utilisation des expressions QGIS \ud83d\ude80

"},{"location":"workshop/fr/lizmap-short-04-popups/#personnalisation-de-linfobulle","title":"Personnalisation de l'infobulle","text":"

Tip

On peut facilement supprimer un champ du rendu HTML en supprimant l'ensemble d'un bloc <tr>...</tr>.

On peut aussi utiliser des expressions QGIS :

Afficher les solutions

Success

Les expressions QGIS sont vraiment puissantes pour dynamiser du contenu.

Nous allons voir comment publier la table attributaire d'une couche \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-05-attribute-table/","title":"Table attributaire","text":"

Tip

On peut am\u00e9liorer le visuel de notre table attributaire en ajoutant des alias sur nos champs :

Ces alias sont aussi pr\u00e9sent dans la popup Automatique ou lors de la g\u00e9n\u00e9ration du HTML !

Success

Pour ceux qui ont le temps, vous pouvez aussi regarder les outils de s\u00e9lection.

Passons \u00e0 la prochaine \u00e9tape, l'\u00e9dition d'une couche directement depuis l'interface web \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-06-editing/","title":"\u00c9dition d'une couche","text":"

On souhaite d\u00e9sormais rendre \u00e9ditable une couche depuis l'interface web afin de pouvoir ajouter des observations.

Success

On peut utiliser des expressions QGIS dans les formulaires (visibilit\u00e9, conditions, valeurs par d\u00e9faut etc). Lire la documentation.

Tip

En l'absence de couches PostgreSQL pour cette formation, on peut voir le projet d\u00e9j\u00e0 fait.

D\u00e9sormais, on souhaite pouvoir proposer des exports PDF, avec ou sans atlas dans notre projet \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-07-print/","title":"Impression PDF","text":""},{"location":"workshop/fr/lizmap-short-07-print/#choix-de-la-zone-dimpression-par-lutilisateur","title":"Choix de la zone d'impression par l'utilisateur","text":"

Success

Dans ce cas-l\u00e0, c'est l'utilisateur qui choisit ce qu'il souhaite imprimer en PDF.

Warning

Probl\u00e8me avec QGIS \u2265 3.34, temporaire, le texte dynamique ne fonctionne plus \ud83d\ude14 Nous sommes sur un correctif, patience \u23f0

"},{"location":"workshop/fr/lizmap-short-07-print/#apres-un-clic-sur-la-carte-liee-a-une-entite","title":"Apr\u00e8s un clic sur la carte, li\u00e9e \u00e0 une entit\u00e9","text":"

Success

Alors que dans ce cas-l\u00e0, le PDF est li\u00e9 \u00e0 une entit\u00e9 pr\u00e9cise, en haut de sa popup.

Passons \u00e0 la derni\u00e8re partie, l'ajout de graphiques dans notre projet \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-08-dataviz/","title":"Dataviz","text":""},{"location":"workshop/fr/lizmap-short-08-dataviz/#diagramme-en-bar","title":"Diagramme en bar","text":""},{"location":"workshop/fr/lizmap-short-08-dataviz/#camembert","title":"Camembert","text":"
relation_aggregate(\n    relation:='observation_fk_id_person_fkey',\n    aggregate:='count',\n    expression:=\"id\"\n)\n
"},{"location":"workshop/fr/lizmap-short-08-dataviz/#filtrage-sur-les-graphiques","title":"Filtrage sur les graphiques","text":"

Pour le moment, ce sont des graphiques montrant une couche enti\u00e8re. Il est possible de faire des graphiques pour une entit\u00e9 pr\u00e9cise, par exemple, la r\u00e9partition des esp\u00e8ces pour un observateur.

attribute(get_feature('species_aa247cf3_58c8_4852_8ada_1d707a593cfe', 'id', \"fk_id_specie\"),'es_nom_commun')\n

R\u00e9sultat final

Success

Pour les curieux, je vous recommande le tutoriel vid\u00e9o sur les relations entre les couches et la dataviz.

Merci de votre attention \ud83d\ude0e

"}]} \ No newline at end of file +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"3Liz","text":"

3Liz documentation about :

"},{"location":"links/","title":"Links","text":""},{"location":"lizmap-i18n-stats/","title":"Lizmap i18n stats","text":"

Tip

Translations are available on Transifex, no development knowledge is required.

These statistics are about the Lizmap Web Client application only, for the two current maintained branches and the next major version combined.

Statistics updated: 2024-10-02

Number of strings Number of target languages Overall Translation ratio 3878 29 50.07 Language Translation ratio (%) French \ud83c\uddeb\ud83c\uddf7

100.0

Czech \ud83c\udde8\ud83c\uddff

99.95

Romanian \ud83c\uddf7\ud83c\uddf4

99.95

Portuguese \ud83c\uddf5\ud83c\uddf9

99.07

Italian \ud83c\uddee\ud83c\uddf9

94.79

Polish (Poland) \ud83c\uddf5\ud83c\uddf1

84.61

Dutch \ud83c\uddf3\ud83c\uddf1

82.13

Japanese \ud83c\uddef\ud83c\uddf5

72.38

Ukrainian (Ukraine) \ud83c\uddfa\ud83c\udde6

68.18

Russian \ud83c\uddf7\ud83c\uddfa

68.0

German \ud83c\udde9\ud83c\uddea

63.74

Galician

61.6

Slovak \ud83c\uddf8\ud83c\uddf0

59.03

Portuguese (Brazil) \ud83c\udde7\ud83c\uddf7

53.22

Swedish (Sweden) \ud83c\uddf8\ud83c\uddea

53.09

Spanish \ud83c\uddea\ud83c\uddf8

52.27

Slovenian \ud83c\uddf8\ud83c\uddee

47.5

Hungarian (Hungary) \ud83c\udded\ud83c\uddfa

46.13

Finnish \ud83c\uddeb\ud83c\uddee

43.12

Basque

30.4

Greek \ud83c\uddec\ud83c\uddf7

24.6

Bulgarian \ud83c\udde7\ud83c\uddec

22.41

Norwegian \ud83c\uddf3\ud83c\uddf4

15.6

Spanish (Argentina) \ud83c\udde6\ud83c\uddf7

5.08

Indonesian \ud83c\uddee\ud83c\udde9

4.05

Serbian (Cyrillic) \ud83c\uddf7\ud83c\uddf8

1.13

Arabic

0.0

Basque (Spain)

0.0

Vietnamese (Viet Nam)

0.0

"},{"location":"lizmap/","title":"Lizmap Web Client","text":"

Visit the main dedicated website for the Lizmap documentation.

"},{"location":"lizmap/#module","title":"Module","text":"

Additional modules can be added on top of Lizmap

"},{"location":"lizmap/#french-use-cases","title":"French use cases","text":""},{"location":"lizmap/#api-documentation","title":"API documentation","text":""},{"location":"lizmap/#translations","title":"Translations","text":"

Tip

Translations are available on Transifex, no development knowledge is required.

These statistics are about the Lizmap Web Client application only, for the two current maintained branches and the next major version combined.

Statistics updated: 2024-10-02

Number of strings Number of target languages Overall Translation ratio 3878 29 50.07 Language Translation ratio (%) French \ud83c\uddeb\ud83c\uddf7

100.0

Czech \ud83c\udde8\ud83c\uddff

99.95

Romanian \ud83c\uddf7\ud83c\uddf4

99.95

Portuguese \ud83c\uddf5\ud83c\uddf9

99.07

Italian \ud83c\uddee\ud83c\uddf9

94.79

Polish (Poland) \ud83c\uddf5\ud83c\uddf1

84.61

Dutch \ud83c\uddf3\ud83c\uddf1

82.13

Japanese \ud83c\uddef\ud83c\uddf5

72.38

Ukrainian (Ukraine) \ud83c\uddfa\ud83c\udde6

68.18

Russian \ud83c\uddf7\ud83c\uddfa

68.0

German \ud83c\udde9\ud83c\uddea

63.74

Galician

61.6

Slovak \ud83c\uddf8\ud83c\uddf0

59.03

Portuguese (Brazil) \ud83c\udde7\ud83c\uddf7

53.22

Swedish (Sweden) \ud83c\uddf8\ud83c\uddea

53.09

Spanish \ud83c\uddea\ud83c\uddf8

52.27

Slovenian \ud83c\uddf8\ud83c\uddee

47.5

Hungarian (Hungary) \ud83c\udded\ud83c\uddfa

46.13

Finnish \ud83c\uddeb\ud83c\uddee

43.12

Basque

30.4

Greek \ud83c\uddec\ud83c\uddf7

24.6

Bulgarian \ud83c\udde7\ud83c\uddec

22.41

Norwegian \ud83c\uddf3\ud83c\uddf4

15.6

Spanish (Argentina) \ud83c\udde6\ud83c\uddf7

5.08

Indonesian \ud83c\uddee\ud83c\udde9

4.05

Serbian (Cyrillic) \ud83c\uddf7\ud83c\uddf8

1.13

Arabic

0.0

Basque (Spain)

0.0

Vietnamese (Viet Nam)

0.0

"},{"location":"plugins/","title":"QGIS Plugins","text":"

Some plugins are available on https://plugins.qgis.org.

Most of our plugins are available on our own custom repository https://docs.3liz.org/plugins.xml. You need to follow the tutorial how to add a custom repository.

"},{"location":"plugins/#desktop","title":"Desktop","text":""},{"location":"plugins/#server","title":"Server","text":"

To manage plugins on a server, you can use QGIS-Plugin-Manager.

For managing the plugins.xml, you can use QGIS-Plugin-Repo.

"},{"location":"talks/","title":"Talks and presentations","text":""},{"location":"talks/#lizmap","title":"Lizmap","text":""},{"location":"talks/#openstreetmap","title":"OpenStreetMap","text":""},{"location":"talks/#qfieldcloud","title":"QFieldCloud","text":""},{"location":"talks/#qgis-desktop","title":"QGIS Desktop","text":""},{"location":"talks/#qgis-server","title":"QGIS Server","text":""},{"location":"talks/#pgmetadata","title":"PgMetadata","text":""},{"location":"talks/#veloroutes-et-voies-vertes","title":"V\u00e9loroutes et Voies Vertes","text":""},{"location":"talks/#french-cadastre","title":"French Cadastre","text":""},{"location":"tools/","title":"Tools","text":""},{"location":"tools/#rust","title":"Rust","text":""},{"location":"internships/gsoc/","title":"Google Summer Of Code","text":"

These are the things we would like a GSOC student to dabble with. Get in touch with info@3liz.com if interested.

"},{"location":"internships/gsoc/#javascript-refactoring-in-order-to-add-code-coverage","title":"Javascript refactoring in order to add code coverage.","text":"

Our current front-end code, mostly written ins Javascript is not easily testable. We would like to refactor this code and add has many tests as possible. You'll need to understand how Lizmap works in order to complete the subject. This is mostly about javascript, testing and tools to make it happen.

"},{"location":"internships/gsoc/#add-sso-support","title":"Add SSO support","text":"

We would like to have the ability to use lizmap with SSO providers like okta, Auth0 ... This project is about working with our backend library Jelix ( see https://jelix.org) and our front-end code in order to bring the code architecture to have the possibility to use SSO when connecting to lizmap. This will require PHP and javascript skills. In order to make the necessary changes in our code base in order to bring one provider and make it easy to add SSO providers.

"},{"location":"tutorial/","title":"Tutorials","text":"

You can find either French or English some tutorials :

"},{"location":"tutorial/filezilla-en/","title":"Filezilla","text":""},{"location":"tutorial/filezilla-en/#installation","title":"Installation","text":""},{"location":"tutorial/filezilla-en/#register-a-lizmap-ftp-server","title":"Register a Lizmap FTP server","text":"

Note, it's possible to synchronize the navigation between the local directory and the remote directory in the Advanced tab. You need to fill the local and remote paths and also toggle the two checkboxes in the tab.

"},{"location":"tutorial/filezilla-en/#file-tree","title":"File tree","text":"

On the server, always in the qgis, we are going to create directories which will be a Lizmap theme.

Then, in your Lizmap panel administration, you need to add the directory.

For instance :

/\n\u251c\u2500\u2500 qgis\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 forest\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs.cfg\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 media\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0     \u2514\u2500\u2500 logo.png\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 social\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 urban\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs.cfg\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 urban_project.qgs\n\u2502\u00a0\u00a0     \u2514\u2500\u2500 urban_project.qgs.cfg\n\u2514\u2500\u2500 web\n
"},{"location":"tutorial/filezilla-fr/","title":"Filezilla","text":""},{"location":"tutorial/filezilla-fr/#installation","title":"Installation","text":""},{"location":"tutorial/filezilla-fr/#enregistrement-de-votre-serveur-lizmap","title":"Enregistrement de votre serveur Lizmap","text":"

Note, il est possible de synchroniser la navigation dans l'onglet Avanc\u00e9. Vous devez compl\u00e9ter les chemins locaux et distants ainsi que cocher les deux cases \u00e0 cocher dans cet onglet.

"},{"location":"tutorial/filezilla-fr/#arborescence-par-defaut","title":"Arborescence par d\u00e9faut","text":"

Sur le serveur, toujours dans le dossier qgis, nous allons cr\u00e9er des r\u00e9pertoires qui seront vos th\u00e9matiques Lizmap.

Ensuite, dans votre panneau d'administration Lizmap, vous devez ajouter ce r\u00e9pertoire.

Par exemple :

/\n\u251c\u2500\u2500 qgis\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 forest\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs.cfg\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 media\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0     \u2514\u2500\u2500 logo.png\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 social\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 urban\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs.cfg\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 urban_project.qgs\n\u2502\u00a0\u00a0     \u2514\u2500\u2500 urban_project.qgs.cfg\n\u2514\u2500\u2500 web\n
"},{"location":"tutorial/qgis-repository-en/","title":"Add a custom QGIS plugin repository","text":""},{"location":"tutorial/qgis-repository-en/#add-the-repository","title":"Add the repository","text":"

You need to go in the plugin manager :

Then, go in the Settings tab.

"},{"location":"tutorial/qgis-repository-en/#add-the-authentification","title":"Add the authentification","text":"

The plugin might be protected by a login/password.

In the dialog below, click Edit in the Authentification section.

By default, you will have No Authentification. Click the + icon to create one.

Warning

If it's the first time that you are using the password manager in QGIS, it will ask you to set the master password. It's a password that you must set with your own password. It will be used to unlock the password database. If you forget it, it's not possible to recover this password.

"},{"location":"tutorial/qgis-repository-fr/","title":"Ajouter un d\u00e9p\u00f4t personnalis\u00e9 d'extensions QGIS","text":""},{"location":"tutorial/qgis-repository-fr/#ajouter-le-depot","title":"Ajouter le d\u00e9p\u00f4t","text":"

Il faut se rendre dans le gestionnaire des extensions.

Ensuite, aller dans l'onglet Param\u00e8tres.

"},{"location":"tutorial/qgis-repository-fr/#ajouter-une-authentification","title":"Ajouter une authentification","text":"

L'extension peut \u00eatre prot\u00e9g\u00e9e par un nom d'utilisateur/mot de passe.

Dans le dialogue suivant, cliquer \u00c9diter dans la ligne Authentification.

Par d\u00e9faut, vous allez obtenir Pas d'authentification. Cliquer sur l'ic\u00f4ne + pour en cr\u00e9er une.

Warning

Si c'est la premi\u00e8re fois que vous utilisez le gestionnaire de mot de passe de QGIS, il vous demandera de d\u00e9finir le mot de passe principal. Il s'agit d'un mot de passe que vous devez d\u00e9finir, avec votre propre mot de passe. Il servira \u00e0 d\u00e9verrouiller la base de donn\u00e9es des mots de passes. En cas d'oubli, ce mot de passe n'est pas r\u00e9cup\u00e9rable.

QGIS va remplir avec une cha\u00eene al\u00e9atoire le jeton d'authentification pour acc\u00e9der au d\u00e9p\u00f4t. Vous pouvez d\u00e9sormais re-suivre la section pr\u00e9c\u00e9dente afin de recharger les d\u00e9p\u00f4ts.

"},{"location":"tutorial/resources-sharing-en/","title":"QGIS Resources sharing","text":""},{"location":"tutorial/resources-sharing-en/#plugin-installation","title":"Plugin installation","text":"

The full documentation about the plugin is available online.

"},{"location":"tutorial/resources-sharing-en/#add-the-3liz-repository","title":"Add the 3Liz repository","text":"

Finally, in your menu Processing \u27a1 Toolbox of QGIS, you should see some new Processing scripts, for instance Scripts \u27a1 Lizmap \u27a1 Set color field value with feature symbol main colour.

"},{"location":"tutorial/resources-sharing-fr/","title":"QGIS Resources sharing","text":""},{"location":"tutorial/resources-sharing-fr/#installation-de-lextension","title":"Installation de l'extension","text":"

La documentation compl\u00e8te de cette extension est disponible en ligne.

"},{"location":"tutorial/resources-sharing-fr/#ajout-de-depot-3liz","title":"Ajout de d\u00e9p\u00f4t 3Liz","text":"

Dans votre menu Traitements \u27a1 Bo\u00eete \u00e0 outils de QGIS, vous devriez avoir des scripts Processing d\u00e9sormais, par exemple Scripts \u27a1 Lizmap \u27a1 Set color field value with feature symbol main colour.

"},{"location":"tutorial/winscp-en/","title":"WinSCP","text":""},{"location":"tutorial/winscp-en/#installation","title":"Installation","text":""},{"location":"tutorial/winscp-en/#register-your-lizmap-server","title":"Register your Lizmap server","text":" "},{"location":"tutorial/winscp-en/#file-tree","title":"File tree","text":"

On the server, always in the qgis, we are going to create directories which will be a Lizmap theme.

Then, in your Lizmap panel administration, you need to add the directory.

For instance :

/\n\u251c\u2500\u2500 qgis\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 forest\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs.cfg\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 media\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0     \u2514\u2500\u2500 logo.png\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 social\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 urban\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs.cfg\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 urban_project.qgs\n\u2502\u00a0\u00a0     \u2514\u2500\u2500 urban_project.qgs.cfg\n\u2514\u2500\u2500 web\n
"},{"location":"tutorial/winscp-fr/","title":"WinSCP","text":""},{"location":"tutorial/winscp-fr/#installation","title":"Installation","text":""},{"location":"tutorial/winscp-fr/#enregistrement-de-votre-serveur-lizmap","title":"Enregistrement de votre serveur Lizmap","text":" "},{"location":"tutorial/winscp-fr/#arborescence-par-defaut","title":"Arborescence par d\u00e9faut","text":"

Sur le serveur, toujours dans le dossier qgis, nous allons cr\u00e9er des r\u00e9pertoires qui seront vos th\u00e9matiques Lizmap.

Ensuite, dans votre panneau d'administration Lizmap, vous devez ajouter ce r\u00e9pertoire.

Par exemple :

/\n\u251c\u2500\u2500 qgis\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 forest\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u251c\u2500\u2500 jungle.qgs.cfg\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0 \u2514\u2500\u2500 media\n\u2502\u00a0\u00a0 \u2502\u00a0\u00a0     \u2514\u2500\u2500 logo.png\n\u2502\u00a0\u00a0 \u251c\u2500\u2500 social\n\u2502\u00a0\u00a0 \u2514\u2500\u2500 urban\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 populated_places.qgs.cfg\n\u2502\u00a0\u00a0     \u251c\u2500\u2500 urban_project.qgs\n\u2502\u00a0\u00a0     \u2514\u2500\u2500 urban_project.qgs.cfg\n\u2514\u2500\u2500 web\n
"},{"location":"workshop/actions/","title":"Actions","text":"

Nous allons cr\u00e9er une action permettant de connaitre la distance entre un logement et la borne incendie la plus proche. Nous nous r\u00e9fererons \u00e0 la documentation pour la cr\u00e9ation d'actions.

"},{"location":"workshop/actions/#sql","title":"SQL","text":"

Commen\u00e7ons par cr\u00e9er une table de bornes incendie :

SET SEARCH_PATH = votre_schema;\nCREATE TABLE IF NOT EXISTS bornes_incendie\n(\n    id SERIAL PRIMARY KEY,\n    geom geometry(Point,2154)\n);\n\nCREATE INDEX ON bornes_incendie USING GIST (geom);\n
"},{"location":"workshop/actions/#proprietes-du-projet","title":"Propri\u00e9t\u00e9s du projet","text":""},{"location":"workshop/actions/#exercice","title":"Exercice","text":"

En vous inspirant de la documenation, cr\u00e9er le SQL ainsi que le JSON de l'action. Celle-ci doit :

"},{"location":"workshop/actions/#solution","title":"Solution","text":"SQL de l'action JSON de l'action
[\n    {\n        \"name\": \"plus_proche_borne_incendie\",\n        \"title\": \"Trouver la plus proche borne \u00e0 incendie de ce logement\",\n        \"scope\": \"feature\",\n        \"layers\" : [\n            \"logement_47b4d824_19f3_40a6_95ac_c144f8e53562\"\n        ],\n        \"icon\": \"icon-resize-small\",\n        \"options\": {},\n        \"style\": {\n            \"graphicName\": \"circle\",\n            \"pointRadius\": 6,\n            \"fill\": true,\n            \"fillColor\": \"lightred\",\n            \"fillOpacity\": 0.3,\n            \"stroke\": true,\n            \"strokeWidth\": 4,\n            \"strokeColor\": \"red\",\n            \"strokeOpacity\": 0.8\n        },\n        \"callbacks\": [\n            {\"method\": \"zoom\"},\n            {\"method\": \"select\", \"layerId\": \"bornes_incendie_7e4f3577_4c55_4351_8949_a4359ae05340\"}\n        ]\n    }\n]\n
"},{"location":"workshop/edition/","title":"\u00c9dition","text":"

Nous allons faire un petit mod\u00e8le de donn\u00e9es pour recenser des logements.

Nous pourrons voir \u00e0 travers cet exemple diff\u00e9rent aspect de Lizmap.

classDiagram class logement{ id serial PK adresse text not null code_insee text type text not null nb_pieces int besoin_renov boolean pmr boolean not null fiche_web text photo text, date_construction date, date_revision_fiche date default now() geom Point EPSG:2154 } class agents{ id serial PK nom text not null } class etat_des_lieux{ id serial PK id_logement int not null id_agent int not null date date not null photo text } logement -- etat_des_lieux agents -- etat_des_lieux"},{"location":"workshop/edition/#sql","title":"SQL","text":"

Commen\u00e7ons par cr\u00e9er les tables.

DROP SCHEMA IF EXISTS z_formation CASCADE;\nCREATE SCHEMA z_formation;\n
Afficher les solutions
CREATE TABLE z_formation.logement (\n    id SERIAL PRIMARY KEY,\n    adresse TEXT NOT NULL,\n    code_insee text,\n    type TEXT NOT NULL,\n    nb_pieces INTEGER,\n    besoin_renov boolean,\n    pmr boolean NOT NULL,\n    fiche_web TEXT,\n    photo TEXT,\n    date_construction DATE,\n    date_revision_fiche DATE,\n    geom Geometry(Point, 2154)\n);\nCREATE TABLE z_formation.agents\n(\n    id SERIAL PRIMARY KEY,\n    nom TEXT NOT NULL\n);\n\nCREATE TABLE z_formation.etat_des_lieux\n(\n    id SERIAL PRIMARY KEY,\n    id_logement INTEGER NOT NULL,\n    id_agent INTEGER NOT NULL,\n    date TIMESTAMP NOT NULL,\n    photo TEXT,\n    FOREIGN KEY (id_logement) REFERENCES z_formation.logement(id),\n    FOREIGN KEY (id_agent) REFERENCES z_formation.agents(id)\n);\n

N'oublions pas l'index spatial

CREATE INDEX ON z_formation.logement USING GIST (geom);\n

Info

Pour profiter pleinement de cette excerice, vous devez avoir une couche des communes avec les codes INSEE dans votre projet \u00e9galement. Cette couche ne doit pas n\u00e9cessairement \u00eatre dans la base PostgreSQL, car on n'\u00e9dite pas la couche des communes en ligne.

"},{"location":"workshop/edition/#proprietes-du-projet","title":"Propri\u00e9t\u00e9s du projet","text":""},{"location":"workshop/edition/#formulaire-logement","title":"Formulaire logement","text":"

Tip

Regarder uniquement le formulaire dans QGIS bureautique dans un premier temps, pendant les diff\u00e9rentes \u00e9tapes, en ouvrant une session d'\u00e9dition.

Tip

Nous n'avons pas besoin du champ id pour nos utilisateurs lors d'une \u00e9dition. C'est une information interne. Nous pouvons donc le supprimer.

"},{"location":"workshop/edition/#parametrage-des-outils-pour-les-champs","title":"Param\u00e9trage des \"outils\" pour les champs","text":"

Pour l'ensemble des champs, nous allons configurer les Type d'outil ainsi que les contraintes si n\u00e9cessaire.

Nous allons utiliser la documentation Lizmap sur les formulaires avanc\u00e9s.

Tip

On remarque que QGIS d\u00e9tecte les contraintes des champs qui sont en base de donn\u00e9es. Mais on peut personnaliser les messages d'erreurs.

Tip

Concernant l'expression de contrainte, QGIS va l'ex\u00e9cuter et va v\u00e9rifier si l'expression renvoi une valeur bool\u00e9enne si la saisie est valide ou non.

Warning

Le support complet des expressions est un sujet complexe et non termin\u00e9. Il y a plein de diff\u00e9rents contextes pour l'\u00e9valuation des expressions, voir le ticket GitHub.

L'\u00e9valuation d'une expression lors d'une MAJ de l'entit\u00e9 ne peut pas se faire via une expression QGIS. Il faut utiliser un trigger

"},{"location":"workshop/edition/#utilisation-des-popups-avec-la-relation","title":"Utilisation des popups avec la relation","text":"

Nous pouvons activer :

"},{"location":"workshop/edition/#edition-des-tables-filles","title":"\u00c9dition des tables filles","text":"

Pour permettre l'ajout des \u00e9tats des lieux, il faut :

"},{"location":"workshop/edition/#quelques-solutions","title":"Quelques solutions","text":"V\u00e9rifier qu'un champ n'est ni NULL ni une cha\u00eene vide

\"adresse\" IS NOT NULL AND \"adresse\" <> ''

V\u00e9rifier que la cha\u00eene commence par http

left(\"fiche_web\", 4) = 'http'

Sinon, avec regex101, une regexp possible: (http|https):\\/\\/([\\w-]+(\\.[\\w-]+)+)

"},{"location":"workshop/edition/#continuer-plus-loin","title":"Continuer plus loin","text":"

On peut continuer plus loin avec l'utilisation de la dataviz, par exemple pour afficher dans les informations d'une commune la r\u00e9partition des types de logements.

"},{"location":"workshop/lizmap-short-english/","title":"Workshop Lizmap","text":""},{"location":"workshop/lizmap-short-english/#pre-requirements","title":"Pre-requirements","text":"

This workshop is designed for QGIS users.

"},{"location":"workshop/lizmap-short-english/#qgis-uc-2024","title":"QGIS UC 2024","text":"

Presentations talking about QGIS Server and Lizmap during this QGIS UC from 3Liz :

"},{"location":"workshop/lizmap-short-english/#links","title":"Links","text":""},{"location":"workshop/lizmap-short-english/#documentation","title":"Documentation","text":""},{"location":"workshop/lizmap-short-english/#setting-up-the-training","title":"Setting up the training","text":"

Warning

QGIS might ask you to set up a master password. This password belongs to you and is not linked to Lizmap. It's to lock your internal QGIS password manager.

Question

Is-it \ud83d\udc4d or something else ?

Info

This workshop was designed for 3 hours, so some steps in the QGIS downloaded project are already.

"},{"location":"workshop/lizmap-short-english/#first-quick-map","title":"First quick map","text":"

Tip

Bonus if you have a small PNG picture called name_of_project.qgs.png to replace the default project thumbnail. It works as well with jpg, jpeg files.

"},{"location":"workshop/lizmap-short-english/#quick-overview-of-the-lizmap-web-interface","title":"Quick overview of the Lizmap web interface","text":""},{"location":"workshop/lizmap-short-english/#legend","title":"Legend","text":"

Success

Lizmap is using QGIS Server in the background, the legend is, therefore, the same as in QGIS Desktop.

Some settings in the QGIS project or in the Lizmap plugin can have effects in the web interface.

"},{"location":"workshop/lizmap-short-english/#attribute-table","title":"Attribute table","text":"

Tip

We can improve our attribute table by adding some alias on the fields :

Tip

Two new tools appeared in Lizmap Web Client : Attribute table as expected, but also Selection. Let's have a look.

"},{"location":"workshop/lizmap-short-english/#lets-identify-the-feature-by-clicking","title":"Let's identify the feature by clicking","text":"

Tip

The automatic popup will use alias if available on the layer.

These QGIS popups are powerful with the use of QGIS expressions. \ud83d\ude80

"},{"location":"workshop/lizmap-short-english/#with-some-expressions-inside","title":"With some expressions inside","text":"

You can use expressions :

Display solutions "},{"location":"workshop/lizmap-short-english/#editing-capabilities-on-a-layer","title":"Editing capabilities on a layer","text":"

We want now to enable editing capabilities on a layer in the Lizmap interface, to let some users add some observations.

Tip

We can use QGIS Expressions in the form (visibility, conditions, default value etc.). Read the documentation.

"},{"location":"workshop/lizmap-short-english/#pdf-print","title":"PDF Print","text":""},{"location":"workshop/lizmap-short-english/#extent-chosen-by-the-user","title":"Extent chosen by the user","text":"

Success

In this case, the user is choosing the area of interest

"},{"location":"workshop/lizmap-short-english/#from-a-popup-extent-defined-by-the-feature","title":"From a popup, extent defined by the feature","text":"

Success

While in this situation, the PDF is linked to a feature.

"},{"location":"workshop/lizmap-short-english/#dataviz","title":"Dataviz","text":""},{"location":"workshop/lizmap-short-english/#bar-chart","title":"Bar chart","text":""},{"location":"workshop/lizmap-short-english/#pie-chart","title":"Pie chart","text":"
relation_aggregate(\n    relation:='observation_fk_id_person_fkey',\n    aggregate:='count',\n    expression:=\"id\"\n)\n
"},{"location":"workshop/lizmap-short-english/#advanced-filtered-plot","title":"Advanced filtered plot","text":"

For now, it's only charts at the layer level. It's possible to make charts for a given feature, for instance for a given \"watcher\", to know his own observations. You can watch the animated GIF at the bottom to understand the expected output, in the \"Final result\".

Tip

Watch the video tutorial about the filtered plot.

attribute(get_feature('species_aa247cf3_58c8_4852_8ada_1d707a593cfe', 'id', \"fk_id_specie\"),'es_nom_commun')\n

Final result

Thanks \ud83d\ude0e

"},{"location":"workshop/workshop/","title":"Workshops","text":""},{"location":"workshop/workshop/#lizmap","title":"Lizmap","text":""},{"location":"workshop/fr/lizmap-short-01-intro/","title":"Atelier Lizmap","text":""},{"location":"workshop/fr/lizmap-short-01-intro/#pre-requis","title":"Pr\u00e9-requis","text":"

Cet atelier concerne les utilisateurs de l'atelier Lizmap sur 1/2 journ\u00e9e.

"},{"location":"workshop/fr/lizmap-short-01-intro/#liens","title":"Liens","text":""},{"location":"workshop/fr/lizmap-short-01-intro/#documentation","title":"Documentation","text":"

Commen\u00e7ons enfin le TP en publiant notre premi\u00e8re carte \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-02-first-map/","title":"Premi\u00e8re publication rapide","text":"

Nous allons publier le projet QGIS qui se trouve dans l'email afin de faire notre premi\u00e8re carte visualisable sur internet.

"},{"location":"workshop/fr/lizmap-short-02-first-map/#extension-lizmap","title":"Extension Lizmap","text":""},{"location":"workshop/fr/lizmap-short-02-first-map/#manipulation-dans-qgis","title":"Manipulation dans QGIS","text":"

Tip

Bonus si vous avez une petite image PNG qui se nomme nom_du_projet.qgs.png pour remplacer l'image du projet par d\u00e9faut. Vous pouvez regarder l'aide dans l'extension Lizmap \u2192 Options de la carte pour avoir de l'aide sur la vignette. Il faut mettre cette image \u00e0 c\u00f4t\u00e9 de votre fichier nom_du_projet.qgs. L'image peut-\u00eatre jpeg aussi.

"},{"location":"workshop/fr/lizmap-short-02-first-map/#prendre-en-main-linterface-web-lizmap","title":"Prendre en main l'interface web Lizmap","text":"

Warning

Seul un participant va faire la manipulation suivante afin de publier le dossier avec l'ensemble des projets QGIS.

Success

Dans votre l\u00e9gende Lizmap, si vous pouvez voir vos couches et les afficher, c'est que \u00e7a marche !

Nous allons d\u00e9sormais personnaliser l'affichage de nos couches, par exemple afficher certaines couches par d\u00e9faut \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-03-legend/","title":"L\u00e9gende","text":"

** Note, je ne vais plus utiliser le groupe hidden.

Success

Lizmap utilise QGIS Serveur en arri\u00e8re-plan, la l\u00e9gende est donc identique que sur QGIS Bureautique.

Certaines configurations dans le projet QGIS ou dans l'extension Lizmap ont un impact dans l'interface web.

Tip

\u00c0 partir de maintenant, envoyez souvent les donn\u00e9es sur le serveur pour voir les modifications.

Rendons notre carte \"interactif\" pour r\u00e9pondre au clic sur la carte avec l'usage des popups \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-04-popups/","title":"Interactions au clic","text":"

D\u00e9couvrons le principe des popups automatiques et Infobulle QGIS.

"},{"location":"workshop/fr/lizmap-short-04-popups/#automatique","title":"Automatique","text":""},{"location":"workshop/fr/lizmap-short-04-popups/#infobulle-qgis","title":"Infobulle QGIS","text":"

Tip

Dans QGIS \u27a1 Vue \u27a1 Panneaux \u2192 Aper\u00e7u HTML Lizmap pour afficher directement dans QGIS bureautique. Vous devez s\u00e9lectionner aussi l'outil infobulle dans la barre d'outils.

Ces informations avec les infobulles QGIS sont tr\u00e8s puissantes gr\u00e2ce \u00e0 l'utilisation des expressions QGIS \ud83d\ude80

"},{"location":"workshop/fr/lizmap-short-04-popups/#personnalisation-de-linfobulle","title":"Personnalisation de l'infobulle","text":"

Tip

On peut facilement supprimer un champ du rendu HTML en supprimant l'ensemble d'un bloc <tr>...</tr>.

On peut aussi utiliser des expressions QGIS :

Afficher les solutions

Success

Les expressions QGIS sont vraiment puissantes pour dynamiser du contenu.

Nous allons voir comment publier la table attributaire d'une couche \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-05-attribute-table/","title":"Table attributaire","text":"

Tip

On peut am\u00e9liorer le visuel de notre table attributaire en ajoutant des alias sur nos champs :

Ces alias sont aussi pr\u00e9sent dans la popup Automatique ou lors de la g\u00e9n\u00e9ration du HTML !

Success

Pour ceux qui ont le temps, vous pouvez aussi regarder les outils de s\u00e9lection.

Passons \u00e0 la prochaine \u00e9tape, l'\u00e9dition d'une couche directement depuis l'interface web \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-06-editing/","title":"\u00c9dition d'une couche","text":"

On souhaite d\u00e9sormais rendre \u00e9ditable une couche depuis l'interface web afin de pouvoir ajouter des observations.

Success

On peut utiliser des expressions QGIS dans les formulaires (visibilit\u00e9, conditions, valeurs par d\u00e9faut etc). Lire la documentation.

Tip

En l'absence de couches PostgreSQL pour cette formation, on peut voir le projet d\u00e9j\u00e0 fait.

D\u00e9sormais, on souhaite pouvoir proposer des exports PDF, avec ou sans atlas dans notre projet \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-07-print/","title":"Impression PDF","text":""},{"location":"workshop/fr/lizmap-short-07-print/#choix-de-la-zone-dimpression-par-lutilisateur","title":"Choix de la zone d'impression par l'utilisateur","text":"

Success

Dans ce cas-l\u00e0, c'est l'utilisateur qui choisit ce qu'il souhaite imprimer en PDF.

Warning

Probl\u00e8me avec QGIS \u2265 3.34, temporaire, le texte dynamique ne fonctionne plus \ud83d\ude14 Nous sommes sur un correctif, patience \u23f0

"},{"location":"workshop/fr/lizmap-short-07-print/#apres-un-clic-sur-la-carte-liee-a-une-entite","title":"Apr\u00e8s un clic sur la carte, li\u00e9e \u00e0 une entit\u00e9","text":"

Success

Alors que dans ce cas-l\u00e0, le PDF est li\u00e9 \u00e0 une entit\u00e9 pr\u00e9cise, en haut de sa popup.

Passons \u00e0 la derni\u00e8re partie, l'ajout de graphiques dans notre projet \ud83d\udc49

"},{"location":"workshop/fr/lizmap-short-08-dataviz/","title":"Dataviz","text":""},{"location":"workshop/fr/lizmap-short-08-dataviz/#diagramme-en-bar","title":"Diagramme en bar","text":""},{"location":"workshop/fr/lizmap-short-08-dataviz/#camembert","title":"Camembert","text":"
relation_aggregate(\n    relation:='observation_fk_id_person_fkey',\n    aggregate:='count',\n    expression:=\"id\"\n)\n
"},{"location":"workshop/fr/lizmap-short-08-dataviz/#filtrage-sur-les-graphiques","title":"Filtrage sur les graphiques","text":"

Pour le moment, ce sont des graphiques montrant une couche enti\u00e8re. Il est possible de faire des graphiques pour une entit\u00e9 pr\u00e9cise, par exemple, la r\u00e9partition des esp\u00e8ces pour un observateur.

attribute(get_feature('species_aa247cf3_58c8_4852_8ada_1d707a593cfe', 'id', \"fk_id_specie\"),'es_nom_commun')\n

R\u00e9sultat final

Success

Pour les curieux, je vous recommande le tutoriel vid\u00e9o sur les relations entre les couches et la dataviz.

Merci de votre attention \ud83d\ude0e

"}]} \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml index 19fc359..7529b00 100644 --- a/sitemap.xml +++ b/sitemap.xml @@ -2,118 +2,118 @@ https://docs.3liz.org/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/links/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/lizmap-i18n-stats/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/lizmap/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/plugins/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/talks/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/tools/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/internships/gsoc/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/tutorial/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/tutorial/filezilla-en/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/tutorial/filezilla-fr/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/tutorial/qgis-repository-en/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/tutorial/qgis-repository-fr/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/tutorial/resources-sharing-en/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/tutorial/resources-sharing-fr/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/tutorial/winscp-en/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/tutorial/winscp-fr/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/workshop/actions/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/workshop/edition/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/workshop/lizmap-short-english/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/workshop/workshop/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/workshop/fr/lizmap-short-01-intro/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/workshop/fr/lizmap-short-02-first-map/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/workshop/fr/lizmap-short-03-legend/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/workshop/fr/lizmap-short-04-popups/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/workshop/fr/lizmap-short-05-attribute-table/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/workshop/fr/lizmap-short-06-editing/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/workshop/fr/lizmap-short-07-print/ - 2024-10-22 + 2024-10-23 https://docs.3liz.org/workshop/fr/lizmap-short-08-dataviz/ - 2024-10-22 + 2024-10-23 \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz index f62924da221e87eeaace1fde3b2a6e52e33460e9..e32045e59d83ff7a954b4dc654efca065f99f987 100644 GIT binary patch delta 410 zcmV;L0cHNH1FHiEABzYGfIJwH2OWQI<71$$yYU3@0HMuVYgrs(cZEGY*_aR?LP8vp zT$-kqe}6kw>@3$WJ3HB%z({UYOv|d67}rpXu3Ht45BIPr*7e152$qdZqOs#u(Tn&y zrN(hA8O7|h=aNFFxas2ytMj6&%G;v8n8a~(@IE_@rKP4mdg17%rH0G7#lwHe$5I`? zeKyrBJ8J7$HM@jq1+#fHIj_C@Rv*s)jVKA9I$9f3{FM!cIeP03r@66 zw}nDvlflr5366X8tU9J9S&)NJKy8!rHfYTOt<_*$M))Qqhd+175R9jIW>R>~5&w4y z8L|)z(-0cNz`YK!_TJ7bw4w8Ei1HK*E;kcQJFYrZcY1ujCRu`N4C3 zC0C$D0zM65K=hL}`6XS$=@fBYeknKLW7U%ULKe_!(R)1nU&`qbZ=4GC8+KwM`=Jg1 E08Derj{pDw delta 410 zcmV;L0cHNH1FHiEABzYG0P7Z!2OWQ|d=0d9H=Y0-wX>ZGjO13uysV0uaV>S|`c?68e+P?V-JC7QVA;ql8arMUgNVOX zYMQ2!QOs6*E-Cbi+abQNIxVWIyeXQqSsVuk@3Z4rT56kv7mjW^YPmeOxIcgTSgOOf z&!(DXOI=e}^##l;sOxBQT6_1cKAis@W6?cvI@ms@18}}@z@jBFI2Fy?u}7CIIMFuU z77CF~216$%I3Ccm>Y3VPL5@NJwN1|3pf!86R)cXF;hT^g{@f!&FrMO>N#Qj|{NE*H z$U-noV`vQn4?4u!lOqp5MPz@-#1s$E*5?TSL{1m;MB#}C@=CW7yAMvzH60$n$+@R? zAkKrto$f92kX*#aBsDnxU|$kY%^}viK>3B#u))9r30tP$#himRy>VTBB^ThykDl`@ zxdbf|@NpCaq93ivFX;-7r-TuL;wH) diff --git a/talks/index.html b/talks/index.html index 040cb1e..b9c5769 100644 --- a/talks/index.html +++ b/talks/index.html @@ -583,6 +583,15 @@ + + +
  • + + + QFieldCloud + + +
  • @@ -610,6 +619,15 @@ +
  • + +
  • + + + Véloroutes et Voies Vertes + + +
  • @@ -1314,6 +1332,15 @@ +
  • + +
  • + + + QFieldCloud + + +
  • @@ -1341,6 +1368,15 @@ +
  • + +
  • + + + Véloroutes et Voies Vertes + + +
  • @@ -1370,6 +1406,10 @@

    Talks and presentations#

    Lizmap#