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 :
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\uddf7100.0
Czech \ud83c\udde8\ud83c\uddff99.95
Romanian \ud83c\uddf7\ud83c\uddf499.95
Portuguese \ud83c\uddf5\ud83c\uddf999.07
Italian \ud83c\uddee\ud83c\uddf994.79
Polish (Poland) \ud83c\uddf5\ud83c\uddf184.61
Dutch \ud83c\uddf3\ud83c\uddf182.13
Japanese \ud83c\uddef\ud83c\uddf572.38
Ukrainian (Ukraine) \ud83c\uddfa\ud83c\udde668.18
Russian \ud83c\uddf7\ud83c\uddfa68.0
German \ud83c\udde9\ud83c\uddea63.74
Galician61.6
Slovak \ud83c\uddf8\ud83c\uddf059.03
Portuguese (Brazil) \ud83c\udde7\ud83c\uddf753.22
Swedish (Sweden) \ud83c\uddf8\ud83c\uddea53.09
Spanish \ud83c\uddea\ud83c\uddf852.27
Slovenian \ud83c\uddf8\ud83c\uddee47.5
Hungarian (Hungary) \ud83c\udded\ud83c\uddfa46.13
Finnish \ud83c\uddeb\ud83c\uddee43.12
Basque30.4
Greek \ud83c\uddec\ud83c\uddf724.6
Bulgarian \ud83c\udde7\ud83c\uddec22.41
Norwegian \ud83c\uddf3\ud83c\uddf415.6
Spanish (Argentina) \ud83c\udde6\ud83c\uddf75.08
Indonesian \ud83c\uddee\ud83c\udde94.05
Serbian (Cyrillic) \ud83c\uddf7\ud83c\uddf81.13
Arabic0.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
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\uddf7100.0
Czech \ud83c\udde8\ud83c\uddff99.95
Romanian \ud83c\uddf7\ud83c\uddf499.95
Portuguese \ud83c\uddf5\ud83c\uddf999.07
Italian \ud83c\uddee\ud83c\uddf994.79
Polish (Poland) \ud83c\uddf5\ud83c\uddf184.61
Dutch \ud83c\uddf3\ud83c\uddf182.13
Japanese \ud83c\uddef\ud83c\uddf572.38
Ukrainian (Ukraine) \ud83c\uddfa\ud83c\udde668.18
Russian \ud83c\uddf7\ud83c\uddfa68.0
German \ud83c\udde9\ud83c\uddea63.74
Galician61.6
Slovak \ud83c\uddf8\ud83c\uddf059.03
Portuguese (Brazil) \ud83c\udde7\ud83c\uddf753.22
Swedish (Sweden) \ud83c\uddf8\ud83c\uddea53.09
Spanish \ud83c\uddea\ud83c\uddf852.27
Slovenian \ud83c\uddf8\ud83c\uddee47.5
Hungarian (Hungary) \ud83c\udded\ud83c\uddfa46.13
Finnish \ud83c\uddeb\ud83c\uddee43.12
Basque30.4
Greek \ud83c\uddec\ud83c\uddf724.6
Bulgarian \ud83c\udde7\ud83c\uddec22.41
Norwegian \ud83c\uddf3\ud83c\uddf415.6
Spanish (Argentina) \ud83c\udde6\ud83c\uddf75.08
Indonesian \ud83c\uddee\ud83c\udde94.05
Serbian (Cyrillic) \ud83c\uddf7\ud83c\uddf81.13
Arabic0.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":"To manage plugins on a server, you can use QGIS-Plugin-Manager.
For managing the plugins.xml
, you can use QGIS-Plugin-Repo.
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 :
You need to download and install the software FileZilla Client from this link : https://filezilla-project.org/download.php?type=client
When the installation is done, you can register the credentials for the Lizmap FTP server.
FTP
Use explicit FTP over TLS if available
Normal
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.
6 Click ok for this server.
7 By using the second button in the toolbar, you can now connect to the FTP server easily.
Description of the user interface :
With a drag&drop, we can copy files from the computer to the server.
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":"Vous devez t\u00e9l\u00e9charger et installer le logiciel FileZilla Client depuis ce lien : https://filezilla-project.org/download.php?type=client
Une fois l'installation effectu\u00e9e, vous pouvez enregistrer la connexion vers le serveur FTP.
FTP
Use explicit FTP over TLS if available
Normal
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.
6 Validez l'ajout de cette connexion.
7 En utilisant le deuxi\u00e8me bouton dans la barre d'outils, vous pouvez vous connecter au serveur FTP
Description de l'interface :
Par glisser/d\u00e9poser, nous allons d\u00e9placer des fichiers de votre ordinateur vers le serveur.
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.
Fill required information with :
Plugin 3Liz XXX
.https://github.com/3liz/lizmap-plugin/releases/latest/download/plugins.xml
https://packages.3liz.org/
, it's high probability that your repository requires an authentification.Before going to install the plugin, do not forget to :
Go back to the All tab to see all available plugin and search for the plugin name in the search bar. You should be able to install it.
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.
3Liz authentification
Il faut se rendre dans le gestionnaire des extensions.
Ensuite, aller dans l'onglet Param\u00e8tres.
Plugin 3Liz XXX
https://github.com/3liz/lizmap-plugin/releases/latest/download/plugins.xml
https://packages.3liz.org/
, il y a de fortes chances que votre d\u00e9p\u00f4t requi\u00e8re une authentification.Cliquer sur Recharger le d\u00e9p\u00f4t pour r\u00e9cup\u00e9rer le contenu de ce nouveau d\u00e9p\u00f4t. Ceci n'installe pas l'extension, cela ajoute seulement l'adresse du serveur pour trouver des nouvelles extensions.
Avant d'installer l'extension, ne pas oublier :
Retourner sur l'onglet Toutes pour voir toutes les extensions disponibles et taper le nom de l'extension dans la barre de recherche. Vous devriez la voir et \u00eatre capable de l'installer.
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.
Remplir avec les informations requises :
3Liz authentification
Cliquer Enregistrer
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":"3Liz
for instancehttps://github.com/3liz/QGIS-Resources.git
3liz
and click install.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":"3Liz
https://github.com/3liz/QGIS-Resources.git
3liz
et cliquez sur installer.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":"You need to download and install WinSCP software from this link: https://winscp.net/eng/download.php
After installation is complete, you can register the connection to the FTP server.
New session
located at the top left of the window.FTP
Explicit TSL / SSL encryption
21
Session
tab thenSites
and click on your site.Description of the user interface :
With a drag&drop, we can copy files from the computer to the server.
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":"Vous devez t\u00e9l\u00e9charger et installer le logiciel WinSCP depuis ce lien: https://winscp.net/eng/download.php
Une fois l'installation effectu\u00e9e, vous pouvez enregistrer la connexion vers le serveur FTP.
Nouvelle session
situ\u00e9 en haut \u00e0 gauche de la fen\u00eatre.FTP
Chiffrement TSL/SSL explicite
21
Session
puis Sites
et cliquez sur votre site.Description de l'interface
Par glisser/d\u00e9poser, nous allons d\u00e9placer des fichiers de votre ordinateur vers le serveur.
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":"bornes_incendie
dans le projet QGISEn vous inspirant de la documenation, cr\u00e9er le SQL ainsi que le JSON de l'action. Celle-ci doit :
%1
et est \u00e0 %2
m\", o\u00f9 %1
est l'identifant de la borne et %2
la distance en m\u00e8trequery_to_geojson
disponible ici.lizmap_get_data
. SET SEARCH_PATH = z_formation;\n-- Create a query depending on the action, layer and feature and returns a GeoJSON.\nCREATE OR REPLACE FUNCTION lizmap_get_data(parameters json)\nRETURNS json AS\n$$\nDECLARE\n feature_id varchar;\n layer_name text;\n layer_table text;\n layer_schema text;\n action_name text;\n sqltext text;\n datasource text;\n ajson json;\nBEGIN\n\n action_name:= parameters->>'action_name';\n feature_id:= (parameters->>'feature_id')::varchar;\n layer_name:= parameters->>'layer_name';\n layer_schema:= parameters->>'layer_schema';\n layer_table:= parameters->>'layer_table';\n\n IF action_name = 'plus_proche_borne_incendie' THEN\n -- Dessine une ligne jusqu'\u00e0 la plus proche borne \u00e0 incendie\n datasource:= format('\n WITH tmp_logement AS (\n SELECT geom FROM logement WHERE id = ''%1$s''\n )\n SELECT\n id, ST_Distance(bornes_incendie.geom, logement.geom),\n ''La plus proche borne a pour id '' || bornes_incendie.id || '' et est \u00e0 '' || ST_Distance(bornes_incendie.geom, logement.geom)::integer || ''m'' AS message,\n ST_MakeLine(logement.geom, bornes_incendie.geom) AS geom,\n bornes_incendie.id AS borne_id\n FROM\n bornes_incendie,\n tmp_logement logement\n ORDER BY ST_Distance(bornes_incendie.geom, logement.geom)\n LIMIT 1\n ',\n feature_id\n );\n ELSE\n -- Default : return geometry\n datasource:= format('\n SELECT\n %1$s AS id,\n ''The geometry of the object have been displayed in the map'' AS message\n geom\n FROM \"%2$s\".\"%3$s\"\n WHERE id = %1$s\n ',\n feature_id,\n layer_schema,\n layer_table\n );\n\n END IF;\n\n SELECT query_to_geojson(datasource)\n INTO ajson\n ;\n RETURN ajson;\nEND;\n$$\nLANGUAGE 'plpgsql'\nIMMUTABLE STRICT;\n\nCOMMENT ON FUNCTION lizmap_get_data(json) IS 'Generate a valid GeoJSON from an action described by a name, PostgreSQL schema and table name of the source data, a QGIS layer name, a feature id and additional options.';\n
[\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":"Tip
Regarder uniquement le formulaire dans QGIS bureautique dans un premier temps, pendant les diff\u00e9rentes \u00e9tapes, en ouvrant une session d'\u00e9dition.
logement
: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.
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.
adresse
:NULL
ET non vide.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.
code_insee
:intersects( @geometry, @current_geometry )
type
:studio
\u27a1 Studio
appartement
\u27a1 Appartement
maison
\u27a1 Maison
villa
\u27a1 Villa
nb_pieces
:pmr
:photo
:../media/specific_media_folder
Images (*.png *.jpg *.jpeg)
besoin_renov
:Indertermin\u00e9
true
\u27a1 Oui
false
\u27a1 Non
fiche_web
:http
date_construction
dd/MM/yyyy
\"date_construction\" is null or \"date_construction\" <= now()
date_revision_fiche
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 :
Pour permettre l'ajout des \u00e9tats des lieux, il faut :
\"adresse\" IS NOT NULL AND \"adresse\" <> ''
http
left(\"fiche_web\", 4) = 'http'
Sinon, avec regex101, une regexp possible: (http|https):\\/\\/([\\w-]+(\\.[\\w-]+)+)
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.
Presentations talking about QGIS Server and Lizmap during this QGIS UC from 3Liz :
qgisuc_X
, replace X
by your numberqgisuc?X
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":"NAME Training
and an abstract about the purpose of the project. You can fill the author, organization, phone, email as well if you want.Layers
tab, make some layers visible by defaultTip
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.
Editing
with persons
and observations
Data
with municipalities
hidden
, with small h
, with species
and you can add OSM base layer (from the QGIS Browser, XYZ Tiles)hidden
, the name must be osm-mapnik
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.
persons
, change the default symbol using a single symbol.observations
, we can try Categorized using the field fk_id_specie
. You can use the QML already made (Vector layer properties \u27a1 Styles at the bottom \u27a1 Load styles).name
field for the source1:300 000
media/metadata.pdf
, a PDF link, stored in the folder media
(you can see it in the FTP client)https://en.wikipedia.org/wiki/French_Polynesia
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":"automatic
mode and check the results by clicking on a municipality.Tip
The automatic popup will use alias if available on the layer.
communes
vector layer properties, rendering tab, then HTML Maptip, check the generated HTML.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 :
[% \"name\" %]\n
by [% upper(\"name\") %]\n
[% \"population\" %]\n
<font color=\"[% if( \"population\" > 20000, 'black', 'red') %]\">[% \"population\" %]</font>\n
We want now to enable editing capabilities on a layer in the Lizmap interface, to let some users add some observations.
id
Required
and Optional
fk_id_person
:Watcher
name
fk_id_specie
:Species
species
, key column id
and value es_nom_commun
date
:Date
photo
: Photo
gender
: Gender
Male
, Female
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":"Landscape A4
.Example workshop
title
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":"PDF sheet
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":"count
, integer :relation_aggregate(\n relation:='observation_fk_id_person_fkey',\n aggregate:='count',\n expression:=\"id\"\n)\n
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.
label_species
(text) in the observations
layer to have the name :attribute(get_feature('species_aa247cf3_58c8_4852_8ada_1d707a593cfe', 'id', \"fk_id_specie\"),'es_nom_commun')\n
Add a pie chart on the persons
layer :
label_species
Count
id
Thanks \ud83d\ude0e
"},{"location":"workshop/workshop/","title":"Workshops","text":""},{"location":"workshop/workshop/#lizmap","title":"Lizmap","text":"Cet atelier concerne les utilisateurs de l'atelier Lizmap sur 1/2 journ\u00e9e.
qgis/theme_formation
: le dossier pour l'atelierqgis/theme_formation/media/metadata.pdf
: un fichier PDFCommen\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":"https://workshop.lizmap.com/osgeo_matin/
https://workshop.lizmap.com/osgeo_am/
theme formation
.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.
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":"Saisie
Donn\u00e9es
baselayers
** 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.
name
pour la source des \u00e9tiquettesAjouter des liens sur deux couches :
Fichiers PDF pour les observateurs :
media/metadata.pdf
(un fichier se trouvant d\u00e9j\u00e0 sur le serveur, ne pas faire l'envoi \u2757)media/votre_document.extension
et faire l'envoi vers le serveurLien HTML pour les communes : https://fr.wikipedia.org/wiki/Liste_des_communes_de_la_Polyn%C3%A9sie_fran%C3%A7aise
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":"commune
en mode Automatiquecommune
, onglet Affichage, puis Infobulle HTML, observer le code HTML.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 :
[% upper(\"name\") %]\n
<td style=\"color:[% if( \"population\" > 20000, 'black', 'red') %]\">[% \"population\" %]</td>\n
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.
id
Requis
et Optionel
fk_id_person
: Observateur
name
fk_id_specie
: Esp\u00e8ce
species
id
et es_nom_commun
date
: Date
photo
: Photo
gender
: Genre
M\u00e2le
, Femelle
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":"Landscape A4
.Example workshop
title
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":"Fiche commune PDF
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":"count
dans observateurs
de type entiers :relation_aggregate(\n relation:='observation_fk_id_person_fkey',\n aggregate:='count',\n expression:=\"id\"\n)\n
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.
label_species
(text) dans la couche observations
pour avoir le nom de l'esp\u00e8ce :attribute(get_feature('species_aa247cf3_58c8_4852_8ada_1d707a593cfe', 'id', \"fk_id_specie\"),'es_nom_commun')\n
Ajouter un camembert sur la couche des observateurs :
label_species
Count
id
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 :
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\uddf7100.0
Czech \ud83c\udde8\ud83c\uddff99.95
Romanian \ud83c\uddf7\ud83c\uddf499.95
Portuguese \ud83c\uddf5\ud83c\uddf999.07
Italian \ud83c\uddee\ud83c\uddf994.79
Polish (Poland) \ud83c\uddf5\ud83c\uddf184.61
Dutch \ud83c\uddf3\ud83c\uddf182.13
Japanese \ud83c\uddef\ud83c\uddf572.38
Ukrainian (Ukraine) \ud83c\uddfa\ud83c\udde668.18
Russian \ud83c\uddf7\ud83c\uddfa68.0
German \ud83c\udde9\ud83c\uddea63.74
Galician61.6
Slovak \ud83c\uddf8\ud83c\uddf059.03
Portuguese (Brazil) \ud83c\udde7\ud83c\uddf753.22
Swedish (Sweden) \ud83c\uddf8\ud83c\uddea53.09
Spanish \ud83c\uddea\ud83c\uddf852.27
Slovenian \ud83c\uddf8\ud83c\uddee47.5
Hungarian (Hungary) \ud83c\udded\ud83c\uddfa46.13
Finnish \ud83c\uddeb\ud83c\uddee43.12
Basque30.4
Greek \ud83c\uddec\ud83c\uddf724.6
Bulgarian \ud83c\udde7\ud83c\uddec22.41
Norwegian \ud83c\uddf3\ud83c\uddf415.6
Spanish (Argentina) \ud83c\udde6\ud83c\uddf75.08
Indonesian \ud83c\uddee\ud83c\udde94.05
Serbian (Cyrillic) \ud83c\uddf7\ud83c\uddf81.13
Arabic0.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
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\uddf7100.0
Czech \ud83c\udde8\ud83c\uddff99.95
Romanian \ud83c\uddf7\ud83c\uddf499.95
Portuguese \ud83c\uddf5\ud83c\uddf999.07
Italian \ud83c\uddee\ud83c\uddf994.79
Polish (Poland) \ud83c\uddf5\ud83c\uddf184.61
Dutch \ud83c\uddf3\ud83c\uddf182.13
Japanese \ud83c\uddef\ud83c\uddf572.38
Ukrainian (Ukraine) \ud83c\uddfa\ud83c\udde668.18
Russian \ud83c\uddf7\ud83c\uddfa68.0
German \ud83c\udde9\ud83c\uddea63.74
Galician61.6
Slovak \ud83c\uddf8\ud83c\uddf059.03
Portuguese (Brazil) \ud83c\udde7\ud83c\uddf753.22
Swedish (Sweden) \ud83c\uddf8\ud83c\uddea53.09
Spanish \ud83c\uddea\ud83c\uddf852.27
Slovenian \ud83c\uddf8\ud83c\uddee47.5
Hungarian (Hungary) \ud83c\udded\ud83c\uddfa46.13
Finnish \ud83c\uddeb\ud83c\uddee43.12
Basque30.4
Greek \ud83c\uddec\ud83c\uddf724.6
Bulgarian \ud83c\udde7\ud83c\uddec22.41
Norwegian \ud83c\uddf3\ud83c\uddf415.6
Spanish (Argentina) \ud83c\udde6\ud83c\uddf75.08
Indonesian \ud83c\uddee\ud83c\udde94.05
Serbian (Cyrillic) \ud83c\uddf7\ud83c\uddf81.13
Arabic0.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":"To manage plugins on a server, you can use QGIS-Plugin-Manager.
For managing the plugins.xml
, you can use QGIS-Plugin-Repo.
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 :
You need to download and install the software FileZilla Client from this link : https://filezilla-project.org/download.php?type=client
When the installation is done, you can register the credentials for the Lizmap FTP server.
FTP
Use explicit FTP over TLS if available
Normal
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.
6 Click ok for this server.
7 By using the second button in the toolbar, you can now connect to the FTP server easily.
Description of the user interface :
With a drag&drop, we can copy files from the computer to the server.
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":"Vous devez t\u00e9l\u00e9charger et installer le logiciel FileZilla Client depuis ce lien : https://filezilla-project.org/download.php?type=client
Une fois l'installation effectu\u00e9e, vous pouvez enregistrer la connexion vers le serveur FTP.
FTP
Use explicit FTP over TLS if available
Normal
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.
6 Validez l'ajout de cette connexion.
7 En utilisant le deuxi\u00e8me bouton dans la barre d'outils, vous pouvez vous connecter au serveur FTP
Description de l'interface :
Par glisser/d\u00e9poser, nous allons d\u00e9placer des fichiers de votre ordinateur vers le serveur.
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.
Fill required information with :
Plugin 3Liz XXX
.https://github.com/3liz/lizmap-plugin/releases/latest/download/plugins.xml
https://packages.3liz.org/
, it's high probability that your repository requires an authentification.Before going to install the plugin, do not forget to :
Go back to the All tab to see all available plugin and search for the plugin name in the search bar. You should be able to install it.
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.
3Liz authentification
Il faut se rendre dans le gestionnaire des extensions.
Ensuite, aller dans l'onglet Param\u00e8tres.
Plugin 3Liz XXX
https://github.com/3liz/lizmap-plugin/releases/latest/download/plugins.xml
https://packages.3liz.org/
, il y a de fortes chances que votre d\u00e9p\u00f4t requi\u00e8re une authentification.Cliquer sur Recharger le d\u00e9p\u00f4t pour r\u00e9cup\u00e9rer le contenu de ce nouveau d\u00e9p\u00f4t. Ceci n'installe pas l'extension, cela ajoute seulement l'adresse du serveur pour trouver des nouvelles extensions.
Avant d'installer l'extension, ne pas oublier :
Retourner sur l'onglet Toutes pour voir toutes les extensions disponibles et taper le nom de l'extension dans la barre de recherche. Vous devriez la voir et \u00eatre capable de l'installer.
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.
Remplir avec les informations requises :
3Liz authentification
Cliquer Enregistrer
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":"3Liz
for instancehttps://github.com/3liz/QGIS-Resources.git
3liz
and click install.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":"3Liz
https://github.com/3liz/QGIS-Resources.git
3liz
et cliquez sur installer.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":"You need to download and install WinSCP software from this link: https://winscp.net/eng/download.php
After installation is complete, you can register the connection to the FTP server.
New session
located at the top left of the window.FTP
Explicit TSL / SSL encryption
21
Session
tab thenSites
and click on your site.Description of the user interface :
With a drag&drop, we can copy files from the computer to the server.
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":"Vous devez t\u00e9l\u00e9charger et installer le logiciel WinSCP depuis ce lien: https://winscp.net/eng/download.php
Une fois l'installation effectu\u00e9e, vous pouvez enregistrer la connexion vers le serveur FTP.
Nouvelle session
situ\u00e9 en haut \u00e0 gauche de la fen\u00eatre.FTP
Chiffrement TSL/SSL explicite
21
Session
puis Sites
et cliquez sur votre site.Description de l'interface
Par glisser/d\u00e9poser, nous allons d\u00e9placer des fichiers de votre ordinateur vers le serveur.
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":"bornes_incendie
dans le projet QGISEn vous inspirant de la documenation, cr\u00e9er le SQL ainsi que le JSON de l'action. Celle-ci doit :
%1
et est \u00e0 %2
m\", o\u00f9 %1
est l'identifant de la borne et %2
la distance en m\u00e8trequery_to_geojson
disponible ici.lizmap_get_data
. SET SEARCH_PATH = z_formation;\n-- Create a query depending on the action, layer and feature and returns a GeoJSON.\nCREATE OR REPLACE FUNCTION lizmap_get_data(parameters json)\nRETURNS json AS\n$$\nDECLARE\n feature_id varchar;\n layer_name text;\n layer_table text;\n layer_schema text;\n action_name text;\n sqltext text;\n datasource text;\n ajson json;\nBEGIN\n\n action_name:= parameters->>'action_name';\n feature_id:= (parameters->>'feature_id')::varchar;\n layer_name:= parameters->>'layer_name';\n layer_schema:= parameters->>'layer_schema';\n layer_table:= parameters->>'layer_table';\n\n IF action_name = 'plus_proche_borne_incendie' THEN\n -- Dessine une ligne jusqu'\u00e0 la plus proche borne \u00e0 incendie\n datasource:= format('\n WITH tmp_logement AS (\n SELECT geom FROM logement WHERE id = ''%1$s''\n )\n SELECT\n id, ST_Distance(bornes_incendie.geom, logement.geom),\n ''La plus proche borne a pour id '' || bornes_incendie.id || '' et est \u00e0 '' || ST_Distance(bornes_incendie.geom, logement.geom)::integer || ''m'' AS message,\n ST_MakeLine(logement.geom, bornes_incendie.geom) AS geom,\n bornes_incendie.id AS borne_id\n FROM\n bornes_incendie,\n tmp_logement logement\n ORDER BY ST_Distance(bornes_incendie.geom, logement.geom)\n LIMIT 1\n ',\n feature_id\n );\n ELSE\n -- Default : return geometry\n datasource:= format('\n SELECT\n %1$s AS id,\n ''The geometry of the object have been displayed in the map'' AS message\n geom\n FROM \"%2$s\".\"%3$s\"\n WHERE id = %1$s\n ',\n feature_id,\n layer_schema,\n layer_table\n );\n\n END IF;\n\n SELECT query_to_geojson(datasource)\n INTO ajson\n ;\n RETURN ajson;\nEND;\n$$\nLANGUAGE 'plpgsql'\nIMMUTABLE STRICT;\n\nCOMMENT ON FUNCTION lizmap_get_data(json) IS 'Generate a valid GeoJSON from an action described by a name, PostgreSQL schema and table name of the source data, a QGIS layer name, a feature id and additional options.';\n
[\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":"Tip
Regarder uniquement le formulaire dans QGIS bureautique dans un premier temps, pendant les diff\u00e9rentes \u00e9tapes, en ouvrant une session d'\u00e9dition.
logement
: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.
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.
adresse
:NULL
ET non vide.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.
code_insee
:intersects( @geometry, @current_geometry )
type
:studio
\u27a1 Studio
appartement
\u27a1 Appartement
maison
\u27a1 Maison
villa
\u27a1 Villa
nb_pieces
:pmr
:photo
:../media/specific_media_folder
Images (*.png *.jpg *.jpeg)
besoin_renov
:Indertermin\u00e9
true
\u27a1 Oui
false
\u27a1 Non
fiche_web
:http
date_construction
dd/MM/yyyy
\"date_construction\" is null or \"date_construction\" <= now()
date_revision_fiche
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 :
Pour permettre l'ajout des \u00e9tats des lieux, il faut :
\"adresse\" IS NOT NULL AND \"adresse\" <> ''
http
left(\"fiche_web\", 4) = 'http'
Sinon, avec regex101, une regexp possible: (http|https):\\/\\/([\\w-]+(\\.[\\w-]+)+)
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.
Presentations talking about QGIS Server and Lizmap during this QGIS UC from 3Liz :
qgisuc_X
, replace X
by your numberqgisuc?X
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":"NAME Training
and an abstract about the purpose of the project. You can fill the author, organization, phone, email as well if you want.Layers
tab, make some layers visible by defaultTip
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.
Editing
with persons
and observations
Data
with municipalities
hidden
, with small h
, with species
and you can add OSM base layer (from the QGIS Browser, XYZ Tiles)hidden
, the name must be osm-mapnik
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.
persons
, change the default symbol using a single symbol.observations
, we can try Categorized using the field fk_id_specie
. You can use the QML already made (Vector layer properties \u27a1 Styles at the bottom \u27a1 Load styles).name
field for the source1:300 000
media/metadata.pdf
, a PDF link, stored in the folder media
(you can see it in the FTP client)https://en.wikipedia.org/wiki/French_Polynesia
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":"automatic
mode and check the results by clicking on a municipality.Tip
The automatic popup will use alias if available on the layer.
communes
vector layer properties, rendering tab, then HTML Maptip, check the generated HTML.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 :
[% \"name\" %]\n
by [% upper(\"name\") %]\n
[% \"population\" %]\n
<font color=\"[% if( \"population\" > 20000, 'black', 'red') %]\">[% \"population\" %]</font>\n
We want now to enable editing capabilities on a layer in the Lizmap interface, to let some users add some observations.
id
Required
and Optional
fk_id_person
:Watcher
name
fk_id_specie
:Species
species
, key column id
and value es_nom_commun
date
:Date
photo
: Photo
gender
: Gender
Male
, Female
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":"Landscape A4
.Example workshop
title
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":"PDF sheet
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":"count
, integer :relation_aggregate(\n relation:='observation_fk_id_person_fkey',\n aggregate:='count',\n expression:=\"id\"\n)\n
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.
label_species
(text) in the observations
layer to have the name :attribute(get_feature('species_aa247cf3_58c8_4852_8ada_1d707a593cfe', 'id', \"fk_id_specie\"),'es_nom_commun')\n
Add a pie chart on the persons
layer :
label_species
Count
id
Thanks \ud83d\ude0e
"},{"location":"workshop/workshop/","title":"Workshops","text":""},{"location":"workshop/workshop/#lizmap","title":"Lizmap","text":"Cet atelier concerne les utilisateurs de l'atelier Lizmap sur 1/2 journ\u00e9e.
qgis/theme_formation
: le dossier pour l'atelierqgis/theme_formation/media/metadata.pdf
: un fichier PDFCommen\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":"https://workshop.lizmap.com/osgeo_matin/
https://workshop.lizmap.com/osgeo_am/
theme formation
.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.
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":"Saisie
Donn\u00e9es
baselayers
** 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.
name
pour la source des \u00e9tiquettesAjouter des liens sur deux couches :
Fichiers PDF pour les observateurs :
media/metadata.pdf
(un fichier se trouvant d\u00e9j\u00e0 sur le serveur, ne pas faire l'envoi \u2757)media/votre_document.extension
et faire l'envoi vers le serveurLien HTML pour les communes : https://fr.wikipedia.org/wiki/Liste_des_communes_de_la_Polyn%C3%A9sie_fran%C3%A7aise
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":"commune
en mode Automatiquecommune
, onglet Affichage, puis Infobulle HTML, observer le code HTML.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 :
[% upper(\"name\") %]\n
<td style=\"color:[% if( \"population\" > 20000, 'black', 'red') %]\">[% \"population\" %]</td>\n
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.
id
Requis
et Optionel
fk_id_person
: Observateur
name
fk_id_specie
: Esp\u00e8ce
species
id
et es_nom_commun
date
: Date
photo
: Photo
gender
: Genre
M\u00e2le
, Femelle
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":"Landscape A4
.Example workshop
title
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":"Fiche commune PDF
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":"count
dans observateurs
de type entiers :relation_aggregate(\n relation:='observation_fk_id_person_fkey',\n aggregate:='count',\n expression:=\"id\"\n)\n
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.
label_species
(text) dans la couche observations
pour avoir le nom de l'esp\u00e8ce :attribute(get_feature('species_aa247cf3_58c8_4852_8ada_1d707a593cfe', 'id', \"fk_id_specie\"),'es_nom_commun')\n
Ajouter un camembert sur la couche des observateurs :
label_species
Count
id
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 @@