Skip to content
Snippets Groups Projects

Compare revisions

Changes are shown as if the source revision was being merged into the target revision. Learn more about comparing revisions.

Source

Select target project
No results found
Select Git revision

Target

Select target project
  • Documentation/doc_module_vmap
  • Gwendal/doc_module_vmap
  • carto/doc_module_vmap
3 results
Select Git revision
Show changes
Commits on Source (42)
Showing
with 711 additions and 25 deletions
# Module anomalies
Aucune interface d'administration n'a été développée pour le module anomalie.
L'ensemble des paramètres à éditer sont disponibles dans le fichier :
/var/www/vmap/vas/rest/conf/anomalies/properties.inc
Ce fichier permet notamment de configurer le corps des emails qui sont envoyés.
## Paramètres variables et paramétrables dans les emails
Pour mettre des valeurs dynamiques dans un email il faut utiliser la syntaxe suivante :
```{{ anomaly.CLE }}```
Voici l'ensemble des variables qui peuvent être utilisées dans le corps des emails :
- **anomalies_id** -> Identifiant de l'anomalie
- **status_id** -> Identifiant du statut de l'anomalie
- **status_name** -> Nom du statut de l'anomalie
- **status_color** -> Couleur du statut de l'anomalie
- **theme_id** -> Identifiant du thème de l'anomalie
- **theme_name** -> Nom du thème de l'anomalie
- **theme_short_name** -> Abréviation du nom du thème de l'anomalie
- **title** -> Titre de l'anomalie
- **description** -> Description de l'anomalie
- **files** -> Nom des fichiers ajoutés avec le formulaire de l'anomalie
- **contact** -> Champ contact du formulaire de l'anomalie
- **user_id** -> Identifiant de l'utilisateur qui a créé l'anomalie
- **login** -> Login de l'utilisateur qui a créé l'anomalie
- **user_name** -> Nom de l'utilisateur qui a créé l'anomalie
- **user_email** -> Email de l'utilisateur qui a créé l'anomalie
- **anomalies_date** -> Date de la création de l'anomalie
- **last_update_date** -> Date de la dernière mise à jour de l'anomalie
- **closing_date** -> Date de clotûre de l'anomalie
- **map_id** -> Identifiant de la carte sur laquelle utilisateur était connecté lors de l'ajout de l'anomalie
- **admin_comment** -> Commentaire de l'administrateur
## Propriété importante
Pour que le module fonctionne correctement il est important de définir une valeur à cette propriété.
### $properties["anomalies_email_admin"]
Doit contenir l'adresse email de l'administrateur qui recevra les emails.
Aucune valeur par défaut n'a été définie.
## Propriété générales des emails
### $properties["email_object_user_create_anomaly"]
Objet de l'email envoyé à l'utilisateur lors de la création d'une anomalie
Valeur par défaut:
```
"L'anomalie VMAP n°{{anomaly.anomalies_id}} a été créé"
```
### $properties["email_user_create_anomaly"]
Contenu de l'email envoyé à l'utilisateur lors de la création d'une anomalie
Valeur par défaut:
``` HTML
"Bonjour,
<br/><br/>
Vous venez de créer une nouvelle anomalie le {{anomaly.anomalies_date}} :
<br/>
Identifiant : {{anomaly.anomalies_id}}
<br/>
Thème : {{anomaly.theme_name}}
<br/>
Titre : {{anomaly.title}}
<br/>
Description : {{anomaly.description}}
<br/>
Coordonnées pour vous recontacter : {{anomaly.contact}}
<br/><br/>
Nous vous remercions pour votre retour et y donnerons suite dès que possible.
<br/>
Vous pouvez suivre la prise en charge de votre demande depuis l’onglet « Anomalies » du MODULE ANOMALIES dans vmap.
<br/><br/>
Bien cordialement,
<br/>
L’équipe SIG"
```
### $properties["email_object_user_update_anomaly"]
Objet de l'email envoyé à l'utilisateur lors de la mise à jour d'une anomalie
Valeur par défaut:
```
"L'anomalie VMAP n°{{anomaly.anomalies_id}} a été mise à jour"
```
### $properties["email_user_update_anomaly"]
Contenu de l'email envoyé à l'utilisateur lors de la mise à jour d'une anomalie
Valeur par défaut:
``` HTML
"Bonjour,
<br/><br/>
La modification de votre anomalie n°{{anomaly.anomalies_id}} a bien été enregistrée le {{anomaly.last_update_date}}.
<br/>
Identifiant : {{anomaly.anomalies_id}}
<br/>
Thème : {{anomaly.theme_name}}
<br/>
Titre : {{anomaly.title}}
<br/>
Description : {{anomaly.description}}
<br/>
Coordonnées pour vous recontacter : {{anomaly.contact}}
<br/><br/>
Bien cordialement,
<br/>
L’équipe SIG"
```
### $properties["email_object_user_status_in_progress_anomaly"]
Objet de l'email envoyé à l'utilisateur lorsque le statut de l'anomalie change pour "En cours de traitement"
Valeur par défaut:
```
"L'anomalie VMAP n°{{anomaly.anomalies_id}} est en cours de traitement"
```
### $properties["email_user_status_in_progress_anomaly"]
Contenu de l'email envoyé à l'utilisateur lorsque le statut de l'anomalie change pour "En cours de traitement"
Valeur par défaut:
``` HTML
"Bonjour,
<br/><br/>
Votre anomalie n°{{anomaly.anomalies_id}} « {{anomaly.title}} » du {{anomaly.anomalies_date}} est en cours de traitement.
<br/><br/>
Bien cordialement,
<br/>
L’équipe SIG"
```
### $properties["email_object_user_status_waiting_anomaly"]
Objet de l'email envoyé à l'utilisateur lorsque le statut de l'anomalie change pour "En attente d'information"
Valeur par défaut:
```
"L'anomalie VMAP n°{{anomaly.anomalies_id}} est en attente d'information"
```
### $properties["email_user_status_waiting_anomaly"]
Contenu de l'email envoyé à l'utilisateur lorsque le statut de l'anomalie change pour "En attente d'information"
Valeur par défaut:
``` HTML
"Bonjour,
<br/><br/>
Nous sommes en attente d’informations pour le traitement de votre anomalie n°{{anomaly.anomalies_id}} « {{anomaly.title}} » du {{anomaly.anomalies_date}}.
<br/>
N’hésitez pas à nous recontacter pour plus de précisions.
<br/><br/>
Bien cordialement,
<br/>
L’équipe SIG"
```
### $properties["email_object_user_status_cancel_anomaly"]
Objet de l'email envoyé à l'utilisateur lorsque le statut de l'anomalie change pour "Annuler"
Valeur par défaut:
```
"L'anomalie VMAP n°{{anomaly.anomalies_id}} a été annulée"
```
### $properties["email_user_status_cancel_anomaly"]
Contenu de l'email envoyé à l'utilisateur lorsque le statut de l'anomalie change pour "Annuler"
Valeur par défaut:
``` HTML
"Bonjour,
<br/><br/>
Votre anomalie n°{{anomaly.anomalies_id}} « {{anomaly.title}} » du {{anomaly.anomalies_date}} a été annulée, à votre demande ou par votre administrateur SIG.
<br/>
N’hésitez pas à nous recontacter pour plus de précisions.
<br/><br/>
Bien cordialement,
<br/>
L’équipe SIG"
```
### $properties["email_object_user_status_finished_anomaly"]
Objet de l'email envoyé à l'utilisateur lorsque le statut de l'anomalie change pour "Terminer"
Valeur par défaut:
```
"L'anomalie VMAP n°{{anomaly.anomalies_id}} a été traitée"
```
### $properties["email_user_status_finished_anomaly"]
Contenu de l'email envoyé à l'utilisateur lorsque le statut de l'anomalie change pour "Terminer"
Valeur par défaut:
``` HTML
"Bonjour,
<br/><br/>
Votre anomalie n°{{anomaly.anomalies_id}} « {{anomaly.title}} » du {{anomaly.anomalies_date}} a été traitée, la demande est clôturée le {{anomaly.closing_date}}.
<br/>
Remarques éventuelles : {{anomaly.admin_comment}}.
<br/><br/>
Merci encore pour vos retours,
<br/><br/>
Bien cordialement,
<br/>
L’équipe SIG"
```
## Propriété des objets et contenus des emails pour l'administrateur
### $properties["email_object_admin_create_anomaly"]
Objet de l'email envoyé à l'administrateur lors de la création d'une anomalie.
Valeur par défaut:
```
"Anomalie VMAP n°{{anomaly.anomalies_id}} – {{anomaly.theme_name}} – {{anomaly.title}}"
```
### $properties["email_admin_create_anomaly"]
Contenu de l'email envoyé à l'administrateur lors de la création d'une anomalie.
Valeur par défaut:
``` HTML
"MODULE ANOMALIE VMAP
<br/><br/>
Une nouvelle anomalie a été signalée le {{anomaly.anomalies_date}} :
<br/>
Identifiant : {{anomaly.anomalies_id}}
<br/>
Thème : {{anomaly.theme_name}}
<br/>
Titre : {{anomaly.title}}
<br/>
Description : {{anomaly.description}}
<br/>
Coordonnées pour vous recontacter : {{anomaly.contact}}
<br/><br/>
Utilisateur : {{anomaly.login}}
<br/>
Coordonnées : {{anomaly.user_email}}"
```
### $properties["email_object_admin_update_anomaly"]
Objet de l'email envoyé à l'administrateur lors de la mise à jour d'une anomalie.
Valeur par défaut:
```
"Anomalie VMAP n°{{anomaly.anomalies_id}} – {{anomaly.theme_name}} – {{anomaly.title}}"
```
### $properties["email_admin_update_anomaly"]
Contenu de l'email envoyé à l'administrateur lors de la mise à jour d'une anomalie.
Valeur par défaut:
``` HTML
"MODULE ANOMALIE VMAP
<br/><br/>
L’ anomalie n°{{anomaly.anomalies_id}} a été modifiée le {{anomaly.last_update_date}}. :
<br/>
Identifiant : {{anomaly.anomalies_id}}
<br/>
Thème : {{anomaly.theme_name}}
<br/>
Titre : {{anomaly.title}}
<br/>
Description : {{anomaly.description}}
<br/>
Coordonnées pour vous recontacter : {{anomaly.contact}}
<br/><br/>
Utilisateur : {{anomaly.login}}
<br/>
Coordonnées : {{anomaly.user_email}}"
```
### $properties["email_object_admin_status_change_anomaly"]
Objet de l'email envoyé à l'administrateur lorsque le statut de l'anomalie change.
Valeur par défaut:
```
"Anomalie VMAP n°{{anomaly.anomalies_id}} – {{anomaly.theme_name}} – {{anomaly.title}}"
```
### $properties["email_admin_status_change_anomaly"]
Contenu de l'email envoyé à l'administrateur lorsque le statut de l'anomalie change.
Valeur par défaut:
``` HTML
"MODULE ANOMALIE VMAP
<br/><br/>
L’anomalie n°{{anomaly.anomalies_id}} « {{anomaly.title}} » du {{anomaly.anomalies_date}} a pris le statut {{anomaly.status_name}} le {{anomaly.last_update_date}}.
<br/><br/>
Utilisateur : {{anomaly.login}}
<br/>
Coordonnées : {{anomaly.user_email}}"
```
### $properties["email_object_admin_finished_anomaly"]
Objet de l'email envoyé à l'administrateur lorsque le statut de l'anomalie change pour "Terminer".
Valeur par défaut:
```
"Anomalie VMAP n°{{anomaly.anomalies_id}} – {{anomaly.theme_name}} – {{anomaly.title}}"
```
### $properties["email_admin_finished_anomaly"]
Contenu de l'email envoyé à l'administrateur lorsque le statut de l'anomalie change pour "Terminer".
Valeur par défaut:
``` HTML
"MODULE ANOMALIE VMAP
<br/><br/>
L’anomalie n°{{anomaly.anomalies_id}} « {{anomaly.title}} » du {{anomaly.anomalies_date}} a été clôturée le {{anomaly.closing_date}}.
<br/><br/>
Remarques : {{anomaly.admin_comment}}.
<br/><br/>
Utilisateur : {{anomaly.login}}
<br/>
Coordonnées : {{anomaly.user_email}}"
```
## Autre propriété
### $properties["anomalies_max_zoom"]
Nombre entre 1 et 24, défini le niveau de zoom maximum.
Valeur permettant de définir le niveau de zoom utilisé lorsqu'un utilisateur consulte (cartographiquement) une anomalie.
Cette valeur est une valeur maximale. Si l'anomalie est de type "multi-point" le centrage cartographique sera réalisé de telle manière à ce que l'ensemble des points soient visibles.
Cette valeur est comprise entre 1 et 24.
Valeur par défaut:
```
11
```
......@@ -38,6 +38,10 @@ Après avoir sélectionné le type de flux à exploiter, nommer le service, le d
Une fois testé, cliquer sur Créer pour confirmer la création du service.
### Le service xyz
Depuis la version 2020.02 deux paramètres ont été rajoutés pour les services XYZ. Un niveau de zoom minimum et un niveau de zoom maximum mettre de définir les niveaux à partir desquels les images ne seront plus chargées.
![](../images/service_xyz_zoom.png)
## Gestion des calques
......@@ -48,7 +52,9 @@ Dans vMap, un calque est un ensemble de couches provenant d'un seul et même ser
Dans vMap une carte est un ensemble de calques issues de un ou plusieurs services WMS.
### Clonage de carte
Le bouton cloner permet de cloner l'ensemble des paramètres d'une carte. Il reprend notemment l'ensemble des informations attributaires de la carte clonée mais aussi l'ensemble des calques et leurs caractéristiques (opacité, visibilité par défaut, superposition).
## Thèmes des calques
......
......@@ -59,6 +59,105 @@ vous pouvez y intégrer le résultat d'un des attributs de la requête SQL Summa
![](../../images/liste_requeteur.png)
### 2.1 Description de certains champs
#### Géométrie saisissable, modifiable
![](../../images/conf_bo/conf_bo_geom.png)
- Géométrie saisissable : Option disponible si le nom de la cononne géométrique est définie.
- Oui : Saisie d 'une nouvelle géométrie autorisée.
- Non : Impossibilité de saisir une nouvelle géométrie.
Ce paramétrage peut être utile si la table comporte un champ géométrique mais que la géométrie de l'objet est calculée dans un second temps (dans une vue par exemple).
Au moment de d'ajouter un objet ![](../../images/bouton_insertion.png), si l'option vaut non les éléments barrés n'apparaissent pas.
![](../../images/conf_bo/bo_geom_saisissable_non.png)
- Géométrie modifiable : Option disponible si le nom de la cononne géométrique est définie.
- Oui : Modification de la géométrie autorisée.
- Non : Impossibilité de modifier une géométrie.
Ce paramétrage peut être utile si la table comporte un champ géométrique mais que la géométrie de l'objet est modifiée dans un second temps (dans une vue par exemple).
Si l'option vaut non :
![](../../images/conf_bo/bo_geom_editable_non1.png)
![](../../images/conf_bo/bo_geom_editable_non2.png)
#### Mode de recherche du champ localisation
![](../../images/conf_bo/conf_bo_mode_recherche.png)
Les modes de recherche pour le champs localisation sont:
- Stricte
- Cherche exactement le texte
- Début de chaine
- Cherche le texte saisie (dans un seul bloc) en début de chaîne
- En sql, cela correspond à WHERE [le_champ] LIKE "texte_recherché%"
- Fin de chaine
- Cherche le texte saisie (dans un seul bloc) comme une fin de chaîne
- En sql, cela correspond à WHERE [le_champ] LIKE "%texte_recherché"
- Milieu de chaine
- Cherche le texte saisie (dans un seul bloc) dans tout la chaîne
- En sql, cela correspond à LIKE "%texte_recherché%"
- Texte plein
- Recherche un ou plusieurs mots de manière indépendante dans le texte.
- Corresponds à la recherche "plain text" de postgresql
- Le résultat d'une recherche "texte plein" sera prétraité, trié et retourné à l'utilisateur en fonction d'un "score". Les meilleurs résultats seront ceux dont le score sera le plus important.
Les avantages de la recherche texte plein sont:
- Une recherche plus large car chaque mot est cherché individuellement.
- Un tri plus pertinant grâce à un score attribué à chaque mot
Exemple:
Recherche en Debut de chaîne:
![](../../images/conf_bo/bo_recherche_milieu_chaine.png)
Recherche en Texte plein: La recheche texte plein cherche les mots individuellement.
![](../../images/conf_bo/bo_recherche_plein_text.png)
#### Objet localisable, sélectionnable et requêtable
![](../../images/conf_bo/conf_bo_loc_select_req.png)
![](../../images/conf_bo/conf_bo_generale.png)
- **Sélectionnable**: Affiche l'objet dans les listes des outils i et insertion
![](../../images/conf_bo/bo_selectionnable.png)
![](../../images/conf_bo/bo_insert.png)
- **Localisable**: Affiche l'objet dans la liste de l'outil de localisation
![](../../images/conf_bo/bo_localisable.png)
- **Requêtable**: Affiche l'objet dans les listes de l'outil i+
![](../../images/conf_bo/bo_requetable.png)
#### Objet disponible en édition multiple
![](../../images/conf_bo/conf_bo_multiple_edition.png)
- **Disponible en édition multiple**: Affiche dans le requêteur un bouton permettant de modifier plusieurs enregistrements
![](../../images/conf_bo/bo_multiple_edition.png)
Le bouton "modifier les enregistrements" ouvre le formulaire d'édition multiple.
## 3. Formulaires
### 3.1. Définitions
......@@ -106,7 +205,7 @@ formulaires des objets métier.
Le studio est accessible via la section Formulaire après avoir édité un
objet métier.
![](../../images/formulaire_studio.png)
![](../../images/creation_objet_metier.png)
#### 3.2.1. Génération automatique des formulaires
......@@ -140,7 +239,7 @@ La fenêtre suivante apparaît et l'utilisateur peut :
Le studio est divisé en quatre principales zones de gestion des
formulaires :
![](../../studio_4_zones.png)
![](../../images/studio_4_zones.png)
##### 3.2.2.1. La zone d'administration du fichier
......@@ -207,6 +306,18 @@ type d'attribut.
![](../../images/formulaire_zone_definition.png)
Depuis la version 2020.02 de vMap, il est possible d'accéder aux informations de connexion de l'objet métier directement dans les formulaires (consultation, saisi, modification).
3 nouvelles variables sont ainsi disponibles :
- database
- schema
- table
Exemple:
![](../../images/vmap_bo_studio_database.png)
#### 3.2.3. Utilisation du studio
Pour comprendre comment utiliser le studio consulter les documents suivants
......
......@@ -24,13 +24,30 @@ informations de chacun des éléments est généré.
## 2. Utilisation
Pour générer un rapport sur objet métier, sélectionner un objet sur la
carte en cliquant dessus, l'ajouter au panier, puis sélectionner les
objets dans le panier et enfin à l'aide du bouton "Rapports", générer le
rapport voulu.
### 1 - Depuis le panier
Pour générer un rapport sur objet métier depuis le panier, sélectionner un objet sur la carte en cliquant dessus et l'ajouter au panier
Une fois dans le panier, sélectionner les objets et générer le rapport voulu à l'aide du bouton "Rapports" (en haut à droite du panier).
![](../../images/creation_rapport_vmap.png)
Depuis vMap 2020.02, la création d'un rapport depuis le panier donne la possibilité de sélectionner un style. Il faut néemmoins que ce dernier soit associé au rapport ainsi qu'à l'utilisateur qui est connecté.
Si aucun style n'est associé au rapport, il se génère directement.
![](../../images/rapport_vmap_styles.png)
### 2 - Depuis l'infobulle
![](../../images/rapport_vmap_objet.png)
![](../../images/rapport_vmap_objets.png)
Pour générer un rapport sur objet métier depuis les infobulles de vMap, sélectionner un objet sur la carte en cliquant dessus puis cliquer pis ouvrir le menu déroulant de l'infobulle permettant de générer un "Rapport sur ces objets".
Si un style est associé à l'utilisateur connecté ainsi qu'au rapport, l'application permettra de choisir le style dans une fenêtre.
![](../../images/rapport_vmap_modal.png)
## 3. Administration
L'onglet Rapports du menu Développement permet la création, l'édition et
......@@ -45,6 +62,7 @@ Dans l'interface d'administration renseigner les éléments suivants :
- Objet métier : objet métier sur lequel le rapport doit être associé
- Rapport sur plusieurs éléments : pour générer un ou plusieurs
documents lors de sélections multiples
- Active les styles : permet d'ajouter un style à un rapport
- Définition HTML : permet de configurer la mise en page
- Objets JSON : permet une configuration plus avancée
......@@ -52,7 +70,7 @@ Dans l'interface d'administration renseigner les éléments suivants :
### 3.1. Configuration de la définition HTML
Le bloc de défintion HTML permet de configurer la mise en page du
Le bloc de définition HTML permet de configurer la mise en page du
rapport. Il est recommandé de procéder en trois parties :
- le style : balise style qui contiend la définition CSS à utiliser.
......@@ -123,7 +141,7 @@ Exemple:
"type":"map",
"target":"#map_image",
"map_id":120,
"resolution_coeff":1,
"features_zoom":400,
"scale_target":"map_scale"
}, {
"type":"webservice",
......@@ -151,8 +169,9 @@ de type "map" avec les paramètres suivants :
- target : cible sur laquelle doit se poser la carte ("\#" +
l'identifiant de votre balise image)
- map_id : identifiant de la carte à utiliser
- resolution_coeff : coefficient de résolution
- scale_target : nom de la variable qui contiend l'échelle de la
- features_zoom : coefficient de zoom par rapport à la feature où la valeur
100 correspondrait à un zoom maximum.
- scale_target : nom de la variable qui contient l'échelle de la
carte dans le template HTML
Exemple:
......@@ -162,7 +181,7 @@ Exemple:
"type":"map",
"target":"#map_image",
"map_id":120,
"resolution_coeff":1,
"features_zoom":400,
"scale_target":"map_scale"
}
```
......@@ -427,7 +446,7 @@ setTimeout(function () {
"type":"map",
"target":"#map_image",
"map_id":120,
"resolution_coeff":1,
"features_zoom":400,
"scale_target":"map_scale"
}, {
"type":"webservice",
......
......@@ -87,3 +87,90 @@ END
Enfin il faudra au travers du formulaire du calque définir que ce dernier est interrogeable au travers de la requête GetFeatureInfo.
![Administration couche GetFeatureInfo](../images/getfeatureinfo/admin_calque.jpg)
### Retour du GetFeatureInfo au format GML
La configuration du GetFeatureInfo réalisée ci-dessus permet d'obtenir des résultats au format "text/html", le format exploité par vMap. Afin de retourner un résultat au format GML, plusieurs étapes sont à réaliser. Malgré tout, ce résultat ne pourra être exploité dans l'application. Seul un logiciel tier aura la possibilité de le faire. Dans la documentation qui va suivre, allons donc détailler l'ensemble des étapes à réaliser pour retourner en GML le résultat d'une requête GetFeareInfo. Toutes les étapes ci-dessous n'impacteront pas le fonctionnement normal de vMap. Ainsi :
* Etape 1 : Créer un nouvel objet web avec la définition ci-dessous en adaptant les paramètres (wms_onlineresource, wms_srs...) si nécessaire :
```
WEB
METADATA
"wms_title" "{WMSSERVICE_ID}"
"wms_onlineresource" "{MS_CGI_URL}public/{WMSSERVICE_ID}"
"wms_getfeatureinfo_formatlist" "application/vnd.ogc.gml"
"wms_feature_info_mime_type" "gml"
"wms_srs" "EPSG:4326 EPSG:2154 EPSG:3857"
"wms_enable_request" "*"
END
# Les attributs TEMPLATE, IMAGEPATH et IMAGEURL sont ajoutés dynamiquement lors des tests. Ils sont inutiles en production
END
```
Par rapport à un objet web "standard" de vMap, le paramètre `"wms_getfeatureinfo_formatlist" "application/vnd.ogc.gml"` a été ajouté, la valeur `"gml"` a remplacé la valeur `"text/html"` dans le paramètre `"wms_feature_info_mime_type"`.
* Etape 2 : Créer un nouveau Flux wms public et lui affecter l'objet web créé à l'étape 1.
* Etape 3 : Créer un nouvelle métadonnée contenant le paramètre `"gml_include_items" "all"`
Exemple :
```
METADATA
"wms_title" "{LAYER_TITLE}"
"wms_srs" "EPSG:3857 EPSG:2154 EPSG:4326"
"wms_name" "{LAYER_NAME}"
"wms_server_version" "1.3.0"
"wms_format" "image/png"
"wms_enable_request" "*"
"wms_extent" "-357823.2365 6037008.6939 1313632.3628 7230727.3772"
"gml_include_items" "all"
END
```
*Attention, veillez à modifier certains paramètres (wms_srs, wms_server_version, wms_extent...) si nécessaire.*
* Etape 4 : Cloner la couche que vous souhaitez interroger en GetFeatureInfo et dont le résultat sera retourné en GML.
Il serait possible de ne pas réaliser cette étape si et seulement si l'interrogation en GetFeatureInfo n'a pas pour but d'être réalisée sous vMap. Si c'est le cas, il est indispensable de cloner la couche auquel cas le GetFeatureInfo ne fonctionnera pas dans vMap pour cette dernière.
Idée : Vous pouvez nommer la couche du même nom que la couche cloner en la suffixant par "_GML". Exemple : Commune_point_GML.
* Etape 5 : Mettre à jour la couche créée à l'étape 4 et lui affecter la métadonnée créé à l'étape 3
Dans le même temps, s'assurer que la couche est bien interrogeable en GetFeatureInfo (cf. [Documentation ci-dessus](https://gitlab.veremes.net/Documentation/doc_module_vmap/blob/master/administration/getfeatureinfo.md#activation-depuis-linterface-dadministration))
* Etape 6 : Test
Pour tester cette nouvelle configuration, exécuter une requête GetFeatureInfo dans un navigateur sur la couche que vous avez paramétré. Ce dernier va alors télécharger un nouveau fichier dont le contenu se retrouve au format GML.
Exemple de requête GetFeatureInfo (modifier les paramètres nécessaires) :
```
https://[serveur]/wms/public/[nom_flux_public]?SERVICE=WMS&VERSION=1.3.0&REQUEST=GetFeatureInfo&FORMAT=image/png&TRANSPARENT=true&QUERY_LAYERS=Commune__point_GML&LAYERS=Commune__point_GML&STYLES=&INFO_FORMAT=GML&I=50&J=50&CRS=EPSG%3A2154&WIDTH=101&HEIGHT=101&BBOX=642170.3063538198,6159025.597572117,661784.8780762318,6178640.16929453&vitis_version=3009
```
Attention : Le paramètre `INFO_FORMAT` doit impérativement avoir `GML` comme valeur.
Exemple de résultat:
```
<?xml version="1.0" encoding="UTF-8"?>
<msGMLOutput
xmlns:gml="http://www.opengis.net/gml"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
<Commune__point_GML_layer>
<gml:name>Commune__point_GML</gml:name>
<Commune__point_GML_feature>
<gml:boundedBy>
<gml:Box srsName="EPSG:2154">
<gml:coordinates>679240.481423,6154435.540671 679240.481423,6154435.540671</gml:coordinates>
</gml:Box>
</gml:boundedBy>
<code>66049</code>
<nom>Ceret</nom>
<pop90>7289</pop90>
<nbr_service>1</nbr_service>
</Commune__point_GML_feature>
</Commune__point_GML_layer>
</msGMLOutput>
```
......@@ -255,6 +255,7 @@ Au même titre que les paramètres définis, certains paramètres dynamiques son
- **map_scale** : échelle de la carte imprimée
- **date** : date du jour
- **layer_sources** : sources des couches
- **user_name** : nom de l'utilisateur
- **user_login** : login de l'utilisateur
- **user_company** : société de l'utilisateur
......@@ -262,6 +263,25 @@ Au même titre que les paramètres définis, certains paramètres dynamiques son
- **user_email** : adresse mail de l'utilisateur
- **user_user_id** : identifiant de l'utilisateur
Il est également possible de créer des variable à partir de code javascript.
Exemple : ajout de la date du jour de génération de l'impression
```
<script>
n = new Date();
y = n.getFullYear();
m = n.getMonth() + 1;
d = n.getDate();
document.getElementById("date").innerHTML = d + "/" + m + "/" + y;
</script>
```
Insertion du code html permettant de faire remonter la variable
```
<p style="text-align: left;">Le&nbsp;<a id="date"></a></p>
```
## Objet Styles
En renseignant des styles d'impressions, alors l'utilisateur pourra choisir le style qu'il souhaite utiliser lors de la phase de préparation.
......
......@@ -5,6 +5,7 @@ Administration de vMap
:maxdepth: 2
users
calques_cartes
mapserver/index.rst
impressions
......@@ -12,3 +13,4 @@ Administration de vMap
configuration
module_cadastre
guide_developpeur/index.rst
anomalies
......@@ -10,7 +10,17 @@ Pour faire ceci, Mapserver propose la librairie **msencrypt** qui va crypter le
### Générer un fichier la clé de cryptage
Tout type de cryptage nécessite une clé de cryptage, pour cela il faudra lancer la commence ci-dessous qui va générer un fichier contenant cette clé.
Tout type de cryptage nécessite une clé de cryptage qu'il va falloir générer et copier dans le dossier " /var/www/vmap/vas/ws\_data/vm4ms/map/msencrypt/".
Etape 1 : Vérifier si ce dossier existe.
Etape 2 : Si ce dossier n'existe pas, le générer à partir de la commande ci-après.
```
sudo mkdir /var/www/vmap/vas/ws\_data/vm4ms/map/msencrypt/
```
Etape 3 : Générer la clef de cryptage dans le dossier créé ci-dessus. Puor ce faire, exécuter la commande suivante :
```
sudo /var/www/vmap/vas/server/mapserver/bin/msencrypt -keygen /var/www/vmap/vas/ws_data/vm4ms/map/msencrypt/vm4ms_key.txt
......@@ -26,4 +36,4 @@ CONFIG "MS_ENCRYPTION_KEY" "/var/www/vmap/vas/ws_data/vm4ms/map/msencrypt/vm4ms_
### Modifier les properties du module Mapserver
Pour activer le cryptage des mots de passe par le module Mapserver, il faudra modifier le fichier de properties vmap/vas/rest/conf/properties\_post.inc et mettre la propertie **use_msencrypt** à true
Pour activer le cryptage des mots de passe par le module Mapserver, il faudra modifier le fichier de properties vmap/vas/rest/conf/vm4ms/properties\_post.inc et mettre la propertie **use_msencrypt** à true
......@@ -49,7 +49,7 @@ Il faudra bien entendu utiliser l'objet web décrit précédemment
## 3. Métadonnées
La troisième étape consiste à créer une métadonnée qui sera utilisée dans les couches, pour cela utilisez la défintion ci-dessous.
La troisième étape consiste à créer une métadonnée qui sera utilisée dans les couches, pour cela utilisez la définition ci-dessous.
```
METADATA
......
# Configuration avancée des utilisateurs vMap
L'édition d'un utilisateur vMap rend disponible une section "vMap" dans laquelle plusieurs paramètres sont paramétrables :
![](../images/administration/config_user_vmap.png)
## 1 Carte par défaut
La "carte par défaut" permet de choisir la carte qui s'ouvre lorsque l'utilisateur lance l'application.
Si aucune carte n'est sélectionnée pour l'utilisateur, l'application s'ouvrira sur la carte ayant "l'ordre" le plus petit, parmis l'ensemble des cartes disponibles pour l'utilisateur.
## 2 Etendue par défaut
"L'étendue" permet de définir l'étendue sur laquelle s'ouvre la carte quand l'utilisateur lance l'application.
Si l'étendue par défaut n'est pas définie pour l'utilisateur, la carte s'ouvrira sur l'étendue par défaut de la carte.
Ce paramétrage peut être très utile pour définir, par exemple, une étendue à certains utilisateurs ayant une restriction communale.
## 3 Styles d'impression
Le "style d'impression" permet d'attribuer à chaque utilisateur un style personnalisé. Ce paramètre est utilisé dans les impressions et les rapports.
Si aucun style n'est définit pour l'utilisateur, ce dernier ne pourra en sélectionner au moment de la génération d'une impression ou d'un rapport.
\ No newline at end of file
......@@ -66,32 +66,49 @@ Définit si par défaut, la partie "Légende" du bandeau de gauche est repliée
### Outils
Active ou désactive les outils suivants
#### Contrôles
#### Slider de zoom
![](../images/administration/admin_controls.png)
Active ou désactive les outils de cartographie suivants
- Slider de zoom <br>
![Interface de configuration de vMap outils 2](../images/configuration_vmap_slider_zoom.png)
#### Zoom
- Zoom <br>
![Interface de configuration de vMap outils 3](../images/configuration_vmap_zoom.png)
#### Carte de supervision
- Carte de supervision <br>
![Interface de configuration de vMap outils 4](../images/configuration_vmap_carte_supervision.png)
#### Échelle graphique
- Échelle graphique <br>
![Interface de configuration de vMap outils 5](../images/configuration_vmap_echelle_graphique.png)
#### Échelle numérique
- Échelle numérique <br>
![Interface de configuration de vMap outils 6](../images/configuration_vmap_echelle_numerique.png)
#### Nom de la carte
- Nom de la carte <br>
![Interface de configuration de vMap outils 7](../images/configuration_vmap_nom_carte.png)
#### Projection en cours
- Projection en cours <br>
![Interface de configuration de vMap outils 8](../images/configuration_vmap_proj_en_cours.png)
#### Rafraichissement auto
- Rafraichissement auto <br>
Rafaichit automatiquement grâce à la technologie websocket les couches quand deux utilisateurs modifient la même donnée.
#### Outils des infobulles
![](../images/administration/admin_infobulles.png)
Permet de gérer les outils présents dans les infobulles
![](../images/carto_infobulle.png)
- Rapports: ![](../images/administration/admin_infobulle_rapports.png)
- Google street view: ![](../images/administration/admin_infobulle_google_street_view.png)
- Mapillary: ![](../images/administration/admin_infobulle_mapillary.png)
- Lien vers l'objet: ![](../images/administration/admin_infobulle_lien_vers.png)
### Sélection
#### Nombre maximal de popups
......@@ -128,7 +145,7 @@ Défaut: *"cadastreV2"*
Correspond au temps durant lequel le nombre de tuiles chargées est égal aux nombres de tuiles a charger a été mis en place.
En utilisant des services tuilés parfois certaines tuiles mettent énormément ou n'arrivent jamais, pour éviter que ceci bloque certaines impressions grâce equality_timeout l'impression se lancera même si certaines tuiles n'ont pas encore été chargées.
En utilisant des services tuilés certaines tuiles peuvent mettre énormément de temps à se générer (certaines ne se généreront peut être jamais).Pour éviter que ceci bloque certaines impressions le paramètre equality_timeout l'impression se lancera même si certaines tuiles n'ont pas encore été chargées.
Augmenter equality_timeout améliorera vos chances d'avoir une meilleure impression mais augmentera le temps nécessaire à une impression
......@@ -197,6 +214,16 @@ Défaut:
{"osm":{"title":"OpenStreetMap","url":"https://nominatim.openstreetmap.org/search?format=json&addressdetails=1&limit=[limit]&extratags=1&namedetails=1&polygon_geojson=1&countrycodes=fr&q=[search]","data_field":"data","title_field":"display_name","geojson_field":"geojson","summary_fields":[{"key":"address.country","label":"Pays"},{"key":"address.state","label":"Région"},{"key":"address.postcode","label":"Code postal"},{"key":"extratags.population","label":"Population"}]},"national_adresse":{"title":"Base nationale","url":"https://api-adresse.data.gouv.fr/search/?q=[search]&limit=[limit]","data_field":"data.features","title_field":"properties.label","geojson_field":"geometry","summary_fields":[{"key":"properties.context","label":"Département"},{"key":"properties.city","label":"Ville"},{"key":"properties.postcode","label":"Code postal"}]}}'
```
Il est possible de modifier la liste des géocoders.
- Pour retirer les 2 geocoders par défaut il suffit mettre la valeur suivante
```$properties['vmap_geocoders'] = ''```
- Pour ne conserver que OSM :
```$properties['vmap_geocoders'] = '{"osm":{"title":"OpenStreetMap","url":"https://nominatim.openstreetmap.org/search?format=json&addressdetails=1&limit=[limit]&extratags=1&namedetails=1&polygon_geojson=1&countrycodes=fr&q=[search]","data_field":"data","title_field":"display_name","geojson_field":"geojson","summary_fields":[{"key":"address.country","label":"Pays"},{"key":"address.state","label":"Région"},{"key":"address.postcode","label":"Code postal"},{"key":"extratags.population","label":"Population"}]}'```
- Pour ne conserver que la Base nationale :
```$properties['vmap_geocoders'] = '"national_adresse":{"title":"Base nationale","url":"https://api-adresse.data.gouv.fr/search/?q=[search]&limit=[limit]","data_field":"data.features","title_field":"properties.label","geojson_field":"geometry","summary_fields":[{"key":"properties.context","label":"Département"},{"key":"properties.city","label":"Ville"},{"key":"properties.postcode","label":"Code postal"}]}}'```
#### $properties['vmap_default_geocoders']
Géocodeur à utiliser par défaut
......@@ -257,6 +284,13 @@ Défaut:
$properties['vmap_export']['gtf_export_coordsys'] = '[{"label":"2154 Lambert 93","value":"2154"},{"label":"3857 WGS84 Spherical Mercator","value":"3857"},{"label":"4326 WGS84 Longitude latitude","value":"4326"},{"label":"27561 Lambert I Nord","value":"27561"},{"label":"27562 Lambert II Centre","value":"27562"},{"label":"27563 Lambert III Sud","value":"27563"},{"label":"27564 Lambert IV Corse","value":"27564"},{"label":"27571 Lambert I Carto","value":"27571"},{"label":"27572 Lambert II Carto","value":"27572"},{"label":"27573 Lambert III Carto","value":"27573"},{"label":"27572 Lambert IV Carto","value":"27572"}]'
```
#### $properties['vmap_export']['gtf_2020']
Permet l'extraction des données par GTF en version 2020.
Si GTF est en version 2020 ou suppérieure il faudra écrire `$properties['vmap_export']['gtf_2020'] = true;`
## Configuration client avec properties.json
En modifiant le fichier *vmap/client/conf/properties.json* il est possible de configurer la partie client de l'application
......
images/administration/admin_controls.png

20.4 KiB

images/administration/admin_infobulle_google_street_view.png

2.83 KiB

images/administration/admin_infobulle_lien_vers.png

2.49 KiB

images/administration/admin_infobulle_mapillary.png

1.61 KiB

images/administration/admin_infobulle_rapports.png

2.75 KiB

images/administration/admin_infobulles.png

11.7 KiB

images/administration/config_user_vmap.png

624 KiB

images/administration_rapports.png

45.7 KiB | W: 0px | H: 0px

images/administration_rapports.png

117 KiB | W: 0px | H: 0px

images/administration_rapports.png
images/administration_rapports.png
images/administration_rapports.png
images/administration_rapports.png
  • 2-up
  • Swipe
  • Onion skin
images/anomalies/anomalies1.png

136 KiB