diff --git a/docs/_static/favicon.png b/docs/_static/favicon.png new file mode 100644 index 0000000000..18bfccad45 Binary files /dev/null and b/docs/_static/favicon.png differ diff --git a/docs/_static/logo.svg b/docs/_static/logo.svg new file mode 100644 index 0000000000..638f85e0ec --- /dev/null +++ b/docs/_static/logo.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/docs/about/geotrek.rst b/docs/about/geotrek.rst new file mode 100644 index 0000000000..0a0bd79d19 --- /dev/null +++ b/docs/about/geotrek.rst @@ -0,0 +1,103 @@ +======= +Geotrek +======= + +.. contents:: + :local: + :depth: 2 + +.. _qu-est-ce-que-geotrek: + +Qu'est ce que Geotrek ? +======================= + +Geotrek est un ensemble d'outils web dédiés à la **gestion et la valorisation** des activités de randonnées, de sports de pleine nature et des informations touristiques. + +Ils sont open source et peuvent ainsi être déployés librement par les structures et territoires qui le souhaitent, mais aussi les faire évoluer, ou bénéficier des évolutions réalisées par d'autres structures sans avoir à les re-financer. + +Ces outils permettent la gestion de **nombreuses pratiques sportives** liées à des linéaires (randonnée pédestre, à vélo, en VTT, à cheval, avec poussette, etc.) mais également à des **contenus outdoor** non linéaires (escalade, vol libre, sports d’eau vive, etc.). + +C’est l’**application de référence** des parcs naturels, mais aussi de nombreuses structures publiques (conseils départementaux, communautés de communes, comités régionaux du tourisme, offices du tourisme, etc.). + +**Utiliser Geotrek vous permettra** : + +* d’intégrer une **communauté de gestionnaires de randonnées très active** +* de **bénéficier de l’ensemble des évolutions** réalisées par les autres utilisateurs. Le projet est vivant et les outils s’améliorent sans cesse +* de disposer d’une **offre complète** qui pourra également être utilisée par d’autres acteurs du territoire +* de facilement pouvoir **accéder à d’autres fonctionnalités** quand le besoin s’en fera ressentir : site web, impression de fiches de parcours, gestion de la signalétique, organisation des travaux… +* d’exporter facilement vos contenus valorisables (itinéraires, POIs, contenus touristiques …) vers d’autres **plateformes touristiques nationales** (IGNrando', Visorando, Outdooractive, Apidae, Cirkwi, etc.) + +Les quatre briques +================== + +La suite logicielle Geotrek dispose de quatre briques à la fois distincts et complémentaires : + +* :ref:`Geotrek-admin `: outil de gestion et de saisie de l’ensemble des informations, intégrant les données des Systèmes d’Informations Touristiques (SIT) et pouvant être connecté à votre SIG ou à des systèmes d’information transport +* `Geotrek-rando `_ : site web, reprenant les informations saisies dans Geotrek-admin, à destination des internautes grand public +* `Geotrek-mobile `_ : application mobile fonctionnant sous Android et iOS, reprenant des informations saisies dans Geotrek-admin et optimisées pour l’usage mobile (volume, impact sur la batterie, hors-ligne, géolocalisation…) +* `Geotrek-rando-widget `_ : nouveau composant web permettant de valoriser une offre de contenus touristiques et de randonnées auprès des usagers du territoire, en l'intégrant dans un site internet existant + +.. note:: + Cette documentation ne traite que de **Geotrek-Admin**, chaque brique ayant sa propre documentation. + +Utilisateurs +============ + +L’application Geotrek, **destinée à deux types de public**, est une solution web qui apporte : + +* des fonctionnalités de gestion des informations (itinéraires, sites outdoor, points d’intérêts, description, interprétation, médias…) et de gestion des infrastructures (signalétique, aménagements, travaux, réglementation…) pour les utilisateurs gérant un territoire (**Geotrek-admin**) +* des fonctionnalités simples et ludiques de recherche et de consultation d’itinéraires pour les internautes et les mobinautes (**Geotrek-rando V3**, **Geotrek-mobile** et **Geotrek-rando-widget**). + +Pour retrouver plus d'informations sur la suite applicative Geotrek, rendez-vous sur `geotrek.fr `_. + +A qui appartient Geotrek ? +========================== + +Geotrek est un produit libre et open source avec une importante communauté d'utilisateurs. + +Retrouvez toutes les infos sur la genèse du produit, son modèle communautaire ainsi que les principales structures contributrices sur le `site geotrek.fr `_. + +Comment rejoindre la communauté ? +================================== + +* Rejoignez la `mailing list `_! Envoyez un mail à ``geotrek-fr+subscribe@googlegroups.com`` et vous recevrez automatiquement une invitation. +* `Ouvrir un ticket `_ lorsqu'un bug est détecté +* `Ouvrir un ticket `_ pour proposer une suggestion ou une nouvelle fonctionnalité +* Rejoindre le `canal de discussion Matrix `_ afin d'échanger directement avec des membres de la communauté Geotrek + +Composants libres +================= + +L’application Geotrek utilise les technologies open source suivantes : + +Geotrek-admin +------------- + +* **Python / Django**, l'épine dorsale de l'application qui prend en charge les principales fonctionnalités comme le module de configuration, l'exploitation de la base de données, la gestion des utilisateurs et de leurs droits ou l'intégration avec les bibliothèques cartographiques. La richesse de son écosystème permet de concevoir des applications aux possibilités infinies, en favorisant la production d'applications sécurisées, solides (tests automatiques) et robustes (Python). +* **PostgreSQL / PostGIS** pour la base de données. La totalité des données de l'application est stockée dans une instance PostgreSQL avec l'extension spatiale PostGIS : + + * attributs, comptes utilisateurs…, + * géométries, + * raster (Modèle Numérique Terrain). + +Geotrek-rando +------------- + +* **Next.js** (*React, Typescript*), +* **Leaflet**, utilisé comme librairie cartographique + +Geotrek-rando-widget +--------------------- + +* **Stencil**, framework permettant de créer des composants web personnalisables et légers. +* **Leaflet**, utilisé comme librairie cartographique + +Geotrek-mobile +--------------- + +* **Angular**, framework utilisé pour l'application Geotrek-mobile. +* **Ionic**, composant UI +* **Capacitor**, boîte à outils nécessaires à la création d'applications mobiles +* **MapLibre**, utilisé comme librairie cartographique + + diff --git a/docs/conf.py b/docs/conf.py index e7d4525749..2668611a5b 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -1,28 +1,6 @@ import sphinx_rtd_theme # noqa import datetime -# Geotrek documentation build configuration file, created by -# sphinx-quickstart on Wed May 15 09:50:19 2013. -# -# This file is execfile()d with the current directory set to its containing dir. -# -# Note that not all possible configuration values are present in this -# autogenerated file. -# -# All configuration values have a default; values that are commented out -# serve to show the default. - -# If extensions (or modules to document with autodoc) are in another directory, -# add these directories to sys.path here. If the directory is relative to the -# documentation root, use os.path.abspath to make it absolute, like shown here. -# sys.path.insert(0, os.path.abspath('.')) -# -- General configuration ----------------------------------------------------- - -# If your documentation needs a minimal Sphinx version, state it here. -# needs_sphinx = '1.0' - -# Add any Sphinx extension module names here, as strings. They can be extensions -# coming with Sphinx (named 'sphinx.ext.*') or your custom ones. extensions = [ 'sphinx.ext.todo', 'sphinx_rtd_theme', @@ -34,9 +12,6 @@ # The suffix of source filenames. source_suffix = '.rst' -# The encoding of source files. -# source_encoding = 'utf-8-sig' - # The master toctree document. master_doc = 'index' @@ -53,191 +28,36 @@ # The full version, including alpha/beta/rc tags. release = '2.102.1+dev' -# The language for content autogenerated by Sphinx. Refer to documentation -# for a list of supported languages. -# language = None - -# There are two options for replacing |today|: either, you set today to some -# non-false value, then it is used: -# today = '' -# Else, today_fmt is used as the format for a strftime call. -# today_fmt = '%B %d, %Y' - -# List of patterns, relative to source directory, that match files and -# directories to ignore when looking for source files. exclude_patterns = ['_build'] -# The reST default role (used for this markup: `text`) to use for all documents. -# default_role = None - -# If true, '()' will be appended to :func: etc. cross-reference text. -# add_function_parentheses = True - -# If true, the current module name will be prepended to all description -# unit titles (such as .. function::). -# add_module_names = True - -# If true, sectionauthor and moduleauthor directives will be shown in the -# output. They are ignored by default. -# show_authors = False - -# The name of the Pygments (syntax highlighting) style to use. pygments_style = 'sphinx' -# A list of ignored prefixes for module index sorting. -# modindex_common_prefix = [] - - -# -- Options for HTML output --------------------------------------------------- - -# The theme to use for HTML and HTML Help pages. See the documentation for -# a list of builtin themes. html_theme = 'sphinx_rtd_theme' -# Theme options are theme-specific and customize the look and feel of a theme -# further. For a list of options available for each theme, see the -# documentation. -# html_theme_options = {} - -# Add any paths that contain custom themes here, relative to this directory. -# html_theme_path = [] - -# The name for this set of Sphinx documents. If None, it defaults to -# " v documentation". -# html_title = None - -# A shorter title for the navigation bar. Default is the same as html_title. -# html_short_title = None - -# The name of an image file (relative to this directory) to place at the top -# of the sidebar. -# html_logo = None - -# The name of an image file (within the static path) to use as favicon of the -# docs. This file should be a Windows icon file (.ico) being 16x16 or 32x32 -# pixels large. -# html_favicon = None +html_logo = "_static/logo.svg" +html_theme_options = { + "logo_only": True, + 'style_external_links': True, +} +html_favicon = "_static/favicon.png" -# Add any paths that contain custom static files (such as style sheets) here, -# relative to this directory. They are copied after the builtin static files, -# so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ['_static'] -# If not '', a 'Last updated on:' timestamp is inserted at every page bottom, -# using the given strftime format. -# html_last_updated_fmt = '%b %d, %Y' - -# If true, SmartyPants will be used to convert quotes and dashes to -# typographically correct entities. -# html_use_smartypants = True - -# Custom sidebar templates, maps document names to template names. -# html_sidebars = {} - -# Additional templates that should be rendered to pages, maps page names to -# template names. -# html_additional_pages = {} - -# If false, no module index is generated. -# html_domain_indices = True - -# If false, no index is generated. -# html_use_index = True - -# If true, the index is split into individual pages for each letter. -# html_split_index = False - -# If true, links to the reST sources are added to the pages. -# html_show_sourcelink = True - -# If true, "Created using Sphinx" is shown in the HTML footer. Default is True. -# html_show_sphinx = True - -# If true, "(C) Copyright ..." is shown in the HTML footer. Default is True. -# html_show_copyright = True - -# If true, an OpenSearch description file will be output, and all pages will -# contain a tag referring to it. The value of this option must be the -# base URL from which the finished HTML is served. -# html_use_opensearch = '' - -# This is the file name suffix for HTML files (e.g. ".xhtml"). -# html_file_suffix = None - # Output file base name for HTML help builder. htmlhelp_basename = 'Geotrekdoc' - -# -- Options for LaTeX output -------------------------------------------------- - -latex_elements = { - # The paper size ('letterpaper' or 'a4paper'). - # 'papersize': 'letterpaper', - - # The font size ('10pt', '11pt' or '12pt'). - # 'pointsize': '10pt', - - # Additional stuff for the LaTeX preamble. - # 'preamble': '', -} - -# Grouping the document tree into LaTeX files. List of tuples -# (source start file, target name, title, author, documentclass [howto/manual]). latex_documents = [ ('index', 'Geotrek.tex', 'Geotrek Documentation', 'Makina Corpus', 'manual'), ] -# The name of an image file (relative to this directory) to place at the top of -# the title page. -# latex_logo = None - -# For "manual" documents, if this is true, then toplevel headings are parts, -# not chapters. -# latex_use_parts = False - -# If true, show page references after internal links. -# latex_show_pagerefs = False - -# If true, show URL addresses after external links. -# latex_show_urls = False - -# Documents to append as an appendix to all manuals. -# latex_appendices = [] - -# If false, no module index is generated. -# latex_domain_indices = True - - -# -- Options for manual page output -------------------------------------------- - -# One entry per manual page. List of tuples -# (source start file, name, description, authors, manual section). man_pages = [ ('index', 'geotrek', 'Geotrek Documentation', ['Makina Corpus'], 1) ] -# If true, show URL addresses after external links. -# man_show_urls = False - - -# -- Options for Texinfo output ------------------------------------------------ - -# Grouping the document tree into Texinfo files. List of tuples -# (source start file, target name, title, author, -# dir menu entry, description, category) texinfo_documents = [ ('index', 'Geotrek', 'Geotrek Documentation', 'Makina Corpus', 'Geotrek', 'One line description of project.', 'Miscellaneous'), ] - -# Documents to append as an appendix to all manuals. -# texinfo_appendices = [] - -# If false, no module index is generated. -# texinfo_domain_indices = True - -# How to display URL addresses: 'footnote', 'no', or 'inline'. -# texinfo_show_urls = 'footnote' diff --git a/docs/CONTRIBUTING.rst b/docs/contribute/contributing.rst similarity index 84% rename from docs/CONTRIBUTING.rst rename to docs/contribute/contributing.rst index dba23c3529..47a37182bc 100644 --- a/docs/CONTRIBUTING.rst +++ b/docs/contribute/contributing.rst @@ -2,6 +2,10 @@ Contributing ============ +.. contents:: + :local: + :depth: 2 + Conventions ----------- @@ -14,7 +18,6 @@ Conventions * Commits messages are explicit and mention issue number (``(ref #12)`` or ``(fixes #23)``), they should contains corresponding tag (see below) * Features are developed in a branch and merged from Github pull-requests. - Definition of done ------------------ @@ -96,7 +99,7 @@ Merge twisted_rightwards_arrows 🔀 Release -------- +-------- On master branch: @@ -109,4 +112,18 @@ On master branch: * Run ``dch -v +dev --no-force-save-on-release`` and save * Commit with message 'Back to development' and push to ```master`` -* When creating a new release 'x.y.z' on github, Github actions will generate the .deb package file, and publish it on https://packages.geotrek.fr (see ``.circleci/config.yml`` file for details) +* When creating a new release 'x.y.z' on github, Github actions will generate the .deb package file, and publish it on https://packages.geotrek.fr (see ``.github/workflows/test.yml`` file for details) + +Other ways to contribute +------------------------- + +* Help the users and answers questions on the `mailing-list `_ ; +* `Open a ticket `_ when you encounter a bug ; +* `Open a ticket `_ when you have a suggestion or feature idea ; +* Translate the documentation ; +* Translate the menus, buttons and labels (we use `Weblate `_) ; +* Maintain the installation script for different Linux distributions (*requires some basic Linux skills*) ; +* Fix bugs or improve layout and apparence (*requires Webmaster skills*) ; +* Fix bugs or improve core modules (*requires python/Django skills*). + +Join the `mailing list `_! Send an email to ``geotrek-fr+subscribe@googlegroups.com`` and you will receive an invitation automatically. \ No newline at end of file diff --git a/docs/contribute/design.rst b/docs/contribute/design.rst index 485dc01cf4..cdd0d2cf5d 100644 --- a/docs/contribute/design.rst +++ b/docs/contribute/design.rst @@ -4,6 +4,10 @@ Design ====== +.. contents:: + :local: + :depth: 2 + Architecture ------------ @@ -18,10 +22,7 @@ Architecture Main components --------------- -The whole project is built on top of *mapentity*. - - -A generic application in charge of: +The whole project is built on top of *mapentity*, a generic application in charge of: * Menus and models registry * List/Detail/Create/Update/Delete views @@ -40,12 +41,21 @@ Business specific notions are implemented in Geotrek-admin respective applicatio * **common**: shared concepts between all applications (*Organism*, *utils*, ...) * **authent**: groups, user, profile and structure notions. Optional external authent backend. -* **core**: elevation, paths, snapping, spatial referencing (topologies) -* **land**: static cities/districts/restricted areas layers, physical types, competence, - signage and work management -* **infrastructure**: buildings, signages, equipements +* **core**: paths, snapping, spatial referencing (topologies) +* **land**: physical types, competence, signage and work management +* **infrastructure**: buildings +* **signage**: signages and blades related content * **maintenance**: interventions (on paths or on infrastructures) and projects * **trekking**: POIs and treks +* **outdoor**: outdoor sites and courses +* **zoning**: static cities/districts/restricted areas layers +* **altimetry**: elevation, DEM +* **api**: manage all external communications interfaces (api v2, mobile) +* **cirkwi**: implementation of cirkwi related api +* **feedback**: feedbacks content, implementation of suricate workflow +* **flatpages**: flatpages models, used for publishing content on rando and mobile apps +* **sensitivity**: sensitive areas and species related content, link with Biodiv'Sport +* **tourism**: touristic contents and events, links with SIT (apidae, tourinsoft) Django conventions twists @@ -54,7 +64,7 @@ Django conventions twists We have a couple of Django conventions infringements: * SQL triggers everywhere: since Geotrek-admin database is to become the central storage - component of all park organisation data, it has to behave consistently whether data is + component of all territory organisation data, it has to behave consistently whether data is modified through the Web application or raw access tools (pgadmin, QGIS). (For example, insertion & update timestamps, geometry computation or DEM wrapping.) * Safe delete: update field ``deleted = True`` instead of performing actual delete in table. diff --git a/docs/contribute/development.rst b/docs/contribute/development.rst index be83f845e6..e3ef2251fc 100644 --- a/docs/contribute/development.rst +++ b/docs/contribute/development.rst @@ -3,6 +3,9 @@ =========== Development =========== +.. contents:: + :local: + :depth: 2 Quickstart ========== @@ -244,7 +247,7 @@ Then run a synchronization. Mapentity development ===================== -TODO +See `Django-Mapentity documentation `_ UML diagrams of data model diff --git a/docs/contribute/documentation.rst b/docs/contribute/documentation.rst index 851ff26e3c..2eaa7b8aaf 100644 --- a/docs/contribute/documentation.rst +++ b/docs/contribute/documentation.rst @@ -1,5 +1,8 @@ Documentation ============= +.. contents:: + :local: + :depth: 2 We use sphinx doc and sphinx-rtd-theme. Requirements are included. diff --git a/docs/contribute/translating.rst b/docs/contribute/translating.rst index 3c0c5803ad..38b70e6958 100644 --- a/docs/contribute/translating.rst +++ b/docs/contribute/translating.rst @@ -2,6 +2,10 @@ Translating ============ +.. contents:: + :local: + :depth: 2 + Geotrek-admin can be translated online on `Makina Corpus Weblate instance `_ @@ -96,7 +100,7 @@ Release translations (only for github repository managers) ---------------------------------------------------------- Weblate send new translations to `translations` branch in Github, dedicated to translations. -When new translations chains are validated, manager has to send the manually to Github. +When new translations chains are validated, manager has to send them manually to Github. For each release, `translations` branch must be merged into master before building the release. diff --git a/docs/faq.rst b/docs/faq.rst deleted file mode 100644 index 2ed4c9312b..0000000000 --- a/docs/faq.rst +++ /dev/null @@ -1,125 +0,0 @@ -========================== -Frequently asked questions -========================== - -How are 3D informations obtained ? ----------------------------------- - -All paths geometries are *"draped"* on a Digital Elevation Model, when created -or updated. - -All linear objects that defined using topologies (*treks, ...*) take their 3D informations -from their related paths, instead of reading the DEM. - - -How is the ascent computed on treks ? -------------------------------------- - -We compute the `cumulative elevation gain `_. - -We sample the DEM every 25m by defaut (see ``ALTIMETRIC_PROFILE_PRECISION`` setting), -and we add some smoothing to avoid noise. - -For more details : - -* `The smoothing explanation `_ -* `The piece of code to compute positive and negative accumulations `_ -* `Draping lines with PostGIS `_ - (or `french version `_) - - - -How are POIs related to treks ? -------------------------------- - -POIs are considered as an *editorial* information, and are created carefully -along treks. - -When a POI is created, it is attached to the closest path. - -A trek is defined by a serie of paths, and some POIs are associated to them. - -.. note :: - - There is currently no way to manually control the association between - treks and POIs. - - This was discussed among the first *Geotrek* users, come and argue on the mailing - list ! - - -If ``TREKKING_TOPOLOGY_ENABLED`` is set to ``False``, there are no paths involved. -POIs are thus related to treks using a basic spatial intersection, with a -distance set in setting ``TREK_POI_INTERSECTION_MARGIN`` (default to 500 meters). - - -Can I have overlapping districts ? ----------------------------------- - -Districts are a generic notion to qualify your territory. They can be valleys, -mounts, ... - -You can imagine using the districts table for all those different notions, -resulting in overlapping geometries. Geotrek-admin will associate them all to your -objects. - - -Why does Makina Corpus sell Geotrek, released under an Open-Source license ? ----------------------------------------------------------------------------- - -In the early years of the Free Software movement, it was quite common to pay -in order to receive a physical copy (on floppy disks) of some GNU programs and source -code. - -In the late nineties, the IT industry was not confortable with the confusion -introduced by the word *Free* in English ("free" as freedom, or "free" as costless), and -therefore started to spread the word *Open Source* instead. - -Today, those copies of Open Source software can be obtained on the Internet for free -of course. But yet, the GNU Software Fundation `still recommends to claim a financial contribution `_ when -distributing them, in order to support the development and maintenance. And note that nowadays, -many of the most important Open Source applications have their own fundation, focused on -collecting funds for development and maintenance. - -The *Geotrek fundation* does not exist yet, but the community is growing. Makina Corpus -is currently maintaining this Open Source application, which implies the following -responsabilities : - -* Maintain a public website, with a fully working demo ; -* Write documentation ; -* Provide community support on the mailing-list ; -* Promote the application at conferences, social networks and communities ; -* Triage and investigate issues tickets on Github ; -* Fix bugs and regressions if any ; -* Contribute, propose and argue code merge on external libraries ; -* Keep software dependencies up-to-date, without regressions ; -* Make sure the application remains easy to install on latest Linux distributions ; -* Add some engineering to allow customization and pluggability when new specific features are planned ; - -Each of these tasks are often considered implicit, but they consume energy and time, -which represents a substantial cost for a company like ours. - -To conclude, we don't really sell *Geotrek*, since you can get it on Github and install it easily, but -we ask for a financial contribution regarding the above responsabilities. It is not only legal, but also recommended by the funders of the Free and Open Source Software movement. - - -How can I help and contribute ? -------------------------------- - -There are many ways to contribute to a Free Software. And modifying -the source code is probably the least common action. For example : - -* Help the users and answers questions on the `mailing-list `_ ; -* Download it, try it ; -* `Open a ticket `_ when you encounter a bug ; -* `Open a ticket `_ when you have a suggestion or feature idea ; -* Share your feedback, spread the word inside your organization ; -* Write and talk about *Geotrek*, at conferences, workgroups, forums ; -* Translate the documentation ; -* Translate the menus, buttons and labels (we use `Weblate `_) ; -* Maintain the installation script for different Linux distributions (*requires some basic Linux skills*) ; -* Fix bugs or improve layout and apparence (*requires Webmaster skills*) ; -* Fix bugs or improve core modules (*requires python/Django skills*). - -Join us on the `mailing list `_! Send an email to ``geotrek-fr+subscribe@googlegroups.com`` -and you will receive an invitation automatically :) diff --git a/docs/images/admin/contenu-touristique-categorie-sous-type.png b/docs/images/admin/contenu-touristique-categorie-sous-type.png deleted file mode 100644 index b893dc83dd..0000000000 Binary files a/docs/images/admin/contenu-touristique-categorie-sous-type.png and /dev/null differ diff --git a/docs/images/admin/django-admin-ajout-pratique-v2.png b/docs/images/admin/django-admin-ajout-pratique-v2.png new file mode 100644 index 0000000000..d1fe3250c7 Binary files /dev/null and b/docs/images/admin/django-admin-ajout-pratique-v2.png differ diff --git a/docs/images/admin/django-admin-ajout-pratique.png b/docs/images/admin/django-admin-ajout-pratique.png deleted file mode 100644 index 0e7a5e9064..0000000000 Binary files a/docs/images/admin/django-admin-ajout-pratique.png and /dev/null differ diff --git a/docs/images/admin/django-admin-categorie-contenu-touristique-v2.png b/docs/images/admin/django-admin-categorie-contenu-touristique-v2.png new file mode 100644 index 0000000000..f5c6e7aca6 Binary files /dev/null and b/docs/images/admin/django-admin-categorie-contenu-touristique-v2.png differ diff --git a/docs/images/admin/django-admin-categorie-contenu-touristique.png b/docs/images/admin/django-admin-categorie-contenu-touristique.png deleted file mode 100644 index 283128fe11..0000000000 Binary files a/docs/images/admin/django-admin-categorie-contenu-touristique.png and /dev/null differ diff --git a/docs/images/admin/django-admin-params-itineraires-v2.png b/docs/images/admin/django-admin-params-itineraires-v2.png new file mode 100644 index 0000000000..bc09ec9079 Binary files /dev/null and b/docs/images/admin/django-admin-params-itineraires-v2.png differ diff --git a/docs/images/admin/django-admin-params-itineraires.png b/docs/images/admin/django-admin-params-itineraires.png deleted file mode 100644 index 8897114dd0..0000000000 Binary files a/docs/images/admin/django-admin-params-itineraires.png and /dev/null differ diff --git a/docs/images/admin/django-admin-params-tourisme-v2.png b/docs/images/admin/django-admin-params-tourisme-v2.png new file mode 100644 index 0000000000..8df517c73b Binary files /dev/null and b/docs/images/admin/django-admin-params-tourisme-v2.png differ diff --git a/docs/images/admin/django-admin-params-tourisme.png b/docs/images/admin/django-admin-params-tourisme.png deleted file mode 100644 index 181d491025..0000000000 Binary files a/docs/images/admin/django-admin-params-tourisme.png and /dev/null differ diff --git a/docs/images/admin/interface-django.png b/docs/images/admin/interface-django.png new file mode 100644 index 0000000000..63a73f970c Binary files /dev/null and b/docs/images/admin/interface-django.png differ diff --git a/docs/images/advanced-configuration/import_shapefile.png b/docs/images/advanced-configuration/import_shapefile.png new file mode 100644 index 0000000000..6330fc2a35 Binary files /dev/null and b/docs/images/advanced-configuration/import_shapefile.png differ diff --git a/docs/images/options/zoning_bboxs.png b/docs/images/options/zoning_bboxs.png deleted file mode 100644 index 2583539222..0000000000 Binary files a/docs/images/options/zoning_bboxs.png and /dev/null differ diff --git a/docs/images/user-manual/altimetrie.png b/docs/images/user-manual/altimetrie.png new file mode 100644 index 0000000000..e35942aa33 Binary files /dev/null and b/docs/images/user-manual/altimetrie.png differ diff --git a/docs/images/user-manual/api-ecosystem.png b/docs/images/user-manual/api-ecosystem.png new file mode 100644 index 0000000000..cb9ce9e9f6 Binary files /dev/null and b/docs/images/user-manual/api-ecosystem.png differ diff --git a/docs/images/user-manual/django-pratique.png b/docs/images/user-manual/django-pratique.png new file mode 100644 index 0000000000..475cf76c6a Binary files /dev/null and b/docs/images/user-manual/django-pratique.png differ diff --git a/docs/images/user-manual/fiche-detail.png b/docs/images/user-manual/fiche-detail.png new file mode 100644 index 0000000000..1c75493c46 Binary files /dev/null and b/docs/images/user-manual/fiche-detail.png differ diff --git a/docs/images/user-manual/fichiers-lies.png b/docs/images/user-manual/fichiers-lies.png new file mode 100644 index 0000000000..5881ad47c3 Binary files /dev/null and b/docs/images/user-manual/fichiers-lies.png differ diff --git a/docs/images/user-manual/geotrek-login.png b/docs/images/user-manual/geotrek-login.png new file mode 100644 index 0000000000..1ecd2d55ad Binary files /dev/null and b/docs/images/user-manual/geotrek-login.png differ diff --git a/docs/images/user-manual/historique.png b/docs/images/user-manual/historique.png new file mode 100644 index 0000000000..219d22cdba Binary files /dev/null and b/docs/images/user-manual/historique.png differ diff --git a/docs/images/user-manual/modules/amenagement.png b/docs/images/user-manual/modules/amenagement.png new file mode 100644 index 0000000000..b00881bb53 Binary files /dev/null and b/docs/images/user-manual/modules/amenagement.png differ diff --git a/docs/images/user-manual/modules/chantier.png b/docs/images/user-manual/modules/chantier.png new file mode 100644 index 0000000000..76fbededd3 Binary files /dev/null and b/docs/images/user-manual/modules/chantier.png differ diff --git a/docs/images/user-manual/modules/contenustouristiques.png b/docs/images/user-manual/modules/contenustouristiques.png new file mode 100644 index 0000000000..7e4d88905c Binary files /dev/null and b/docs/images/user-manual/modules/contenustouristiques.png differ diff --git a/docs/images/user-manual/modules/evenementstouristiques.png b/docs/images/user-manual/modules/evenementstouristiques.png new file mode 100644 index 0000000000..95a66cfae0 Binary files /dev/null and b/docs/images/user-manual/modules/evenementstouristiques.png differ diff --git a/docs/images/user-manual/modules/intervention.png b/docs/images/user-manual/modules/intervention.png new file mode 100644 index 0000000000..42ef286754 Binary files /dev/null and b/docs/images/user-manual/modules/intervention.png differ diff --git a/docs/images/user-manual/modules/itineraire.png b/docs/images/user-manual/modules/itineraire.png new file mode 100644 index 0000000000..707364ea84 Binary files /dev/null and b/docs/images/user-manual/modules/itineraire.png differ diff --git a/docs/images/user-manual/modules/parcoursoutdoor.png b/docs/images/user-manual/modules/parcoursoutdoor.png new file mode 100644 index 0000000000..51093faad1 Binary files /dev/null and b/docs/images/user-manual/modules/parcoursoutdoor.png differ diff --git a/docs/images/user-manual/modules/poi.png b/docs/images/user-manual/modules/poi.png new file mode 100644 index 0000000000..f6c6053456 Binary files /dev/null and b/docs/images/user-manual/modules/poi.png differ diff --git a/docs/images/user-manual/modules/sentier.png b/docs/images/user-manual/modules/sentier.png new file mode 100644 index 0000000000..59f75f7c90 Binary files /dev/null and b/docs/images/user-manual/modules/sentier.png differ diff --git a/docs/images/user-manual/modules/service.png b/docs/images/user-manual/modules/service.png new file mode 100644 index 0000000000..6934e2942d Binary files /dev/null and b/docs/images/user-manual/modules/service.png differ diff --git a/docs/images/user-manual/modules/signalements.png b/docs/images/user-manual/modules/signalements.png new file mode 100644 index 0000000000..55b51671fc Binary files /dev/null and b/docs/images/user-manual/modules/signalements.png differ diff --git a/docs/images/user-manual/modules/signaletique.png b/docs/images/user-manual/modules/signaletique.png new file mode 100644 index 0000000000..c5cc8a23e4 Binary files /dev/null and b/docs/images/user-manual/modules/signaletique.png differ diff --git a/docs/images/user-manual/modules/sitesoutdoor.png b/docs/images/user-manual/modules/sitesoutdoor.png new file mode 100644 index 0000000000..3c503fbbd1 Binary files /dev/null and b/docs/images/user-manual/modules/sitesoutdoor.png differ diff --git a/docs/images/user-manual/modules/statut.png b/docs/images/user-manual/modules/statut.png new file mode 100644 index 0000000000..01481bf6b9 Binary files /dev/null and b/docs/images/user-manual/modules/statut.png differ diff --git a/docs/images/user-manual/modules/troncons.png b/docs/images/user-manual/modules/troncons.png new file mode 100644 index 0000000000..51248bd653 Binary files /dev/null and b/docs/images/user-manual/modules/troncons.png differ diff --git a/docs/images/user-manual/modules/zonessensibles.png b/docs/images/user-manual/modules/zonessensibles.png new file mode 100644 index 0000000000..edb0044fab Binary files /dev/null and b/docs/images/user-manual/modules/zonessensibles.png differ diff --git a/docs/images/user-manual/multilangue.png b/docs/images/user-manual/multilangue.png new file mode 100644 index 0000000000..294084f4d6 Binary files /dev/null and b/docs/images/user-manual/multilangue.png differ diff --git a/docs/images/user-manual/photos-accessibilite.png b/docs/images/user-manual/photos-accessibilite.png new file mode 100644 index 0000000000..07624b7f3f Binary files /dev/null and b/docs/images/user-manual/photos-accessibilite.png differ diff --git a/docs/images/user-manual/references-geotrek-admin.jpg b/docs/images/user-manual/references-geotrek-admin.jpg deleted file mode 100644 index a36258c308..0000000000 Binary files a/docs/images/user-manual/references-geotrek-admin.jpg and /dev/null differ diff --git a/docs/images/user-manual/references-geotrek-admin.png b/docs/images/user-manual/references-geotrek-admin.png new file mode 100644 index 0000000000..d55f1affdd Binary files /dev/null and b/docs/images/user-manual/references-geotrek-admin.png differ diff --git a/docs/images/user-manual/references-geotrek-rando.jpg b/docs/images/user-manual/references-geotrek-rando.jpg deleted file mode 100644 index 395174e848..0000000000 Binary files a/docs/images/user-manual/references-geotrek-rando.jpg and /dev/null differ diff --git a/docs/images/user-manual/references-geotrek-rando.png b/docs/images/user-manual/references-geotrek-rando.png new file mode 100644 index 0000000000..20bf8c208e Binary files /dev/null and b/docs/images/user-manual/references-geotrek-rando.png differ diff --git a/docs/images/user-manual/vue-edition-v2.png b/docs/images/user-manual/vue-edition-v2.png new file mode 100644 index 0000000000..f3a414bef2 Binary files /dev/null and b/docs/images/user-manual/vue-edition-v2.png differ diff --git a/docs/index.rst b/docs/index.rst index 7b450f9910..35a869fa06 100644 --- a/docs/index.rst +++ b/docs/index.rst @@ -1,26 +1,28 @@ Welcome to Geotrek's documentation! =================================== -.. _contents: +.. toctree:: + :caption: 💡 About + :maxdepth: 2 + + about/geotrek.rst .. toctree:: - :caption: User manual + :caption: 🚀 User manual :maxdepth: 2 usage/overview.rst - usage/screencasts.rst - usage/editing-objects.rst + usage/interfaces.rst usage/management-modules.rst - usage/treks.rst - usage/outdoor.rst - usage/static-pages.rst + usage/touristic-modules.rst + usage/editing-objects.rst usage/configuration-ttw.rst - usage/externals-apis.rst - usage/qgis.rst - faq.rst + usage/apis.rst + usage/static-pages.rst + usage/tutorials.rst .. toctree:: - :caption: Installation & configuration + :caption: 🔧 Installation & configuration :maxdepth: 2 install/installation @@ -31,28 +33,21 @@ Welcome to Geotrek's documentation! install/synchronization install/import install/docker - install/sensitivity .. toctree:: - :caption: Contribute + :caption: ✨ Contribute :maxdepth: 2 - CONTRIBUTING + contribute/contributing contribute/development contribute/translating contribute/documentation contribute/design .. toctree:: - :caption: Others - :maxdepth: 2 - - troubleshooting - authors - changelog - -Indices and tables ------------------- + :caption: 📝 Others + :maxdepth: 1 -* :ref:`genindex` -* :ref:`search` + others/troubleshooting + others/authors + others/changelog diff --git a/docs/install/advanced-configuration.rst b/docs/install/advanced-configuration.rst index 27fef76484..ec5b2b6e4a 100644 --- a/docs/install/advanced-configuration.rst +++ b/docs/install/advanced-configuration.rst @@ -4,6 +4,11 @@ Advanced configuration ====================== +.. contents:: + :local: + :depth: 2 + + Application settings -------------------- @@ -14,8 +19,7 @@ In order to check your configuration of spatial extents, a small tool is available at http://server/tools/extents/. .. note :: - - Administrator privileges are required. + Administrator privileges are required. Email settings @@ -37,32 +41,43 @@ be sent to the managers: .. code-block :: bash sudo geotrek sendtestemail --managers - + +.. _API: API ~~~ -.. code-block :: python +.. envvar:: API_IS_PUBLIC + + Set to ``True`` if you want the API V2 to be available for everyone without authentication. - API_IS_PUBLIC = True + Example:: -Choose if you want the API V2 to be available for everyone without authentication. This API provides access to promotion content (Treks, POIs, Touristic Contents ...). Set to False if Geotrek is intended to be used only for managing content and not promoting them. -Note that this setting does not impact the Path endpoints, which means that the Paths informations will always need authentication to be display in the API, regardless of this setting. + API_IS_PUBLIC = True + + Default:: + + False + +.. note:: + - This API provides access to promotion content (Treks, POIs, Touristic Contents ...). + - Set to ``False`` if Geotrek is intended to be used only for managing content and not promoting them. + - This setting does not impact the Path endpoints, which means that the Paths informations will always need authentication to be display in the API, regardless of this setting. Swagger API documentation ~~~~~~~~~~~~~~~~~~~~~~~~~ -In order to enable swagger module to auto-document API, in the custom settings file, -add the following code: +.. envvar:: INSTALLED_APPS for API V2 -.. code-block :: python +In order to enable swagger module to auto-document API, in the custom settings file, add the following code : + + Enable API V2 documentation:: - # Enable API v2 documentation - INSTALLED_APPS += ('drf_yasg', ) + INSTALLED_APPS += ('drf_yasg', ) Then run ``sudo dpkg-reconfigure -u geotrek-admin``. -The API swagger documentation is now availaible here : `/api/v2` +The API swagger documentation is now availaible here : ``/api/v2`` Share services between several Geotrek instances ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -136,26 +151,20 @@ To enable this feature, fill these fields in ``/opt/geotrek-admin/var/conf/custo Expected columns in table/view are : -* username : string (*unique*) -* first_name : string -* last_name : string -* password : string (simple md5 encoded, or full hashed and salted password) -* email : string -* level : integer (1: readonly, 2: redactor, 3: path manager, 4: trekking manager, 5: management and trekking editor, 6: administrator) -* structure : string -* lang : string (language code) +* ``username`` : string (*unique*) +* ``first_name`` : string +* ``last_name``: string +* ``password`` : string (simple md5 encoded, or full hashed and salted password) +* ``email`` : string +* ``level`` : integer (1: readonly, 2: redactor, 3: path manager, 4: trekking manager, 5: management and trekking editor, 6: administrator) +* ``structure`` : string +* ``lang`` : string (language code) .. note :: - - The schema used in ``AUTHENT_TABLENAME`` must be in the user search_path (``ALTER USER $geotrek_db_user SET search_path=public,userschema;``) - - User management will be disabled from Administration backoffice. - - In order to disable remote login, just comment *AUTHENTICATION_BACKENDS* line in settings - file, and restart instance (see paragraph above). - - Geotrek-admin can support many types of users authentication (LDAP, oauth, ...), contact us - for more details. + - The schema used in ``AUTHENT_TABLENAME`` must be in the user search_path (``ALTER USER $geotrek_db_user SET search_path=public,userschema;``) + - User management will be disabled from Administration backoffice. + - In order to disable remote login, just comment *AUTHENTICATION_BACKENDS* line in settings file, and restart instance (see paragraph above). + - Geotrek-admin can support many types of users authentication (LDAP, oauth, ...), contact us for more details. Custom SQL ~~~~~~~~~~ @@ -166,6 +175,7 @@ Put your custom SQL in a file name ``/opt/geotrek-admin/var/conf/extra_sql/`_ for vectorial -layer style. +.. envvar:: MAPENTITY_CONFIG for layers color and style -.. code-block :: python + All layers colors can be customized from the settings. See `Leaflet reference `_ for vectorial layer style. - MAPENTITY_CONFIG['MAP_STYLES']['path'] = {'color': 'red', 'weight': 5} + Example:: -Or change just one parameter (the opacity for example): + MAPENTITY_CONFIG['MAP_STYLES']['path'] = {'color': 'red', 'weight': 5} -.. code-block :: python + Example with one parameter:: - MAPENTITY_CONFIG['MAP_STYLES']['city']['opacity'] = 0.8 + MAPENTITY_CONFIG['MAP_STYLES']['city']['opacity'] = 0.8 +.. note :: + It can be interesting when your tiles can't go to a zoom. For example OpenTopoMap is 17. -Regarding colors that depend from database content, such as land layers -(physical types, work management...) or restricted areas. We use a specific -setting that receives a list of colors: -.. code-block :: python +.. envvar:: COLORS_POOL + + Regarding colors that depend from database content, such as land layers (physical types, work management...) or restricted areas. We use a specific setting that receives a list of colors: - COLORS_POOL['restrictedarea'] = ['#ff00ff', 'red', '#ddddd'...] + Example:: + COLORS_POOL['restrictedarea'] = ['#ff00ff', 'red', '#ddddd'...] See the default values in ``geotrek/settings/base.py`` for the complete list of available styles. @@ -321,7 +333,7 @@ of available styles. 'arrowColor': 'black', 'arrowSize': 10},} } -Color of the different layers on the map +Color of the different layers on the map : .. code-block :: python @@ -338,30 +350,31 @@ Color of the different layers on the map Color of the different layers on the top right for landing. - * For land, physical, competence, signagemanagement, workmanagement should have 5 values. - * For restricted Area: add as many color as your number of restricted area type - -**Restart** the application for changes to take effect. +.. note :: + - For land, physical, competence, signagemanagement, workmanagement should have 5 values. + - For restricted Area: add as many color as your number of restricted area type + - **Restart** the application for changes to take effect. External raster layers ~~~~~~~~~~~~~~~~~~~~~~ -It is possible to add overlay tiles layer on maps. For example, it can be useful to: +.. tip:: + It is possible to add overlay tiles layer on maps. For example, it can be useful to: + - Get the cadastral parcels on top of satellite images + - Home made layers (*with Tilemill or QGisMapserver for example*). + - Like the park center borders, traffic maps, IGN BDTopo® or even the Geotrek paths that are marked as invisible in the database! -* Get the cadastral parcels on top of satellite images -* Home made layers (*with Tilemill or QGisMapserver for example*). - Like the park center borders, traffic maps, IGN BDTopo® or even the Geotrek paths - that are marked as invisible in the database! +.. envvar:: LEAFLET_CONFIG['OVERLAYS'] -In ``custom.py``, just add the following lines: + In ``custom.py``, just add the following lines: -.. code-block :: python + Example:: - LEAFLET_CONFIG['OVERLAYS'] = [ - ('Cadastre', '//wxs.ign.fr/essentiels/geoportail/wmts?LAYER=CADASTRALPARCELS.PARCELLAIRE_EXPRESS&EXCEPTIONS=image/jpeg&FORMAT=image/png&SERVICE=WMTS&VERSION=1.0.0&REQUEST=GetTile&STYLE=normal&TILEMATRIXSET=PM&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}', '© IGN - GeoPortail') + LEAFLET_CONFIG['OVERLAYS'] = [ + ('Cadastre', '//data.geopf.fr/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=CADASTRALPARCELS.PARCELLAIRE_EXPRESS&STYLE=normal&FORMAT=image/png&TILEMATRIXSET=PM&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}', '© Cadastre - Carte © IGN/Geoportail') ('Coeur de parc', 'http://serveur/coeur-parc/{z}/{x}/{y}.png', '© PNF'), - ] + ] **Expected properties:** @@ -379,55 +392,79 @@ For ``GeoJSON`` files, you can provide the following properties : Geographical CRUD ~~~~~~~~~~~~~~~~~ -.. code-block :: python +.. envvar:: PATH_SNAPPING_DISTANCE - PATH_SNAPPING_DISTANCE = 2.0 + Minimum distance to merge two paths in unit of SRID -Minimum distance to merge 2 paths in unit of SRID + Example:: - *Change the distance. Better to keep it like this. Not used when ``TREKKING_TOPOLOGY_ENABLED = True``.* + PATH_SNAPPING_DISTANCE = 2.0 -.. code-block :: python +.. note :: + - Change the distance. Better to keep it like this. + - Not used when ``TREKKING_TOPOLOGY_ENABLED = True`` - SNAP_DISTANCE = 30 +.. envvar:: SNAP_DISTANCE -Distance of snapping for the cursor in pixels on Leaflet map. + Distance of snapping for the cursor in pixels on Leaflet map. -.. code-block :: python + Example:: - PATH_MERGE_SNAPPING_DISTANCE = 2 + SNAP_DISTANCE = 30 -Minimum distance to merge 2 paths. +.. envvar:: PATH_MERGE_SNAPPING_DISTANCE - *Change the distance. Should be higher or the same as PATH_SNAPPING_DISTANCE* + Minimum distance to merge two paths. - *Used when TREKKING_TOPOLOGY_ENABLED = True* + Example:: -.. code-block :: python + PATH_MERGE_SNAPPING_DISTANCE = 2 - TREK_POINTS_OF_REFERENCE_ENABLED = True +.. note :: + - Change the distance. Should be higher or the same as ``PATH_SNAPPING_DISTANCE``. + - Used when ``TREKKING_TOPOLOGY_ENABLED = True``. -Points of reference are enabled on form of treks. +.. envvar:: TREK_POINTS_OF_REFERENCE_ENABLED -.. code-block :: python + Points of reference are enabled on form of treks. - OUTDOOR_COURSE_POINTS_OF_REFERENCE_ENABLED = True + Example:: -Points of reference are enabled on form of otudoor courses. + TREK_POINTS_OF_REFERENCE_ENABLED = True -.. code-block :: python + Default:: - TOPOLOGY_STATIC_OFFSETS = {'land': -5, 'physical': 0, 'competence': 5, 'signagemanagement': -10, 'workmanagement': 10} + False -Land objects are added on other objects (path for example) with offset, avoiding overlay. +.. envvar:: OUTDOOR_COURSE_POINTS_OF_REFERENCE_ENABLED - *You should not change it to avoid overlay except if you want to have more overlay.* - *You can do for example for :* + Points of reference are enabled on form of otudoor courses. -.. code-block :: python + Example:: + + OUTDOOR_COURSE_POINTS_OF_REFERENCE_ENABLED = True + + Default:: + + False + +.. envvar:: TOPOLOGY_STATIC_OFFSETS + + Land objects are added on other objects (path for example) with offset, avoiding overlay. + + Example:: + + TOPOLOGY_STATIC_OFFSETS = {'land': -5, 'physical': 0, 'competence': 5, 'signagemanagement': -10, 'workmanagement': 10} + + Example with more overlays:: TOPOLOGY_STATIC_OFFSETS = {'land': -7, 'physical': 0, 'competence': 7, 'signagemanagement': -14, 'workmanagement': 14} +.. note :: + You should not change it to avoid overlay except if you want to have more overlays. + +**All settings used to generate altimetric profile :** + .. code-block :: python ALTIMETRIC_PROFILE_PRECISION = 25 # Sampling precision in meters @@ -443,23 +480,25 @@ Land objects are added on other objects (path for example) with offset, avoiding ALTIMETRIC_AREA_MAX_RESOLUTION = 150 # Maximum number of points (by width/height) ALTIMETRIC_AREA_MARGIN = 0.15 -All settings used to generate altimetric profile. - - *All these settings can be modified but you need to check the result every time* - - *The only one modified most of the time is ALTIMETRIC_PROFILE_COLOR* +.. note:: + - All these settings can be modified but you need to check the result every time + - The only one modified most of the time is ``ALTIMETRIC_PROFILE_COLOR`` Disable darker map backgrounds ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Since IGN map backgrounds are very dense and colourful, a dark opacity is -applied. In order to disable, change this MapEntity setting: +.. envvar:: MAPENTITY_CONFIG for map background -.. code-block :: python + Since IGN map backgrounds are very dense and colourful, a dark opacity is applied. In order to disable, change this MapEntity setting: + + Example:: + + MAPENTITY_CONFIG['MAP_BACKGROUND_FOGGED'] = False - MAPENTITY_CONFIG['MAP_BACKGROUND_FOGGED'] = False + Default:: + True Map screenshots ~~~~~~~~~~~~~~~ @@ -472,16 +511,18 @@ Map screenshots SHOW_SIGNAGES_ON_MAP_SCREENSHOT = True SHOW_INFRASTRUCTURES_ON_MAP_SCREENSHOT = True -Show objects on maps of PDF +.. envvar:: MAP_CAPTURE_SIZE -.. code-block :: python + Show objects on maps of PDF - MAP_CAPTURE_SIZE = 800 + Example:: -Size in pixels of the capture. + MAP_CAPTURE_SIZE = 800 - *Be careful with your pdfs.* - *If you change this value, pdfs will be rendered differently* +.. note :: + - Size in pixels of the capture. + - Be careful with your pdfs. + - If you change this value, pdfs will be rendered differently Modules and components @@ -490,8 +531,7 @@ Modules and components Enable Apps ~~~~~~~~~~~ -In order to disable a full set of modules, in the custom settings file, -add the following code: +In order to disable a full set of modules, in the custom settings file, add the following code: .. code-block :: python @@ -501,17 +541,32 @@ add the following code: _INSTALLED_APPS.remove('geotrek.maintenance') INSTALLED_APPS = _INSTALLED_APPS -In order to remove notion of trails: -.. code-block :: python +.. envvar:: TRAIL_MODEL_ENABLED - TRAIL_MODEL_ENABLED = False + In order to remove notion of trails. -In order to remove landedge model: + Example:: -.. code-block :: python + TRAIL_MODEL_ENABLED = False + + Default:: + + True + + +.. envvar:: LANDEDGE_MODEL_ENABLED + + In order to remove landedge model. + + Example:: + + LANDEDGE_MODEL_ENABLED = False + + Default:: + + True - LANDEDGE_MODEL_ENABLED = False In order to remove zoning combo-boxes on list map: @@ -521,126 +576,177 @@ In order to remove zoning combo-boxes on list map: LAND_BBOX_DISTRICTS_ENABLED = False LAND_BBOX_AREAS_ENABLED = False -In order to hide TouristicContents and TouristicEvents on menu: -.. code-block :: python +.. envvar:: TOURISM_ENABLED - TOURISM_ENABLED = False + In order to hide TouristicContents and TouristicEvents on menu. -In order to hide Flatpages on menu. Flatpages are used in Geotrek-rando. + Example:: -.. code-block :: python + TOURISM_ENABLED = False - FLATPAGES_ENABLED = False + Default:: -In order to hide the accessibility menu for attachments: + True -.. code-block :: python +.. envvar:: FLATPAGES_ENABLED - ACCESSIBILITY_ATTACHMENTS_ENABLED = False + In order to hide Flatpages on menu. Flatpages are used in Geotrek-rando. -.. note :: + Example:: + + FLATPAGES_ENABLED = False + + Default:: + + True + +.. envvar:: ACCESSIBILITY_ATTACHMENTS_ENABLED - By doing so, some software upgrades may not be as smooth as usual. - Never forget to mention this customization if you ask for community support. + In order to hide the accessibility menu for attachments. + + Example:: + + ACCESSIBILITY_ATTACHMENTS_ENABLED = False + + Default:: + + True + +.. note :: + - By doing so, some software upgrades may not be as smooth as usual. + - Never forget to mention this customization if you ask for community support. Paths ~~~~~ -.. code-block :: python +.. envvar:: ALLOW_PATH_DELETION_TOPOLOGY - ALLOW_PATH_DELETION_TOPOLOGY = True + If ``False``, it forbids to delete a path when at least one topology is linked to this path. -If false, it forbid to delete a path when at least one topology is linked to this path. + Example:: + ALLOW_PATH_DELETION_TOPOLOGY = True -.. code-block :: python + Default:: - ALERT_DRAFT = False + False -If True, it sends a message to managers (MANAGERS) whenever a path has been changed to draft. -Email configuration takes place in ``/opt/geotrek-admin/var/conf/custom.py``, where you control -recipients emails (``ADMINS``, ``MANAGERS``) and email server configuration. +.. envvar:: ALERT_DRAFT + If ``True``, it sends a message to managers (MANAGERS) whenever a path has been changed to draft. -.. code-block :: python - ALERT_REVIEW = False + Example:: + ALERT_DRAFT = False -If True, it sends a message to managers (MANAGERS) whenever an object which can be published has been changed to review mode. + Default:: -Email configuration takes place in ``/opt/geotrek-admin/var/conf/custom.py``, where you control -recipients emails (``ADMINS``, ``MANAGERS``) and email server configuration. + True + +.. envvar:: ALERT_REVIEW + + If ``True``, it sends a message to managers (MANAGERS) whenever an object which can be published has been changed to review mode. + + + Example:: + + ALERT_REVIEW = False + + Default:: + + True + +.. note :: + Email configuration takes place in ``/opt/geotrek-admin/var/conf/custom.py``, where you control recipients emails (``ADMINS``, ``MANAGERS``) and email server configuration. Signage and Blade ~~~~~~~~~~~~~~~~~ - ``BLADE_ENABLED`` and ``LINE_ENABLED`` settings (default to ``True``) allow to enable or disable blades and lines submodules. ``DIRECTION_ON_LINES_ENABLED`` setting (default to ``False``) allow to have the `direction` field on lines instead of blades. -.. code-block :: python +.. envvar:: BLADE_CODE_TYPE - BLADE_CODE_TYPE = int + Type of the blade code (string or integer) -Type of the blade code (str or int) - *It can be str or int.* + Example:: - *If you have an integer code : int* + BLADE_CODE_TYPE = INT - *If you have an string code : str* +.. note :: + - It can be string or integer + - If you have an integer code : ``int`` + - If you have an string code : ``str`` -.. code-block :: python +.. envvar:: BLADE_CODE_FORMAT - BLADE_CODE_FORMAT = "{signagecode}-{bladenumber}" + Correspond to the format of blades. Show N3-1 for the blade 1 of the signage N3. -Correspond to the format of blades. Show N3-1 for the blade 1 of the signage N3. - *If you want to change : move information under bracket* + Example:: - *You can also remove one element between bracket* + BLADE_CODE_FORMAT = "{signagecode}-{bladenumber}" - *You can do for exemple :* - *"CD99.{signagecode}.{bladenumber}"* +.. note :: + - If you want to change : move information under bracket + - You can also remove one element between bracket + - You can do for exemple : ``"CD99.{signagecode}.{bladenumber}"`` + - It will display : ``CD99.XIDNZEIU.01 (first blade of XIDNZEIU)`` + - ``signagecode`` is the code of the signage + - ``bladenumber`` is the number of the blade - *It will display : CD99.XIDNZEIU.01 (first blade of XIDNZEIU)* +.. envvar:: LINE_CODE_FORMAT - * *signagecode is the code of the signage* - * *bladenumber is the number of the blade* + Corresponds to the format used in export of lines. Used in csv of signage -.. code-block :: python - LINE_CODE_FORMAT = "{signagecode}-{bladenumber}-{linenumber}" + Example:: + + LINE_CODE_FORMAT = "{signagecode}-{bladenumber}-{linenumber}" + +.. note :: + - Similar with above + - You can do for example : ``"CD99.{signagecode}-{bladenumber}.{linenumber}"`` + - It will display : ``CD99.XIDNZEIU-01.02`` (second line of the first blade of XIDNZEIU) + - ``signagecode`` is the code of the signage + - ``bladenumber`` is the number of the blade + - ``linenumber`` is the number of the line + +.. _trek-poi-intersection: + +POI +~~~~ + +.. envvar:: TREK_POI_INTERSECTION_MARGIN -Correspond to the format used in export of lines. Used in csv of signage. + Buffer around treks to intersects POIs (works only without dynamic segmentation) - *Similar with above* - *You can do for example :* - *"CD99.{signagecode}-{bladenumber}.{linenumber}"* + Example:: - *It will display : CD99.XIDNZEIU-01.02 (second line of the first blade of XIDNZEIU)* + TREK_POI_INTERSECTION_MARGIN = 500 # meters - * *signagecode is the code of the signage* - * *bladenumber is the number of the blade* - * *linenumber is the number of the line* + Default:: + 500 Diving ~~~~~~ -In order to enable diving module, in the custom settings file, -add the following code: +.. envvar:: INSTALLED_APPS for Diving -.. code-block :: python + In order to enable diving module, in the custom settings file, add the following code: + + Example:: + + INSTALLED_APPS += ('geotrek.diving', ) - # Enable diving module - INSTALLED_APPS += ('geotrek.diving', ) Then run ``sudo dpkg-reconfigure -pcritical geotrek-admin``. @@ -667,17 +773,19 @@ You can insert circulation and authorization types with this command : sudo geotrek loaddata /opt/geotrek-admin/lib/python*/site-packages/geotrek/land/fixtures/circulations.json +.. _outdoor: Outdoor ~~~~~~~ -In order to enable Outdoor module, in the custom settings file, -add the following code: +.. envvar:: INSTALLED_APPS for Outdoor -.. code-block :: python + In order to enable Outdoor module, in the custom settings file, add the following code: + + Example:: + + INSTALLED_APPS += ('geotrek.outdoor', ) - # Enable Outdoor module - INSTALLED_APPS += ('geotrek.outdoor', ) Then run ``sudo dpkg-reconfigure -pcritical geotrek-admin``. @@ -689,22 +797,22 @@ You can also insert Outdoor minimal data: After installing Outdoor module, you have to add permissions to your user groups on outdoor sites and courses. -Note: Outdoor module is not compatible with PostGIS <= 2.4 that is included in Ubuntu 18.04. -You should either upgrade to Ubuntu 20.04 or upgrade postGIS to 2.5 with -https://launchpad.net/~ubuntugis/+archive/ubuntu/ppa +.. note :: + - Outdoor module is not compatible with PostGIS <= 2.4 that is included in Ubuntu 18.04. + - You should either upgrade to Ubuntu 20.04 or upgrade postGIS to 2.5 with https://launchpad.net/~ubuntugis/+archive/ubuntu/ppa + +.. _sensitive-areas: Sensitive areas ~~~~~~~~~~~~~~~ -In order to enable sensitivity module, in the custom settings file, -add the following code: +.. envvar:: INSTALLED_APPS for Sensitive areas -.. code-block :: python + In order to enable sensitivity module, in the custom settings file, add the following code: - # Enable sensitivity module - INSTALLED_APPS += ('geotrek.sensitivity', ) + Example:: -See `sensitivity section <./sensitivity.html>`_ for settings and imports. + INSTALLED_APPS += ('geotrek.sensitivity', ) You can insert rules of sensitive area with these commands : @@ -714,6 +822,109 @@ You can insert rules of sensitive area with these commands : sudo geotrek loaddata /opt/geotrek-admin/lib/python*/site-packages/geotrek/sensitivity/fixtures/rules.json cp -r /opt/geotrek-admin/lib/python*/site-packages/geotrek/sensitivity/fixtures/upload/rules/ /opt/geotrek-admin/var/media/upload/ +Settings +''''''''' + +The following settings are related to sensitive areas: + +.. envvar:: SENSITIVITY_DEFAULT_RADIUS + + Default radius of sensitivity bubbles when not specified for species + + Example:: + + SENSITIVITY_DEFAULT_RADIUS = 100 # meters + + Default:: + + 100 + + +.. envvar:: SENSITIVE_AREA_INTERSECTION_MARGIN + + Buffer around treks to intersects sensitive areas + + Example:: + + SENSITIVE_AREA_INTERSECTION_MARGIN = 500 # meters + + Default:: + + 500 + +.. notes + + # Take care if you change this value after adding data. You should update buffered geometry in sql. + ``` UPDATE sensitivity_sensitivearea SET geom_buffered = ST_BUFFER(geom, ); ``` + + +Import from https://biodiv-sports.fr +'''''''''''''''''''''''''''''''''''''' + +In user interface, in the top-right menu, clic on "Imports" and choose "Biodiv'Sports". + +On command line, run + +.. code-block :: bash + + sudo geotrek import geotrek.sensitivity.parsers.BiodivParser + + +Import from shapefile +''''''''''''''''''''''' + +In user interface, in the top-right menu, go to Imports and choose "Shapefile zone sensible espèce" +or "Shapefile zone sensible réglementaire". + +.. note:: + The file must be a zip containing all the shapefile extensions (.shp, .shx, .prj, .dbf, .cpg) + +.. figure:: ../images/advanced-configuration/import_shapefile.png + :alt: Import shapefile in user interface + :align: center + + Import shapefile in user interface + + +On command line, run: + +.. code-block :: bash + + sudo geotrek import geotrek.sensitivity.parsers.SpeciesSensitiveAreaShapeParser + +or: + +.. code-block :: bash + + sudo geotrek import geotrek.sensitivity.parsers.RegulatorySensitiveAreaShapeParser . + +Attributes for "zones espèces sensibles" are: + +* ``espece`` : species name. Mandatory. A species with this name must have been previously created. +* ``contact`` : contact (text or HTML format). Optional. +* ``descriptio`` : description (text or HTML format). Optional. + +Attributes for "zones sensibles réglementaires" are: + +* ``name``: zone name. +* ``contact`` : contact (text or HTML format). Optional. +* ``descriptio`` : description (text or HTML format). Optional. +* ``periode`` : month numbers of zone occupation, separated by comas, without spaces (ex. « 6,7,8 » for june, july and august) +* ``pratiques`` : sport practices names, separated by comas, without spaces (ex. « Terrestre,Aérien »). A sport practice with this name must have been previously created. +* ``url`` : card url. Optional. + + +Sync to Geotrek-rando +''''''''''''''''''''''' + +Just run: + +.. code-block :: bash + + sudo geotrek sync_rando + +If sensitivity module is enabled, sensitive areas will be automatically synchronized. + Feedback reports settings ------------------------- @@ -721,31 +932,38 @@ Feedback reports settings Send acknowledge email ~~~~~~~~~~~~~~~~~~~~~~ -.. code-block :: python +.. envvar:: SEND_REPORT_ACK + + If ``False``, no email will be sent to the sender of any feedback on Geotrek-rando website. - SEND_REPORT_ACK = True + Example:: -If false, no email will be sent to the sender of any feedback on Geotrek-rando website + SEND_REPORT_ACK = True + Default:: + + False + +.. _suricate-support: Suricate support ~~~~~~~~~~~~~~~~ Suricate is the French national database gathering such reports. It exposes an API for external software to connect to. For Geotrek to connect to Suricate, you need to request two pairs of API keys allowing access. -Geotrek reports can work together with Suricate API, using one of 3 modes. Proceed through a mode full configuration before proceeding to the next mode. +Geotrek reports can work together with Suricate API, using one of three modes. Proceed through a mode full configuration before proceeding to the next mode. **1 - No Suricate (default)** This mode sends no report data to Suricate. -To initialize Report forms (Geotrek-admin, Geotrek-rando-v2, Geotrek-rando-v3) load lists for categories, activities, statuses and problem magnitude: +To initialize Report forms (Geotrek-admin, Geotrek-rando-V2, Geotrek-rando-V3) load lists for categories, activities, statuses and problem magnitude: .. code-block :: python geotrek loaddata /opt/geotrek-admin/lib/python*/site-packages/geotrek/feedback/fixtures/basic.json -To make these lists available for your Geotrek-rando-v2, run ``sync_rando`` (see :ref:`synchronization `) +To make these lists available for your Geotrek-rando-V2, run ``sync_rando`` (see :ref:`synchronization `) **2 - Suricate Standard** @@ -769,7 +987,12 @@ Set your account settings in ``custom.py``: This mode allows to retrieve reports and related data directly from Suricate, using the Management API to get data. It is used to process and manage reports, using the Intervention module and following a predefined worklow, while sending all progress to Suricate. It implies enabling Suricate Report mode as well. -.. image :: ../images/advanced-configuration/suricate.png +.. figure:: ../images/advanced-configuration/suricate.png + :alt: Suricate workflow + :align: center + + Suricate workflow + Suricate Workflow mode defines a strict process, composed of several steps representing the lifecycle of a user report, from creation to closing. A report is always characterized with a status, depicting how far in the process the report is, and displayed using a specific color on the map. @@ -781,7 +1004,7 @@ A report consists of the following information : * A category : environment, security, usage conflit, signages * A magnitude : usage is possible, difficult, or impossible * A practice : trekking, cycling, horse-riding… - * Up to 3 pictures + * Up to three pictures **Stakeholders and responsibility** @@ -904,13 +1127,18 @@ To make these lists available for your Geotrek-rando, run ``sync_rando`` (see :r geotrek loaddata /opt/geotrek-admin/lib/python*/site-packages/geotrek/feedback/fixtures/management_workflow.json geotrek loaddata /opt/geotrek-admin/lib/python*/site-packages/geotrek/maintenance/fixtures/basic.json -- Go to the Admin Site and - - if you want to include the moderation steps (`SKIP_MANAGER_MODERATION = False`), select a user as Workflow Manager (`/admin/feedback/workflowmanager/`). Their role is to assign reports to other users. - - select a district as Workflow District (`/admin/feedback/workflowdistrict/`). This zone defines the area of reponsibility for reports. Reports relocated outside of the district will be excluded from workflow. - - create predefined emails (`/admin/feedback/predefinedemail/`) to notify Suricate Sentinels and Administrators. You can use `##intervention_end_date##` and `##supervisor##` in the messages' body to automatically replace with the report's linked Intervention date and author. The Extended Username field will be dsiplayed (see User Profile under `/admin/auth/user/`). - - make sure Users involved in the workflow have proper permissions to create and update Reports and Interventions (`/admin/auth/user/`) +- Go to the configuration site and : + + - if you want to include the moderation steps (``SKIP_MANAGER_MODERATION = False``), select a user as Workflow Manager (`/admin/feedback/workflowmanager/`). Their role is to assign reports to other users. + - select a district as Workflow District (`/admin/feedback/workflowdistrict/`). This zone defines the area of reponsibility for reports. Reports relocated outside of the district will be excluded from workflow. + - create predefined emails (`/admin/feedback/predefinedemail/`) to notify Suricate Sentinels and Administrators. You can use `##intervention_end_date##` and `##supervisor##` in the messages' body to automatically replace with the report's linked Intervention date and author. The Extended Username field will be dsiplayed (see User Profile under `/admin/auth/user/`). + - Make sure Users involved in the workflow have proper permissions to create and update Reports and Interventions (`/admin/auth/user/`) -Be aware that, when enabling Suricate Management mode, Suricate becomes the master database for reports. This means **reports created in Geotrek-admin will not be saved to the database, they will only be sent to Suricate**. Reports are only saved when synchronized back from Suricate, when the synchronization command is run. Make sure to run these 3 commands daily to maintain synchronization and update reports (thanks to `cron` for instance) : +.. note :: + - Be aware that, when enabling Suricate Management mode, Suricate becomes the master database for reports. This means **reports created in Geotrek-admin will not be saved to the database, they will only be sent to Suricate**. + - Reports are only saved when synchronized back from Suricate, when the synchronization command is run. + +Make sure to run these three commands daily to maintain synchronization and update reports (thanks to `cron` for instance) : .. code-block :: python @@ -922,24 +1150,31 @@ Be aware that, when enabling Suricate Management mode, Suricate becomes the mast Display reports with status defined colors ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -.. code-block :: python +.. envvar:: ENABLE_REPORT_COLORS_PER_STATUS + + Go to the Configuration site and select colors to display for each status (`/admin/feedback/reportstatus/`). - ENABLE_REPORT_COLORS_PER_STATUS = True + Example:: -Go to the Admin Site and select colors to display for each status (`/admin/feedback/reportstatus/`). + ENABLE_REPORT_COLORS_PER_STATUS = True + + Default:: + + False Use timers to receive alerts for your reports ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -It is possible to enable receiving email alerts for reports that have remained in the same status for too long. -For instance, I can create two report statuses "To program" with timer days set to 10 and "Programmed" with timer days set to 0. -If a report has had status "To program" for 10 days, an email alert will be sent. If its status is changed to "Programmed" within these 10 days, this will cancel the alert. -The email alert will be sent to the assigned user for this report, or to managers (setting `MANAGERS`) if there is no assigned user. +.. tip:: + - It is possible to enable receiving email alerts for reports that have remained in the same status for too long. + - For instance, I can create two report statuses "To program" with timer days set to 10 and "Programmed" with timer days set to 0. + - If a report has had status "To program" for 10 days, an email alert will be sent. If its status is changed to "Programmed" within these 10 days, this will cancel the alert. + - The email alert will be sent to the assigned user for this report, or to managers (setting `MANAGERS`) if there is no assigned user. -To enable the alerts : +**To enable the alerts :** -- Go to the Admin Site and set "Timer days" to some integer other than 0 in relevant statuses (`/admin/feedback/reportstatus/`) +- Go to the Configuration module and set "Timer days" to some integer other than 0 in relevant statuses (`/admin/feedback/reportstatus/`) - Select the "Uses timers" checkbox on reports that you wish to receive alerts for (in report update form) @@ -976,22 +1211,33 @@ Attachments View attachments in the browser ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Attached files are downloaded by default by browser, with the following line, -files will be opened in the browser : +.. envvar:: MAPENTITY_CONFIG for medias -.. code-block :: python + Attached files are downloaded by default by browser, with the following line, files will be opened in the browser : - MAPENTITY_CONFIG['SERVE_MEDIA_AS_ATTACHMENT'] = False + Example:: + MAPENTITY_CONFIG['SERVE_MEDIA_AS_ATTACHMENT'] = False + + Default:: + + True Resizing uploaded pictures ~~~~~~~~~~~~~~~~~~~~~~~~~~ -Attached pictures can be resized at upload by enabling ``PAPERCLIP_RESIZE_ATTACHMENTS_ON_UPLOAD``: +.. envvar:: PAPERCLIP_RESIZE_ATTACHMENTS_ON_UPLOAD -.. code-block :: python + Attached pictures can be resized at upload by enabling this parameter : + + Example:: + + PAPERCLIP_RESIZE_ATTACHMENTS_ON_UPLOAD = True + + Default:: + + False - PAPERCLIP_RESIZE_ATTACHMENTS_ON_UPLOAD = True These corresponding height/width parameters can be overriden to select resized image size: @@ -1004,11 +1250,13 @@ These corresponding height/width parameters can be overriden to select resized i Prohibit usage of big pictures and small width / height ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -If you want to prohibit the usage of heavy pictures: +.. envvar:: PAPERCLIP_MAX_BYTES_SIZE_IMAGE -.. code-block :: python + If you want to prohibit the usage of heavy pictures: - PAPERCLIP_MAX_BYTES_SIZE_IMAGE = 50000 # Bytes + Example:: + + PAPERCLIP_MAX_BYTES_SIZE_IMAGE = 50000 # Bytes If you want to prohibit the usage of small pictures in pixels: @@ -1017,7 +1265,7 @@ If you want to prohibit the usage of small pictures in pixels: PAPERCLIP_MIN_IMAGE_UPLOAD_WIDTH = 100 PAPERCLIP_MIN_IMAGE_UPLOAD_HEIGHT = 100 -These 3 settings will also not allow downloading images from the parsers. +These three settings will also not allow downloading images from the parsers. Prohibit usage of certain file types @@ -1054,19 +1302,26 @@ Here is the default value for this setting, which you can extend if needed: 'odg', ] -It will verify that the mimetype of the file matches the extension. You can add extra allowed mimetypes for a given extension with the following syntax: +It will verify that the mimetype of the file matches the extension. -.. code-block :: python +.. envvar:: PAPERCLIP_EXTRA_ALLOWED_MIMETYPES - PAPERCLIP_EXTRA_ALLOWED_MIMETYPES['gpx'] = ['text/xml'] + You can add extra allowed mimetypes for a given extension with the following syntax: -You can also entirely deactivate these checks with the following: + Example:: -.. code-block :: python + PAPERCLIP_EXTRA_ALLOWED_MIMETYPES['gpx'] = ['text/xml'] + +.. envvar:: PAPERCLIP_ALLOWED_EXTENSIONS + + You can also entirely deactivate these checks with the following: - PAPERCLIP_ALLOWED_EXTENSIONS = None + Example:: -These 2 settings will also not allow downloading images from the parsers. + PAPERCLIP_ALLOWED_EXTENSIONS = None + +.. note :: + These two settings will also not allow downloading images from the parsers. Interface @@ -1088,15 +1343,19 @@ For each module, use the following syntax to configure columns to export as CSV COLUMNS_LISTS['_export'] = ['list', 'of', 'columns'] +Another setting exists to enable a more detailed export of jobs costs in the interventions module. When enabling this settings, interventions list exports will contain a new column for each job's total cost. -Please refer to the "settings detail" section for a complete list of modules and available columms. +.. envvar:: ENABLE_JOBS_COSTS_DETAILED_EXPORT -Another setting exists to enable a more detailed export of jobs costs in the interventions module. When enabling this settings, interventions list exports will contain a new column for each job's total cost. + Enable a more detailed export -.. code-block :: python + Example:: + + ENABLE_JOBS_COSTS_DETAILED_EXPORT = True - ENABLE_JOBS_COSTS_DETAILED_EXPORT = True + Default:: + False Custom columns available '''''''''''''''''''''''' @@ -2044,14 +2303,13 @@ A (nearly?) exhaustive list of attributes available for display and export as co Configure form fields in creation views ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -For each module, use the following syntax to configure fields to hide in the creation form. +.. envvar:: HIDDEN_FORM_FIELDS -.. code-block :: python - - HIDDEN_FORM_FIELDS[''] = ['list', 'of', 'fields'] + For each module, use the following syntax to configure fields to hide in the creation form. + Example:: -Please refer to the "settings detail" section for a complete list of modules and hideable fields. + HIDDEN_FORM_FIELDS[''] = ['list', 'of', 'fields'] Hideable form fields @@ -2357,22 +2615,27 @@ An exhaustive list of form fields hideable in each module. Configure form fields required or needed for review or publication ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Set 'error_on_publication' to avoid publication without completeness fields -and 'error_on_review' if you want this fields to be required before sending to review. +Set ``error_on_publication`` to avoid publication without completeness fields +and ``error_on_review`` if you want this fields to be required before sending to review. -.. code-block :: python +.. envvar:: COMPLETENESS_LEVEL - COMPLETENESS_LEVEL = 'warning' + Configure completeness level -For each module, configure fields to be needed or required on review or publication + Example:: -.. code-block :: python + COMPLETENESS_LEVEL = 'warning' + +.. envvar:: COMPLETENESS_FIELDS + + For each module, configure fields to be needed or required on review or publication - COMPLETENESS_FIELDS = { + Example:: + + COMPLETENESS_FIELDS = { 'trek': ['practice', 'departure', 'duration', 'difficulty', 'description_teaser'], 'dive': ['practice', 'difficulty', 'description_teaser'], - } - + } Edition ------- @@ -2384,52 +2647,64 @@ Text form fields are enhanced using `TinyMCE `_. Its configuration can be customized using advanced settings (see above paragraph). -For example, in order to control which buttons are to be shown, and which tags -are to be kept when cleaning-up, add this bloc : +.. envvar:: TINYMCE_DEFAULT_CONFIG -.. code-block :: python + For example, in order to control which buttons are to be shown, and which tags are to be kept when cleaning-up, add this bloc : + + Example:: - TINYMCE_DEFAULT_CONFIG = { + TINYMCE_DEFAULT_CONFIG = { 'theme_advanced_buttons1': 'bold,italic,forecolor,separator,code', 'valid_elements': "img,p,a,em/i,strong/b", - } - -This will apply to all text fields. + } -For more information on configuration entries available, please refer to the -official documentation of *TinyMCE version 3*. +.. note :: + - This will apply to all text fields. + - For more information on configuration entries available, please refer to the official documentation of *TinyMCE version 3*. Max characters count ~~~~~~~~~~~~~~~~~~~~ -Add ``MAX_CHARACTERS`` setting to be able to define a maximum number of characters -for text fields (to be used with django-mapentity >= 8.1). +.. envvar:: MAPENTITY_CONFIG for characters -.. code-block :: python + Add ``MAX_CHARACTERS`` setting to be able to define a maximum number of characters for text fields (to be used with django-mapentity >= 8.1). - MAPENTITY_CONFIG['MAX_CHARACTERS'] = 1500 + Example:: -This will apply to all text fields. -See `this issue `_ for details. + MAPENTITY_CONFIG['MAX_CHARACTERS'] = 1500 + +.. note :: + - This will apply to all text fields. + - See `this issue `_ for details. Copyright on pictures ~~~~~~~~~~~~~~~~~~~~~ -If you want copyright added to your pictures, change ``THUMBNAIL_COPYRIGHT_FORMAT`` to this: -.. code-block :: python +.. envvar:: THUMBNAIL_COPYRIGHT_FORMAT - THUMBNAIL_COPYRIGHT_FORMAT = "{title} {author}" + If you want copyright added to your pictures, change this parameter like so : -You can also add ``{legend}``: + Example:: - *"{title}-:-{author}-:-{legend}"* + THUMBNAIL_COPYRIGHT_FORMAT = "{title} {author}" -.. code-block :: python +.. note :: + - This will apply to all text fields. + - For more information on configuration entries available, please refer to the official documentation of *TinyMCE version 3*. + + +You can also add ``{legend}``: ``"{title}-:-{author}-:-{legend}"`` + +.. envvar:: THUMBNAIL_COPYRIGHT_SIZE - THUMBNAIL_COPYRIGHT_SIZE = 15 + Change the size of thumbnail + + Example:: + + THUMBNAIL_COPYRIGHT_SIZE = 15 Facebook configuration @@ -2442,13 +2717,16 @@ In Facebook developper dashboard, create a Facebook app dedicated to Geotrek-ran .. image :: /images/facebookappid.png -In ``custom.py`` set Facebook App ID: -.. code-block :: python +.. envvar:: FACEBOOK_APP_ID + + In ``custom.py`` set Facebook App ID: + + Example:: - FACEBOOK_APP_ID = '' + FACEBOOK_APP_ID = '' -you can also override these settings: +**You can also override these settings:** .. code-block :: python @@ -2466,15 +2744,14 @@ But you can also override default translation files available in each module Don't edit these default files, use them to find which words you want to override. -Create the custom translations destination folder: +**Create the custom translations destination folder:** -Create a ``django.po`` file in ``/opt/geotrek-admin/var/conf/extra_locale`` directory. -You can do one folder and one ``django.po`` file for each language -(example ``/opt/geotrek-admin/var/conf/extra_locale/fr/LC_MESSAGES/django.po`` for French translation overriding) +- Create a ``django.po`` file in ``/opt/geotrek-admin/var/conf/extra_locale`` directory. +- You can do one folder and one ``django.po`` file for each language (example ``/opt/geotrek-admin/var/conf/extra_locale/fr/LC_MESSAGES/django.po`` for French translation overriding) Override the translations that you want in these files. -Example of content for the French translation overriding: +**Example of content for the French translation overriding:** .. code-block :: python @@ -2504,7 +2781,7 @@ Example of content for the French translation overriding: msgid "District" msgstr "Pays" -Apply changes (French translation in this example): +**Apply changes (French translation in this example):** .. code-block :: bash @@ -2559,8 +2836,7 @@ The template for a specific portal will use the modification made on the overrid ( except if you change specific block) .. note :: - - This modification is not mandatory, if you have multiple portal and you want to modify the template of only one portal, you create one folder for this specific portal + This modification is not mandatory, if you have multiple portal and you want to modify the template of only one portal, you create one folder for this specific portal **You might need to use your own images in the PDF templates.** @@ -2584,9 +2860,7 @@ Example of a customised template (``/opt/geotrek-admin/var/conf/extra_templates/ {% endblock url %} .. note :: - - The default template may change in the future versions. You will be - in charge of porting the modification to your copy. + The default template may change in the future versions. You will be in charge of porting the modification to your copy. Test your modifications by exporting a trek or a content to PDF from Geotrek-admin application. To get your modifications available for Rando application, launch the ``sync_rando`` command. @@ -2595,11 +2869,21 @@ To get your modifications available for Rando application, launch the ``sync_ran PDF as booklet ~~~~~~~~~~~~~~ +.. envvar:: USE_BOOKLET_PDF + + Use booklet for PDF + + Example:: + + USE_BOOKLET_PDF = True - USE_BOOKLET_PDF = True + Default:: -Use booklet for PDF. During the synchro, pois details will be removed, and the pages will be merged. -It is possible to customize the pdf, with trek_public_booklet_pdf.html. + False + +.. note:: + - During the synchro, pois details will be removed, and the pages will be merged. + - It is possible to customize the pdf, with trek_public_booklet_pdf.html. Custom font in public document template ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -2627,12 +2911,13 @@ For more information, check out Ubuntu documentation. Custom colors in public document template ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -Trek export geometries are translucid red by default. In order to control the -apparence of objects in public trek PDF exports, use the following setting: +.. envvar:: MAPENTITY_CONFIG for custom colors in PDF -.. code-block :: python + Trek export geometries are translucid red by default. In order to control the apparence of objects in public trek PDF exports, use the following setting: + + Example:: - MAPENTITY_CONFIG['MAP_STYLES']['print']['path'] = {'weight': 3} + MAPENTITY_CONFIG['MAP_STYLES']['print']['path'] = {'weight': 3} See *Leaflet* reference documentation for detail about layers apparence. @@ -2640,12 +2925,16 @@ See *Leaflet* reference documentation for detail about layers apparence. Primary color in PDF templates ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -You can override ``PRIMARY_COLOR`` to change emphase text in PDF export. -Beware of contrast, white colour is used for text so we advise you to avoid light colour. +.. envvar:: PRIMARY_COLOR -.. code-block :: python + You can override ``PRIMARY_COLOR`` to change emphase text in PDF export. + + Example:: - PRIMARY_COLOR = "#7b8c12" + PRIMARY_COLOR = "#7b8c12" + +.. note:: + Beware of contrast, white colour is used for text so we advise you to avoid light colour. Custom logos @@ -2663,112 +2952,184 @@ Settings for Geotrek-rando Synchro Geotrek-rando ~~~~~~~~~~~~~~~~~~~~~ +With Geotrek-rando V2, there is a synchronization mechanism to expose Geotrek-admin contents in json files generated automatically. -With Geotrek-rando V2, there is a synchronization mechanism to expose Geotrek-admin contents in json files -generated automatically. This is no more used in Geotrek-rando V3. +.. warning:: + This is no more used in Geotrek-rando V3. -.. code-block :: python - SYNC_RANDO_ROOT = os.path.join(VAR_DIR, 'data') +.. envvar:: SYNC_RANDO_ROOT -Path on your server where the data for Geotrek-rando website will be generated + Path on your server where the data for Geotrek-rando website will be generated - *If you want to modify it, do not forget to import os at the top of the file.* - *Check* `import Python `_ *, if you need any information* + Example:: -.. code-block :: python + SYNC_RANDO_ROOT = os.path.join(VAR_DIR, 'data') + +.. note:: + - If you want to modify it, do not forget to import os at the top of the file. + - Check `import Python `_ , if you need any information + +.. envvar:: SYNC_RANDO_OPTIONS + + Options of the sync_rando command in Geotrek-admin interface. - SYNC_RANDO_OPTIONS = {} + Example:: -Options of the sync_rando command in Geotrek-admin interface. + SYNC_RANDO_OPTIONS = {} +.. _distances: Distances ~~~~~~~~~ +.. envvar:: TOURISM_INTERSECTION_MARGIN -.. code-block :: python + Distance to which tourist contents, tourist events, treks, pois, services will be displayed - TOURISM_INTERSECTION_MARGIN = 500 + Example:: -Distance to which tourist contents, tourist events, treks, pois, services will be displayed + TOURISM_INTERSECTION_MARGIN = 500 # meters - *This distance can be changed by practice for treks in the admin.* + Default:: -.. code-block :: python + 500 + +.. note:: + This distance can be changed by practice for treks in the admin. + +.. envvar:: DIVING_INTERSECTION_MARGIN + + Distance to which dives will be displayed. - DIVING_INTERSECTION_MARGIN = 500 + Example:: -Distance to which dives will be displayed. + DIVING_INTERSECTION_MARGIN = 500 # meters + + Default:: + + 500 Limits ~~~~~~ -.. code-block :: python +.. envvar:: TREK_EXPORT_POI_LIST_LIMIT - TREK_EXPORT_POI_LIST_LIMIT = 14 + Limit of the number of POIs on treks pdf. -Limit of the number of pois on treks pdf. + Example:: - *14 is already a huge amount of POI, but it's possible to add more* + TREK_EXPORT_POI_LIST_LIMIT = 14 -.. code-block :: python +.. note:: + ``14`` is already a huge amount of POI, but it's possible to add more + +.. envvar:: TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT - TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT = 2 + Limit of the number of information desks on treks pdf. -Limit of the number of information desks on treks pdf. + Example:: - *You can put -1 if you want all the information desks* + TREK_EXPORT_INFORMATION_DESK_LIST_LIMIT = 14 +.. note:: + You can put ``-1`` if you want all the information desks -Cateogories +Categories ~~~~~~~~~~~ -.. code-block :: python +.. envvar:: SPLIT_TREKS_CATEGORIES_BY_PRACTICE - SPLIT_TREKS_CATEGORIES_BY_PRACTICE = False + On the Geotrek-rando V2 website, treks practices will be displayed separately -On the Geotrek-rando v2 website, treks practices will be displayed separately + Example:: - *Field order for each practices in admin will be take in account* + SPLIT_TREKS_CATEGORIES_BY_PRACTICE = False -.. code-block :: python + Default:: - SPLIT_TREKS_CATEGORIES_BY_ACCESSIBILITY = False + True -On the Geotrek-rando v2 website, accessibilites will be displayed separately +.. note:: + Field order for each practices in admin will be taken in account -.. code-block :: python +.. envvar:: SPLIT_TREKS_CATEGORIES_BY_ACCESSIBILITY - SPLIT_TREKS_CATEGORIES_BY_ITINERANCY = False + On the Geotrek-rando V2 website, accessibilites will be displayed separately -On the Geotrek-rando v2 website, if a trek has a children it will be displayed separately + Example:: -.. code-block :: python + SPLIT_TREKS_CATEGORIES_BY_ACCESSIBILITY = False - SPLIT_DIVES_CATEGORIES_BY_PRACTICE = True + Default:: -On the Geotrek-rando v2 website, dives practices will be displayed separately + True -.. code-block :: python +.. envvar:: SPLIT_TREKS_CATEGORIES_BY_ITINERANCY - HIDE_PUBLISHED_TREKS_IN_TOPOLOGIES = False + On the Geotrek-rando V2 website, if a trek has a children it will be displayed separately -On the Geotrek-rando v2 website, treks near other are hidden + Example:: -.. code-block :: python + SPLIT_TREKS_CATEGORIES_BY_ITINERANCY = False - TREK_WITH_POIS_PICTURES = False + Default:: -It enables correlated pictures on Gotrek-rando v2 to be displayed in the slideshow + True -.. code-block :: python +.. envvar:: SPLIT_DIVES_CATEGORIES_BY_PRACTICE + + On the Geotrek-rando V2 website, dives practices will be displayed separately + + + Example:: + + SPLIT_DIVES_CATEGORIES_BY_PRACTICE = True + + Default:: + + False + +.. envvar:: HIDE_PUBLISHED_TREKS_IN_TOPOLOGIES + + On the Geotrek-rando V2 website, treks near other are hidden + + + Example:: + + HIDE_PUBLISHED_TREKS_IN_TOPOLOGIES = False + + Default:: + + True + +.. envvar:: TREK_WITH_POIS_PICTURES + + It enables correlated pictures on Geotrek-rando V2 to be displayed in the slideshow + + + Example:: + + TREK_WITH_POIS_PICTURES = False - ONLY_EXTERNAL_PUBLIC_PDF = False + Default:: -On Geotrek-rando v2 website, only PDF imported with filetype "Topoguide" -will be used and not autogenerated. + True + +.. envvar:: ONLY_EXTERNAL_PUBLIC_PDF + + On Geotrek-rando V2 website, only PDF imported with filetype "Topoguide"will be used and not autogenerated. + + Example:: + + ONLY_EXTERNAL_PUBLIC_PDF = False + + Default:: + + True + +**Order of all the objects without practices on Geotrek-rando website** : .. code-block :: python @@ -2777,103 +3138,116 @@ will be used and not autogenerated. DIVE_CATEGORY_ORDER = 10 TOURISTIC_EVENT_CATEGORY_ORDER = 99 -Order of all the objects without practices on Geotrek-rando website - - *All the settings about order are the order inside Geotrek-rando website.* - *Practices of diving, treks and categories of touristic contents are taken in account* +.. note:: + - All the settings about order are the order inside Geotrek-rando website. + - Practices of diving, treks and categories of touristic contents are taken in account Settings for Geotrek-mobile --------------------------- -.. code-block :: python +.. envvar:: SYNC_MOBILE_ROOT - SYNC_MOBILE_ROOT = os.path.join(VAR_DIR, 'mobile') + Path on your server where the datas for mobile will be saved. -Path on your server where the datas for mobile will be saved + Example:: - *If you want to modify it, do not forget to import os at the top of the file.* - *Check* `import Python `_ *, if you need any information* + SYNC_MOBILE_ROOT = os.path.join(VAR_DIR, 'mobile') -.. code-block :: python +.. note:: + - If you want to modify it, do not forget to import os at the top of the file. + - Check `import Python `_ , if you need any information - SYNC_MOBILE_OPTIONS = {'skip_tiles': False} +.. envvar:: SYNC_MOBILE_OPTIONS -Options of the sync_mobile command + Options of the sync_mobile command. -.. code-block :: python + Example:: - MOBILE_NUMBER_PICTURES_SYNC = 3 + SYNC_MOBILE_OPTIONS = {'skip_tiles': False} -Number max of pictures that will be displayed and synchronized for each object (trek, poi, etc.) in the mobile app. + Default:: -.. code-block :: python + True - MOBILE_TILES_URL = ['https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png'] +.. envvar:: MOBILE_NUMBER_PICTURES_SYNC -URL's Tiles used for the mobile. + Number max of pictures that will be displayed and synchronized for each object (trek, POI, etc.) in the mobile app. - *Change for IGN:* + Example:: -.. code-block :: python + MOBILE_NUMBER_PICTURES_SYNC = 3 + +.. envvar:: MOBILE_TILES_URL + + URL's Tiles used for the mobile. + + Example with OpenTopoMap:: MOBILE_TILES_URL = ['https://{s}.tile.opentopomap.org/{z}/{x}/{y}.png'] -.. code-block :: python + Example with IGN:: + + MOBILE_TILES_URL = ['https://data.geopf.fr/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=GEOGRAPHICALGRIDSYSTEMS.PLANIGNV2&STYLE=normal&FORMAT=image/png&TILEMATRIXSET=PM&TILEMATRIX={z}&TILEROW={y}&TILECOL={x}'] + +.. envvar:: MOBILE_LENGTH_INTERVALS + + Intervals of the mobile for the length filter. + + Example:: - MOBILE_LENGTH_INTERVALS = [ + MOBILE_LENGTH_INTERVALS = [ {"id": 1, "name": "< 10 km", "interval": [0, 9999]}, {"id": 2, "name": "10 - 30", "interval": [9999, 29999]}, {"id": 3, "name": "30 - 50", "interval": [30000, 50000]}, {"id": 4, "name": "> 50 km", "interval": [50000, 999999]} - ] + ] -Intervals of the mobile for the length filter +.. note:: + - Interval key is in meters. + - You can add new intervals - *Interval key is in meters.* - *You can add new intervals* +.. envvar:: MOBILE_ASCENT_INTERVALS -.. code-block :: python - - MOBILE_LENGTH_INTERVALS = [ - {"id": 1, "name": "< 10 km", "interval": [0, 9999]}, - {"id": 2, "name": "10 - 30 km", "interval": [9999, 29999]}, - {"id": 3, "name": "30 - 50 km", "interval": [30000, 50000]}, - {"id": 4, "name": "50 - 80 km", "interval": [50000, 80000]} - {"id": 5, "name": "> 80 km", "interval": [80000, 999999]} - ] + Intervals of the mobile for the ascent filter. -.. code-block :: python + Example:: - MOBILE_ASCENT_INTERVALS = [ + MOBILE_ASCENT_INTERVALS = [ {"id": 1, "name": "< 300 m", "interval": [0, 299]}, {"id": 2, "name": "300 - 600", "interval": [300, 599]}, {"id": 3, "name": "600 - 1000", "interval": [600, 999]}, {"id": 4, "name": "> 1000 m", "interval": [1000, 9999]} - ] + ] -Intervals of the mobile for the ascent filter +.. note:: + Do the same as above - *Do the same as above* +.. envvar:: MOBILE_DURATION_INTERVALS -.. code-block :: python + Intervals of the mobile for the duration filter. - MOBILE_DURATION_INTERVALS = [ + Example:: + + MOBILE_DURATION_INTERVALS = [ {"id": 1, "name": "< 1 heure", "interval": [0, 1]}, {"id": 2, "name": "1h - 2h30", "interval": [1, 2.5]}, {"id": 3, "name": "2h30 - 5h", "interval": [2.5, 5]}, {"id": 4, "name": "5h - 9h", "interval": [5, 9]}, {"id": 5, "name": "> 9h", "interval": [9, 9999999]} - ] + ] -Intervals of the mobile for the duration filter +.. note:: + Check ``MOBILE_LENGTH_INTERVALS`` section to use it, here interval correspond to 1 unit of hour - *Check MOBILE_LENGTH_INTERVALS comment to use it, here interval correspond to 1 unit of hour* +.. envvar:: ENABLED_MOBILE_FILTERS -.. code-block :: python + List of all the filters enabled on mobile. + + Example:: - ENABLED_MOBILE_FILTERS = [ + ENABLED_MOBILE_FILTERS = [ 'practice', 'difficulty', 'durations', @@ -2884,15 +3258,8 @@ Intervals of the mobile for the duration filter 'districts', 'cities', 'accessibilities', - ] - -List of all the filters enabled on mobile. - - *Remove any of the filters if you don't want one of them. It's useless to add other one.* - + ] -================ -Settings details -================ +.. note:: + Remove any of the filters if you don't want one of them. It's useless to add other one. -Search settings in this page to have information. diff --git a/docs/install/configuration.rst b/docs/install/configuration.rst index 8da589252c..baeca94f99 100644 --- a/docs/install/configuration.rst +++ b/docs/install/configuration.rst @@ -2,6 +2,10 @@ Configuration ============= +.. contents:: + :local: + :depth: 2 + Basic configuration update -------------------------- @@ -90,6 +94,7 @@ Spatial reference identifier of your database. Default 2154 is RGF93 / Lambert-9 *Choose wisely with epsg.io for example* +.. _default-structure: Default Structure ~~~~~~~~~~~~~~~~~ @@ -209,8 +214,3 @@ And give them permissions by schema : You can also create groups, etc. See PostgreSQL documentation. - -Advanced Configuration ----------------------- - -See :ref:`advanced configuration `... diff --git a/docs/install/docker.rst b/docs/install/docker.rst index cb312be90f..e4006eb834 100644 --- a/docs/install/docker.rst +++ b/docs/install/docker.rst @@ -4,6 +4,10 @@ Docker ====== +.. contents:: + :local: + :depth: 2 + Docker is an alternative installation method, recommended for experts only. It allows to install several instances of Geotrek-admin on the same serveur, and to install it on other distributions than Ubuntu Linux 18.04. diff --git a/docs/install/import.rst b/docs/install/import.rst index 1c6290dd9f..ec7bd8468d 100644 --- a/docs/install/import.rst +++ b/docs/install/import.rst @@ -2,6 +2,11 @@ Import data =========== +.. contents:: + :local: + :depth: 2 + + Import paths ============ @@ -48,10 +53,13 @@ To import a shapefile containing your paths, use the command ``loadpaths``:: --srid=2154 --comments-attribute IT_VTT IT_EQ IT_PEDEST \ --encoding latin9 -i +.. _import-data-from-touristic-data-systems-sit: Import data from touristic data systems (SIT) ============================================= +.. _configure-apidae-ex-sitra-import: + Configure APIDAE (ex-SITRA) import ---------------------------------- @@ -163,14 +171,11 @@ Sensitive areas import When sensitive areas module is enabled, Geotrek provides 3 parsers to import data: -* Import sensitive areas from http://biodiv-sports.fr (``geotrek.sensitivity.parsers.BiodivParser``). By default this +* **Import sensitive areas from http://biodiv-sports.fr** (``geotrek.sensitivity.parsers.BiodivParser``). By default this parser imports all sensitive areas in configured spatial extent. -* Import species sensitive areas from a ziped shapefile. Imported field names are: ``espece`` (required), ``contact`` - and ``descriptio``. - Species with corresponding names have to be created manually before import. -* Import regulatory sensitive areas from a ziped shapefile. Imported field names are: ``nom`` (required), ``contact``, - ``descriptio``, ``periode`` (month numbers separated with comas), ``pratiques`` (separated with comas), and ``url``. - Practices with corresponding names have to be created manually before import. +* **Import species sensitive areas from a zipped shapefile**. + Imported field names are: ``espece`` (required), ``contact`` and ``descriptio``. Species with corresponding names have to be created manually before import. +* **Import regulatory sensitive areas from a zipped shapefile**. Imported field names are: ``nom`` (required), ``contact``, ``descriptio``, ``periode`` (month numbers separated with comas), ``pratiques`` (separated with comas), and ``url``. Practices with corresponding names have to be created manually before import. You can start imports from "Import" menu or from command line. You can override them in your ``var/conf/parsers.py`` file. @@ -374,6 +379,8 @@ To get help about a command: :: sudo geotrek help + +.. _import-dem-altimetry: Import DEM (altimetry) @@ -407,6 +414,7 @@ Import DEM (altimetry) --force-color Force colorization of the command output. --skip-checks Skip system checks. +.. _import-pois: Import POIs ----------- @@ -451,7 +459,7 @@ Import POIs --force-color Force colorization of the command output. --skip-checks Skip system checks. - +.. _import-infrastructure: Import Infrastructure --------------------- @@ -545,7 +553,6 @@ Load a layer with point geometries and import entities as infrastructures object - the command updates existing Infrastructure objects based on the `eid` field (external ID), - if the Infrastructure object does not exist (or if `eid` is not specified) it is created. - **Usage example** :: @@ -644,7 +651,7 @@ Import Dive --force-color Force colorization of the command output. --skip-checks Skip system checks. - +.. _import-signage: Import Signage -------------- diff --git a/docs/install/installation.rst b/docs/install/installation.rst index bfe12e1577..7f7a7ed21d 100644 --- a/docs/install/installation.rst +++ b/docs/install/installation.rst @@ -2,6 +2,11 @@ Installation ============ +.. contents:: + :local: + :depth: 2 + + Use these instructions to install Geotrek-admin in an easy way on a dedicated Ubuntu Focal Fossa 20.04 LTS server for production. For another distributions, please use :ref:`the Docker installation method `. It requires more technical skills. Lastly, for a developer instance, please follow :ref:`the dedicated procedure `. diff --git a/docs/install/loading-data.rst b/docs/install/loading-data.rst index 17c2dd9b46..5f0225b441 100644 --- a/docs/install/loading-data.rst +++ b/docs/install/loading-data.rst @@ -4,6 +4,9 @@ Loading data ============ +.. contents:: + :local: + :depth: 2 Prerequisites for your data --------------------------- diff --git a/docs/install/maintenance.rst b/docs/install/maintenance.rst index 1f9f4506d7..66c7a72fee 100644 --- a/docs/install/maintenance.rst +++ b/docs/install/maintenance.rst @@ -2,6 +2,10 @@ Maintenance =========== +.. contents:: + :local: + :depth: 2 + Application backup ------------------ diff --git a/docs/install/sensitivity.rst b/docs/install/sensitivity.rst deleted file mode 100644 index a6b2dcbe81..0000000000 --- a/docs/install/sensitivity.rst +++ /dev/null @@ -1,94 +0,0 @@ -.. _sensitivity-section: - -=========== -Sensitivity -=========== - - -Enabling --------- - -Sensitivity module is disabled by default. -To enable it, add the following code in the custom settings file: - -.. code-block :: python - - # Enable sensitivity module - INSTALLED_APPS += ('geotrek.sensitivity', ) - - -Settings --------- - -The following settings are related to sensitive areas: - -.. code-block :: python - - # Default radius of sensitivity bubbles when not specified for species - SENSITIVITY_DEFAULT_RADIUS = 100 # meters - - # Buffer around treks to intersects sensitive areas - SENSITIVE_AREA_INTERSECTION_MARGIN = 500 # meters - -.. notes - - # Take care if you change this value after adding data. You should update buffered geometry in sql. - ``` UPDATE sensitivity_sensitivearea SET geom_buffered = ST_BUFFER(geom, ); ``` - - -Import from https://biodiv-sports.fr ------------------------------------- - -In user interface, in the top-right menu, clic on "Imports" and choose "Biodiv'Sports". - -On command line, run - -.. code-block :: bash - - sudo geotrek import geotrek.sensitivity.parsers.BiodivParser - - -Import from shapefile ---------------------- - -In user interface, in the top-right menu, go to Imports and choose "Shapefile zone sensible espèce" -or "Shapefile zone sensible réglementaire". - -On command line, run: - -.. code-block :: bash - - sudo geotrek import geotrek.sensitivity.parsers.SpeciesSensitiveAreaShapeParser - -or: - -.. code-block :: bash - - sudo geotrek import geotrek.sensitivity.parsers.RegulatorySensitiveAreaShapeParser . - -Attributes for "zones sensibles espèce" are: - -* espece : species name. Mandatory. A species with this name must have been previously created. -* contact : contact (text or HTML format). Optional. -* descriptio : description (text or HTML format). Optional. - -Attributes for "zones sensibles réglementaires" are: - -* name: zone name. -* contact : contact (text or HTML format). Optional. -* descriptio : description (text or HTML format). Optional. -* periode : month numbers of zone occupation, separated by comas, without spaces (ex. « 6,7,8 » for june, july and august) -* pratiques : sport practices names, separated by comas, without spaces (ex. « Terrestre,Aérien »). A sport practice with this name must have been previously created. -* url : card url. Optional. - - -Sync to Geotrek-rando ---------------------- - -Just run: - -.. code-block :: bash - - sudo geotrek sync_rando - -as usual. If sensitivity module is enabled, sensitive areas will be automatically synced. diff --git a/docs/install/synchronization.rst b/docs/install/synchronization.rst index f96283415d..87965fbc78 100644 --- a/docs/install/synchronization.rst +++ b/docs/install/synchronization.rst @@ -4,6 +4,10 @@ Synchronization =============== +.. contents:: + :local: + :depth: 2 + Manual synchronization ---------------------- diff --git a/docs/integration-illustrations.svg b/docs/integration-illustrations.svg deleted file mode 100644 index 633c336ceb..0000000000 --- a/docs/integration-illustrations.svg +++ /dev/null @@ -1,302 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - image/svg+xml - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/docs/logo.ans b/docs/logo.ans deleted file mode 100644 index b1b185ce34..0000000000 --- a/docs/logo.ans +++ /dev/null @@ -1,41 +0,0 @@ -                          ▄▄▄▄▀▀▀▀▀▀        ▀▀▀▀▀▀▄▄▄                            -                      ▄▄▀▀▀                          ▀▀▀▄▄                       -                  ▄▄▀▀                                    ▀▀▄▄                   -               ▄▀▀▀                                          ▀▀▄▄                -             ▄▀▀                                                ▀▀▄              -           ▄▀                                                     ▀▀▄            -         ▄▀                                                         ▀▀▄          -       ▄▀▀                                                            ▀▀▄        -      ▀▀                                                                ▀▄       -     ▀▀                                                           ▀▀     ▀▀      -    ▀                                                           ▀▀▀       ▀▀     -   ▀              ▀▀▀▀▀▀▀▀▀▀      ▀▀▀▀▀▀▀▀▀▀▀▀      ▀▀▀▀▀▀▀▀▀▀▀▀▀▀         ▀▀    -  ▀             ▀▀   ▀▀▀▀            ▀▀▀▀▀▀▀▀▀    ▀▀    ▀▀▀▀▀▀▀▀▀           ▀▀   - ▀▀            ▀   ▀▀     ▀▀                     ▀▀  ▀▀ ▀▀ ▀▀ ▀▀▀            ▀▄  - ▀            ▀   ▀       ▀▀▀▀       ▀▀▀▀▀▀▀        ▀ ▀▀▀▀▀ ▀▀▀               ▀  -▀                                    ▀▀▀▀▀▀▀     ▀   ▀  ▀▀▀▀▀▀   ▀            ▀▄ -▀             ▀▀  ▀                              ▀ ▀▀ ▀ ▀▀▀▀▀▀  ▀              ▀ -▀              ▀▀  ▀▀▀▀▀▀▀           ▀▀▀▀▀▀▀▀▀    ▀▀▀ ▀▀▀▀▀▀   ▀▀              ▀ -                 ▀▀▀      ▀▀▀                    ▀▀▀▀▀▀     ▀▀▀                  -                    ▀▀▀▀▀                      ▀▀▀▀    ▀▀▀▀▀                     -                                               ▀                                 -                                                                                 -▀              ▀▀▀▀▀▀▀▀▀▀▀  ▀▀▀▀▀▀▀▀▀▀    ▀▀▀▀▀▀▀▀▀▀   ▀▀    ▀▀▀▀              ▀ -▀                                  ▀▀ ▀                    ▀▀▀▀                ▀ -▀                                   ▀ ▀                  ▀▀▀▀                 ▀▀ - ▀                           ▀▀▀▀▀▀▀▀▀▀     ▀▀▀▀▀▀▀     ▀▀▀▀                  ▀  - ▀▀                              ▀▀▀▀                    ▀▀ ▀▀               ▀▀  -  ▀                                ▀▀▀▀                    ▀▀▀▀▀            ▀▀   -   ▀                                ▀▀▀▀    ▀▀▀▀▀▀▀▀▀        ▀▀▀▀▀         ▀▀    -    ▀              ▀▀       ▀▀        ▀▀   ▀▀▀▀▀▀▀▀▀   ▀▀       ▀▀        ▀▀     -     ▀▀                                                                  ▀▀      -      ▀▀                                                                ▀▀       -       ▀▀▀                                                            ▀▀         -         ▀▀▀                                                        ▀▀▀          -           ▀▀▀                                                    ▀▀▀            -             ▀▀▀                                                ▀▀▀              -               ▀▀▀▀                                          ▀▀▀                 -                  ▀▀▀▀▀                                  ▀▀▀▀                    -                      ▀▀▀▀▀                         ▀▀▀▀▀▀                       -                           ▀▀▀▀▀▀▀▀▀        ▀▀▀▀▀▀▀▀▀                            - diff --git a/docs/logo.svgz b/docs/logo.svgz deleted file mode 100644 index 680f16b70a..0000000000 Binary files a/docs/logo.svgz and /dev/null differ diff --git a/docs/authors.rst b/docs/others/authors.rst similarity index 93% rename from docs/authors.rst rename to docs/others/authors.rst index c9ba10a7c8..076cf0934d 100644 --- a/docs/authors.rst +++ b/docs/others/authors.rst @@ -2,6 +2,10 @@ Authors ======= +.. contents:: + :local: + :depth: 2 + Makina Corpus ------------- @@ -28,7 +32,7 @@ Makina Corpus * Hugo Hasson * Joaquim Nallar -.. image:: http://depot.makina-corpus.org/public/logo.gif +.. image:: https://makina-corpus.com/profiles/makina/themes/makina_front/img/logo.png :target: http://www.makina-corpus.com Parc national des Ecrins diff --git a/docs/changelog.rst b/docs/others/changelog.rst similarity index 99% rename from docs/changelog.rst rename to docs/others/changelog.rst index 87ed164a3b..acf97930c9 100644 --- a/docs/changelog.rst +++ b/docs/others/changelog.rst @@ -9,6 +9,10 @@ CHANGELOG - Add `include_externals` filter to Cirkwi trek exports, to allow excluding treks with an external id (eid) (#3947) +**Documentation** + +- Reorganize major sections in documentation, and add content + 2.102.1 (2024-02-20) -------------------- diff --git a/docs/troubleshooting.rst b/docs/others/troubleshooting.rst similarity index 99% rename from docs/troubleshooting.rst rename to docs/others/troubleshooting.rst index cd1a89cdae..004cea867d 100644 --- a/docs/troubleshooting.rst +++ b/docs/others/troubleshooting.rst @@ -2,6 +2,10 @@ Troubleshouting =============== +.. contents:: + :local: + :depth: 2 + Geotrek-admin logs are stored in ``/opt/geotrek-admin/var/log/geotrek.log`` file. But if Geotrek-admin does not start, take a look at systemd logs for each of the 3 Geotrek-admin services diff --git a/docs/pictograms.svgz b/docs/pictograms.svgz deleted file mode 100644 index e4231fe23b..0000000000 Binary files a/docs/pictograms.svgz and /dev/null differ diff --git a/docs/usage/apis.rst b/docs/usage/apis.rst new file mode 100644 index 0000000000..c694603a4a --- /dev/null +++ b/docs/usage/apis.rst @@ -0,0 +1,107 @@ +==== +APIs +==== + +.. contents:: + :local: + :depth: 2 + +.. image :: /images/user-manual/api-ecosystem.png + +API Geotrek +=========== + +Geotrek dispose d’une API (Application Programming Interface) qui sert à exposer les données stockées dans une instance de Geotrek-admin, dans le but de pouvoir la faire communiquer avec d'autres outils, systèmes et plateforme et ainsi échanger des données. + +Cette API, désormais dans sa version 2 permet à toute structure tierce de récupérer des données et de les intégrer dans son système ou ses applications. + +À ce jour de nombreux partenaires des structures utilisatrices de l’application Geotrek ont déjà utilisé cette API pour intégrer les données dans leurs outils. + +L'API Geotrek est le point central pour permettre les interconnexions avec divers services. Grâce à cette interface de données, Geotrek s'est positionné comme un point central dans un écosystème de solutions du monde de la gestion et promotion des activités de pleine nature. + +Pour changer les paramètres d'accès de l'API, référez vous à cette section :ref:`API ` + +APIs externes +============= + +Geotrek et IGNrando' +-------------------- + +Geotrek-admin est capable de produire un flux des itinéraires et POIs présents dans sa BDD au format Cirkwi pour pouvoir les importer directement dans IGNrando' (https://makina-corpus.com/sig-webmapping/geotrek-et-lign-ca-fonctionne). + +Exemple des randonnées et POIs du Parc national des Ecrins publiées sur IGNrando' depuis Geotrek-admin : https://ignrando.fr/fr/communautes/parc-national-des-ecrins + +Depuis cette version, 2 flux sont automatiquement générés par Geotrek-admin au format attendu par l'IGN : + +- [URL_GEOTREK-ADMIN]/api/cirkwi/circuits.xml +- [URL_GEOTREK-ADMIN]/api/cirkwi/pois.xml + +Il est possible d'exclure les POI du flux pour ne diffuser que les randonnées. Pour cela, ajouter le paramètre ``?withoutpois=1`` à la fin de l'URL (``http://XXXXX/api/cirkwi/circuits.xml?withoutpois=1``). + +Il est possible de filtrer les POI du flux par structure. Pour cela, ajouter le paramètre ``?structures=`` à la fin de l'URL (``http://XXXXX/api/cirkwi/pois.xml?structures=2``). +Vous pouvez filtrer avec plusieurs structures : en séparant les identifiants par des virgules (``http://XXXXX/api/cirkwi/pois.xml?structures=2,5,3``). + +Il est également possible de filtrer les randonnées du flux par structure et par portail. +Pour cela, ajouter le paramètre ``?structures=`` ou ``?portals=`` à la fin de l'URL (``http://XXXXX/api/cirkwi/circuits.xml?portals=3``). + +Il est également possible d'exclure du flux les randonnées provenant de sources externes à Geotrek-Admin. Ce filtre est notamment nécessaire pour +ne pas renvoyer à Cirkwi les randonnées qui en proviennent déjà. Pour cela, ajouter le paramètre ``?include_externals=false`` à la fin de l'URL (``http://XXXXX/api/cirkwi/circuits.xml?include_externals=false``). + +Il est possible de cumuler ces différents filtres, en séparant les valeurs par un ``&`` (``http://XXXXX/api/cirkwi/circuits.xml?portals=3&structures=1&include_externals=false``). + +Il est également possible d'exclure du flux les randonnées provenant de sources externes à Geotrek-Admin. Ce filtre est notamment nécessaire pour ne pas renvoyer à Cirkwi les randonnées qui en proviennent déjà. Pour cela, ajouter le paramètre ``?include_externals=false`` à la fin de l'URL (``http://XXXXX/api/cirkwi/circuits.xml?include_externals=false``). + +Il est possible de cumuler ces différents filtres, en séparant les valeurs par un ``&`` (``http://XXXXX/api/cirkwi/circuits.xml?portals=3&structures=1&include_externals=false``). + +Le référentiel CIRKWI a été intégré dans 3 tables accessibles dans le module de configuration (à ne pas modifier) : + +.. figure:: ../images/user-manual/cirkwi-tables.png + :alt: Ensemble des champs paramétrables pour le référentiel CIRKWI + :align: center + + Ensemble des champs paramétrables pour le référentiel CIRKWI + +Si vous ne souhaitez pas utiliser les valeurs par défaut ou avez créez vos propres typologies, il faut que vous renseigniez les correspondances entre les catégories de votre Geotrek et celles du référentiel IGN (Cirkwi) dans le module de configuration. Comme indiqué ici : https://github.com/GeotrekCE/Geotrek-admin/issues/806. + +* Pratique >> locomotion/loisirs +* Accessibilite >> thematiques/tags +* Themes >> thematiques/tags +* Types de POI >> Categories POI + +Les correspondances avec les valeurs de ces 3 tables sont donc à renseigner dans les tables Geotrek des Pratiques, Accessibilités, Thèmes et Types de POI. + +Ce même flux est aussi utilisable pour alimenter directement la plateforme Cirkwi : https://pro.cirkwi.com/importez-vos-donnees-geotrek-dans-cirkwi/. + +:Note: + + Geotrek-admin dispose aussi d'une API générique permettant d'accéder aux contenus d'une instance à l'adresse : ``[URL_GEOTREK-ADMIN]/api/v2/`` + +Geotrek et APIDAE +----------------- + +Il existe plusieurs passerelles entre la plateforme d'informations touristiques APIDAE et Geotrek. + +APIDAE vers Geotrek +~~~~~~~~~~~~~~~~~~~ + +Actuellement, certains contenus touristiques peuvent être synchronisés automatiquement avec une base APIDAE. Il s'agit des contenus situés dans les catégories suivantes : + +* Contenus touristiques (hébergements, restaurants, produits du territoire, lieux de visites...) +* Evénements touristiques (expositions, conférences, sorties...) + +Les contenus touristiques peuvent aussi être synchronisés depuis des flux Tourinsoft ou Esprit Parc National. + +Il est également possible de mettre en place des passerelles pour importer des POIs, des lieux de renseignement, des aménagements ainsi que des randonnées d'APIDAE vers Geotrek. Il est aussi possible d'enrichir le lien avec les contenus touristiques pour avoir par exemple d'autres catégories. + +Pour configurer APIDAE, se référer à cette section :ref:`Configure APIDAE (ex-SITRA) import ` + +Geotrek vers APIDAE +~~~~~~~~~~~~~~~~~~~ + +Il existe aussi un lien dans l'autre sens, permettant d'importer automatiquement vers APIDAE les itinéraires existants dans une instance Geotrek. + +L'API permet de connecter une instance Geotrek pour importer des itinéraires vers les objets de type "Équipements" dans APIDAE. + +Les randonnées VTT, trail, vélo et les tours itinérants sont également intégrés dans la passerelle. + +Pour plus d'information, se référer à la documentation en ligne de `Sitourisme `_. diff --git a/docs/usage/configuration-ttw.rst b/docs/usage/configuration-ttw.rst index 6aff8d7277..f978cba744 100644 --- a/docs/usage/configuration-ttw.rst +++ b/docs/usage/configuration-ttw.rst @@ -1,42 +1,53 @@ -============= +=========== Paramétrage -============= +=========== +.. contents:: + :local: + :depth: 2 -Accès interface admin -===================== + +Accès interface de configuration +================================= Menu à droite > admin -.. figure:: /images/admin/capture-admin.png - :alt: Capture lien admin +.. figure:: ../images/admin/capture-admin.png + :alt: Lien vers le module de configuration + :align: center + + Lien vers le module de configuration - Capture lien admin +.. _parametrages-des-modules: Paramétrages des modules ======================== +Cette section présente quelques exemples de paramétrages des catégories au sein des modules. + Itinéraires ----------- -- Pratiques -- Accessibilités -- Niveaux de difficulté -- Thèmes -- Types de services -- Types de POIs +.. figure:: ../images/admin/django-admin-params-itineraires-v2.png + :alt: Ensemble des champs paramétrables du module Itinéraires + :align: center -|image4| + Ensemble des champs paramétrables du module Itinéraires Exemple : ajouter une pratique ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -- Dans admin, à la ligne “Pratiques” cliquer sur “+ ajouter” +- Dans le module de configuration, à la ligne “Pratiques” cliquer sur “+ ajouter” - Remplir les champs (en gras les champs obligatoires) -(note : la couleur n’est utilisée que pour le mobile actuellement) +.. note:: + La couleur n’est utilisée que pour le mobile actuellement. -|image5| +.. figure:: ../images/admin/django-admin-ajout-pratique-v2.png + :alt: Ajout d'une nouvelle pratique + :align: center + + Ajout d'une nouvelle pratique Exemple : ajouter une étiquette ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ @@ -46,14 +57,18 @@ Les étiquettes sont des encarts "pré-configurés" pouvant être réutilisés s - permet de filtrer les itinéraires dans la vue liste (catégorie "Autres") sur Geotrek-Rando. Pour les configurer, vous devez : -- vous rendre dans l'interface d'administration +- vous rendre dans le module de configuration - dans la section Étiquettes du groupe **COMMUN** cliquer sur :guilabel:`+ Ajouter` Via cette interface vous pourrez créer des étiquettes puis, une fois créées, les rattacher à des itinéraires. * Créer une étiquette : -.. image :: ../images/admin/creation_etiquette.png +.. figure:: ../images/admin/creation_etiquette.png + :alt: Création d'une étiquette + :align: center + + Création d'une étiquette Pour mettre en forme le contenu de l'étiquette, il est possible d'utiliser du ``HTML``. Pour cela, il est recommandé d'utiliser des outils permettant de formater du contenu et d'obtenir le résultat en HTML directement. Par exemple via l'outil libre `Summernote `_. @@ -62,7 +77,11 @@ Pour mettre en forme le contenu de l'étiquette, il est possible d'utiliser du ` Une fois l'étiquette créée il faut l'associer à un itinéraire pour qu'elle soit visible sur le site. Une fois dans votre instance Geotrek Admin, éditez l'itinéraire concerné. Cliquez ensuite sur l'onglet :guilabel:`Avancé` et dans le champ Étiquettes choisissez dans le menu déroulant l'étiquette de votre choix (si vous en avez défini plusieurs). -.. image :: ../images/admin/associer_etiquette_itineraire.png +.. figure:: ../images/admin/associer_etiquette_itineraire.png + :alt: Ajout d'une étiquette à un itinéraire + :align: center + + Ajout d'une étiquette à un itinéraire .. tip:: * L'ajout d'un pictogramme est facultatif, par défaut le pictogramme de l'étiquette sera le même que celui des recommandations dans les "Infos pratiques" de la fiche d'une randonnées (Geotrek Rando). @@ -71,142 +90,136 @@ Une fois dans votre instance Geotrek Admin, éditez l'itinéraire concerné. Cli Rendu dans **Geotrek Rando** (onglet :guilabel:`Infos pratiques` d'une fiche randonnée) : -.. image :: ../images/admin/rendu_etiquette.png - -Rendu dans **Geotrek Rando** (partie :guilabel:`Filtres`) : - -.. image :: ../images/admin/rendu_etiquette2.png - -.. _sites-et-parcours-outdoor-1: +.. figure:: ../images/admin/rendu_etiquette.png + :alt: Rendu d'une étiquette dans Geotrek-rando + :align: center -Sites et parcours outdoor -------------------------- - -- Cotations -- Filières -- Pratiques -- Types de parcours -- Types de site -- Échelles de cotation + Rendu d'une étiquette dans Geotrek-rando +Rendu dans **Geotrek Rando** (partie :guilabel:`Filtres`) : -Plongées --------- +.. figure:: ../images/admin/rendu_etiquette2.png + :alt: Rendu des étiquettes dans les filtres de Geotrek-rando + :align: center -- Niveau de difficulté -- Niveau technique -- Pratique + Rendu des étiquettes dans les filtres de Geotrek-rando Tourisme -------- -- Autres sports : catégorie activités → Types de contenus touristiques -- Lieux de renseignements -- Types de lieux de renseignement -- Types d’événement touristiques -- Systèmes de réservation - -|image6| +.. figure:: ../images/admin/django-admin-params-tourisme-v2.png + :alt: Ensemble des champs paramétrables des modules Contenus et Évènements touristiques + :align: center + Ensemble des champs paramétrables des modules Contenus et Évènements touristiques Exemple : catégorie de contenu touristique et ses sous-types ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ -|image7| +.. figure:: ../images/admin/django-admin-categorie-contenu-touristique-v2.png + :alt: Création de catégorie de contenu touristique et ses sous-types + :align: center + + Création de catégorie de contenu touristique et ses sous-types Pour chaque catégorie il est possible de définir deux listes de sous-types et leur nom. Édition des sous-types de la catégorie “Hébergements” -.. figure:: /images/admin/django-admin-categorie-contenu-touristique-sous-types.png +.. figure:: ../images/admin/django-admin-categorie-contenu-touristique-sous-types.png :alt: Sous-types de la catégorie “Hébergements” + :align: center Sous-types de la catégorie “Hébergements” +.. _user-management-section: -Dans l’édition d’un contenu touristique de catégorie “Hébergement” - -|image8| +Gestion des utilisateurs +======================== +Geotrek-admin s'appuie sur le `système d'authentification et de permissions Django `_ . -Zones ------ +Les utilisateurs appartiennent à des groupes et les permissions peuvent être attribuées au niveau de l'utilisateur ou du groupe. -- Communes -- Secteurs -- Zones sensibles et types de zones +Avec les groupes, vous pouvez créer et configurer un profil utilisateur, chacun possédant des permissions spécifiques. +Toute la configuration des utilisateurs, groupes et permissions est disponible depuis le module de configuration, si vous n'avez pas activé *Authentification externe* (voir ci-dessous). -.. _user-management-section: +.. figure:: ../images/admin/django-admin-params-users.png + :alt: Interface de configuration des utilisateurs/groupes + :align: center -Users management -================ + Interface de configuration des utilisateurs/groupes -Geotrek-admin relies on `Django authentication and permissions system `_. -Users belong to groups, and permissions can be assigned at user or group-level. +Utilisateurs et permissions +--------------------------- -With groups, you can create and configure user profile, each owning specific permissions. +L’application permet d’attribuer des droits à autant de groupes que souhaité. +Nous recommandons cependant de privilégier la diffusion la plus large par défaut et de ne restreindre l’application que pour des raisons impératives. -The whole configuration of users, groups and permissions is available in the *AdminSite*, -if you did not enable *External authent* (see below). +L’application permet de définir des rôles disposant chacun de certains droits. + - visiteurs anonymes (par exemple : tous les internautes) + - partenaires, élus + - agents techniques + - prestataires externes + - administrateurs de l’application + - … -|image9| +À chaque rôle est associé un ensemble de permissions (consulter telle donnée, la modifier…) qui peuvent être attribuées à un document ou à une catégorie. +Les utilisateurs sont ensuite associés à un ou plusieurs rôles. -Users and permissions ---------------------- +Un utilisateur donné peut avoir trois niveaux permissions basiques : -A given user can have three basic status level: +- **Actif** : si cette case est coché, l’utilisateur peut se connecter à Geotrek-admin -- **Active**: if checked, the user can connect to Geotrek-admin +.. note:: + Il est préférable de désactiver un compte lorsqu’un utilisateur n’intervient plus sur Geotrek, plutôt que de le supprimer. En effet supprimer le compte supprimera également par exemple toutes les entrées dans l’historique de Geotrek associées à ce compte. - It is better to deactivate an account when the user won't user Geotrek anymore, instead of supress it. - Deleting the account will delete also all entries created by this account. +- **Équipe** : si la case est cochée l’utilisateur pourra accéder au module de configuration de Geotrek-Admin -- **Staff**: if checked, the user is authorized to access Geotrek-Admin administration interface +- **Super-utilisateur** : permet d’octroyer toutes les permissions à un utilisateur sans avoir à les définir explicitement -- **Superuser**: if checked, the user has all permission, without having to define them specifically +Un utilisateur peut avoir des permissions spécifiques, définies par type d’objet. -A user can get specific permissions by object type. +Pour cela, sélectionner les permissions dans l’écran de gauche pour les positionner dans l’écran de droite. Par exemple sur la capture ci-dessous l’utilisateur possède les permissions pour consulter uniquement et exporter les informations relatives aux signalétiques sans possibilité d’accéder aux autres modules ou de modifier les contenus. -To do so, select permissions from left box and move them in the right box. -Snapshot below shows a user with permissions allowing him/her to view and export signage, -without the ability to access to others modules. or edit signage objects. +.. figure:: ../images/admin/django-admin-user-right.png + :alt: Choix des permissions de l'utilisateur + :align: center -|image10| + Choix des permissions de l'utilisateur -Permissions fall into four main types of actions: +Il existe quatre principaux types de permissions : * add * change * delete * read / view -Each data type is at least associated with the four basic actions (*add*, *change*, *delete*, *read*). One data type corresponds to a database table (*signage_signage*, *trekking_trek*...) +Chaque type de donnée est au moins associée à ces quatres actions de base (*ajout*, *modification*, *suppression*, *lecture*). Un type de donnée correspond à un table dans la base de données (*signage_signage*, *trekking_trek*…) » -Here is the signification of actions allowed through permissions: -* *view*: see the data in Django *AdminSite* (for data of "category" type such as POI types, or difficulty level) -* *read*: see the data in Geotrek-admin interface (button and data list) -* *add*: adding of a new data (trek, theme...) -* *change*: modify the data -* *change_geom*: modify the data geometry -* *publish*: publish the data -* *export*: export the data thrgough Geotrek-admin interface (CSV, JSON...) +Voici la signification des actions autorisées dans les permissions : +* *view* : voir les données dans le module de configuration (pour ledonnées dans « category », comme les types de POI, ou les niveaux de difficulté) +* *read* : voir les données dans Geotrek-admin (détail et liste) +* *add* : ajouter une nouvelle donnée (itinéraire, thème…) +* *change* : modifier une donnée +* *change_geom* : modifier la géométrie d’une donnée +* *publish* : publier la donnée +* *export* : exporter les données via l’interface de Geotrek-admin (CSV, JSON…) -Groups ------- +Groupes +------- -Groups allows to manage easily users and permissions. Each group is associated -to some permissions. +Les groupes facilitent la gestion des utilisateurs et des permissions.Chaque groupe est configuré avec un certain nombre de permissions. -In user modification view, you can associate a user to one ore more groupes to -get their permissions. +Dans la vue de modification d’un utilisateur, il est possible d’associer un utilisateur à un ou plusieurs groupes pour bénéficier des permissioncorrespondantes. -By default six groups are created: +Par défaut, six groupes sont disponibles : * Readers ("Lecteurs") * Path managers ("Référents sentiers") @@ -215,39 +228,54 @@ By default six groups are created: * Geotrek-rando ("Geotrek-rando") * Trek and management editors ("Rédacteurs rando et gestion") -Once the application is installed, it is possible to modify the default permissions -of these existing groups, create new ones etc. +Lorsque l’application est installée, il est possible de modifier les permissions par défaut de ces groupes, d’en créer de nouveaux, etc. -If you want to allow the users to access the *AdminSite*, give them the *staff* -status using the dedicated checkbox. The *AdminSite* allows users to edit data categories such as *trek difficulty levels*, *POI types*, etc. +Pour autoriser les utilisateurs à accéder à l’interface AdminSite, accordez-leur le statut équipe. L’interface AdminSite permet aux utilisateurs d’éditer les catégories comme *niveaux de difficulté*, *types de POI*, etc + +Il est possible de créer ou de supprimer des comptes administrateurs ou éditeurs. +De même qu’il est possible d’ajouter, modifier ou supprimer des itinéraires, tout comme pour les contenus additionnels. + +Les éditeurs et les administrateurs peuvent travailler en simultané sur des fiches balades, mais pas en même temps sur la même fiche, car il y aurait sinon un risque de perte d’informations lors de la validation / enregistrement des informations saisies. Structures ---------- -Each user has to be linked to a structure. During the installation, Geotrek create a default structure to which first users are linked. -You can add new structures, according to territorial partners, companies, other organisations which work with you on Geotrek. +Chaque utilisateur est obligatoirement rattaché à une structure. Lors de l’installation, Geotrek crée une structure par défaut à laquellles premiers utilisateurs seront rattachés.Il est possible d’ajouter de nouvelles structures, reflétant des partenaires territoriaux, entreprises, entités qui seront amenés à travailler à vos côtés sur Geotrek. -Users of a given structure can work only on objects related to the same structure in Geotrek. -They can view objects from others structures, but won't be able to edit them. +Les utilisateurs d’une structure ne peuvent travailler que sur les objets dans Geotrek liés à leur structure. Ils pourront consulter les objets des autres structures mais n’auront pas le droit de les modifier. -*Exemple : Imagine a Geotrek deployed in the whole french territory, there could be structure related to "regions". -Each user would be linked to its region, through the structure. -Thus it would guarantee that a user from Bretagne could not edit objects created by a user from Normandie.* +*Exemple : si on imagine un Geotrek déployé sur l’ensemble du territoire français, il pourrait y avoir des structures correspondant à chaque région. Chaque utilisateur serait rattaché à sa région. Il y aurait alors la garantie qu’un utilisateur de Bretagne ne puisse pas modifier les objets saisis par un utilisateur de Normandie.* -The structure concept allows to divide users actions fields, and allows several organisation to work on a same Geotrek-admin, -while data keep coherence. +Cette notion de structures permet de segmenter les périmètres d’action des utilisateurs et de permettre à différentes entités de travailler sur un même Geotrek-Admin, tout en garantissant une cohérence des données. .. note :: - A user of a given structure will be able to create treks on paths related to another structure + Un utilisateur d’une structure pourra tout de même tracer des itinéraires sur des tronçons tracés par une autre structure .. note :: - To allow an user to modify objects from another structure, there are two ways: + Pour qu’un utilisateur puisse modifier les objets d’une autre structure il y a deux possibilités : + + - celui-ci est super-utilisateur + + - celui-ci possède la permission « Can bypass structure », qui permet d’outrepasser la restriction des structures. + +Pour définir la structure par défaut, se référer à la section :ref:`Default structure ` - - this user has superuser rights - - this user owns "Can bypass structure" permission, which allows him to override structure restriction +Gestion multilingue +=================== +La configuration des langues de la plate-forme est réalisée au travers du fichier de configuration principal. +Lors de sa mise à jour, la commande de déploiement créé les champs nécessaires qui manquent dans la base de données (exemple : nom_fr, nom_es, nom_it…). +Ceci est à distinguer des langues dans lesquelles sont traduits les éléments de l'interface de l'application (Français, Anglais, Italien, Espagnol). + +Il est par exemple possible d'intégrer des textes dans différentes langues (à minima français, anglais) dans Geotrek-Admin. + +.. figure:: ../images/user-manual/multilangue.png + :alt: Gestion multilingue dans la fiche détail + :align: center + + Gestion multilingue dans la fiche détail Configuration des portails ========================== @@ -258,15 +286,41 @@ Ainsi, il est possible d'avoir plusieurs Geotrek-Rando branchés sur un seul Geo Avec le widget Geotrek (https://github.com/GeotrekCE/geotrek-rando-widget) il est également possible d'utiliser cette fonctionnalité pour distinguer les contenus à afficher dans un widget ou dans un autre (https://makina-corpus.com/logiciel-libre/developpement-geotrek-widget-finance-parc-naturel-regional-haut-jura). -Pour configurer un ou pluseurs portails, il faut se rendre dans l'interface d'administration sur la section "Portails cibles". +Pour configurer un ou pluseurs portails, il faut se rendre dans le module de configuration sur la section "Portails cibles". + +.. figure:: ../images/admin/portals.png + :alt: Configuration des portails + :align: center -|image11| + Configuration des portails Il est possible de choisir de publier sur un ou plusieurs portails les objets suivants : itinéraires, contenus et évènements touristiques, pages statiques. Pour cela il suffit de sélectionner la valeur souhaitée dans le champ "portail" à l'édition de l'objet. +Intégration des données SIT +=========================== -Pictogrammes -============ +Des développements ont déjà été réalisés dans Geotrek pour intégrer des données de divers SIT (Système d’Informations Touristiques), notamment APIDAE, Tourinsoft, LEI, SITLOR... si les flux sont disponibles dans des formats ouverts. + +Il convient ensuite de configurer chaque flux dans Geotrek-Admin afin que ceux-ci soient synchronisé avec la plateforme touristique. + +La fonctionnalité consiste à absorber le flux XML, afin de le remettre à disposition sous une forme optimisée et épurée. Les données sont alors exposées sous la forme d’une web API, au format GeoJSON. +L’obtention d’un flux de données GeoJSON (agnostique et standard) présente de nombreux avantages pour l’intégration dans les applications tierces. Ce format est compatible nativement avec Rando V3, mais également avec la plupart des bibliothèques de cartographie (web et natives mobile). + +Pour configurer l'import de SIT, référez vous à cette section :ref:`Import data from touristic data systems (SIT) ` + +Intégration des fonds de cartes +=============================== + +Il est possible d'intégrer dans Geotrek différents fonds de carte comme : + +* OpenStreetMap : https://www.openstreetmap.org/#map=6/46.449/2.210 +* OpenTopoMap : https://opentopomap.org/#map=6.49.000/10.000 +* ou les données IGN : https://geoservices.ign.fr/services-geoplateforme-diffusion + +Pour configurer l'ajout de fonds de plan, référez vous à cette section :ref:`Map settings ` + +Intégration de pictogrammes +=========================== Les pictogrammes contribués dans Geotrek doivent être au format : @@ -280,7 +334,7 @@ Il doivent : marge si nécessaire. * Avoir une dimension minimale de 56x56 pixels en ce qui concerne les PNG -Si vous utilisez Inkscape, vous devez définir une viewBox. Voir http://wiki.inkscape.org/wiki/index.php/Tricks_and_tips#Scaling_images_to_fit_in_webpages.2FHTML +Si vous utilisez Inkscape, vous devez définir une viewBox. Voir `la documentation d'Inkscape `_ Afin de s'intégrer au mieux dans le design standard, les couleurs suivantes sont recommandées : @@ -288,12 +342,18 @@ Afin de s'intégrer au mieux dans le design standard, les couleurs suivantes son * Gris sur fond transparent pour les thèmes, * Blanc sur fond orange pour les types de POI. - -.. |image4| image:: /images/admin/django-admin-params-itineraires.png -.. |image5| image:: /images/admin/django-admin-ajout-pratique.png -.. |image6| image:: /images/admin/django-admin-params-tourisme.png -.. |image7| image:: /images/admin/django-admin-categorie-contenu-touristique.png -.. |image8| image:: /images/admin/contenu-touristique-categorie-sous-type.png -.. |image9| image:: /images/admin/django-admin-params-users.png -.. |image10| image:: /images/admin/django-admin-user-right.png -.. |image11| image:: /images/admin/portals.png +Voici quelques ressources en ligne proposant des pictogrammes (sous licence libre) : + +- `https://pictogrammers.com/library/mdi/ `_ +- `https://thenounproject.com/ `_ +- `http://map-icons.com/ `_ +- `https://www.opensymbols.org/ `_ +- `https://www.svgrepo.com/ `_ +- `http://www.entypo.com/ `_ +- `https://icons.getbootstrap.com/ `_ +- `https://icongr.am/ `_ +- `https://cocomaterial.com/ `_ +- `https://icofont.com/ `_ +- `https://fontello.com/ `_ +- `https://iconmonstr.com/ `_ +- `https://fontawesome.com/icons `_ \ No newline at end of file diff --git a/docs/usage/editing-objects.rst b/docs/usage/editing-objects.rst index 906310760a..3cdbd4c2e4 100644 --- a/docs/usage/editing-objects.rst +++ b/docs/usage/editing-objects.rst @@ -2,11 +2,62 @@ Edition d'un objet ================== +.. contents:: + :local: + :depth: 2 + +Les calculs géométriques sur les objets +======================================== + +Informations 3D +---------------- + +Toutes les géométries des tronçons sont *drapées* sur un modèle numérique de terrain, lors de leur création ou mise à jour. + +Tous les objets linéaires reposant sur les tronçons récupèrent leurs informations 3D à partir des tronçons associés, au lieu d'utiliser le modèle numérique de terrain. + +Calcul du dénivelé +--------------------- + +Nous calculons le `dénivelé positif cumulé `_. + +Nous échantillonnons le DEM tous les 25m par défaut (voir paramètre ``ALTIMETRIC_PROFILE_PRECISION``), +et nous ajoutons un peu de lissage pour éviter le bruit. + +Pour plus de détails : + +* `The smoothing explanation `_ +* `The piece of code to compute positive and negative accumulations `_ +* `Draping lines with PostGIS `_ + (or `french version `_) + +Lien entre les POIs et les itinéraires +--------------------------------------- + +Les POIs sont considérés comme des informations *éditoriales* et sont créés le long des randonnées. + +Lorsqu'un POI est créé, il est rattaché à l'itinéraire le plus proche. + +Un itinéraire repose sur un ou plusieurs tronçons, et certains POIs leur sont associés. + +.. note :: + + Il n'existe actuellement aucun moyen de contrôler manuellement l'association entre + randonnées et les POIs. + +Si le paramètre ``TREKKING_TOPOLOGY_ENABLED`` est défini sur ``False``, aucun tronçon n'est impliqué. +Les POIs sont ainsi liés à des treks utilisant une intersection spatiale de base, avec une +distance définie dans le paramètre ``TREK_POI_INTERSECTION_MARGIN`` (par défaut à 500 mètres). + Segmentation dynamique -====================== +----------------------- Certains objets sont saisis et stockés relativement aux tronçons, en utilisant `la segmentation dynamique `_. Il s'agit des objets suivants : sentiers, statuts, aménagements, interventions, itinéraires et POI. Tous les autres objets sont indépendants et ont leur propre géométrie. +La **segmentation dynamique** permet de saisir et stocker des informations relatives aux tronçons. Elle s'accompagne d'un ensemble de déclencheurs calculant automatiquement les géométries résultantes à la création et lors de modifications sur le réseau de tronçons. + +Cela permet de garantir une **cohérence géométrique et topologique entre les tronçons et les objets liés** (travaux, aménagements, statuts, itinéraires...), mais aussi d'associer tous les objets entre eux en vérifiant leur superposition sur le réseau. + C'est pourquoi, modifier un tronçon peut entrainer des modifications des objets qui lui sont rattachés (interventions, itinéraires, POIs...). Supprimer un tronçon, supprime les objets qui lui sont rattachés par segmentation dynamique. Les éléments ponctuels et linéaires des différents modules sont stockés sous forme d'évènements (PKdebut, PKfin et décalage dans la table ``geotrek.core_topology``) liés à un ou plusieurs tronçons (``geotrek.core_pathaggregation``). @@ -15,15 +66,101 @@ Un objet peut ainsi être associé à un ou plusieurs tronçons, partiellement o Les objets ponctuels ne sont associés qu'à un seul tronçon, sauf dans le cas où ils sont positionnés à une intersection de tronçons. -Chaque évènement dispose néanmoins d'une géométrie calculée à partir de leur segmentation dynamique pour faciliter leur affichage dans Geotrek ou dans QGIS. Il ne faut néanmoins pas modifier directement ces géométries, elles sont calculées automatiquement quand on modifie l'évènement d'un objet. +Chaque évènement dispose néanmoins d'une géométrie calculée à partir de leur segmentation dynamique pour faciliter leur affichage dans Geotrek ou dans QGIS (voir la section :ref:`Visualiser les données dans Qgis `). Il ne faut néanmoins pas modifier directement ces géométries, elles sont calculées automatiquement quand on modifie l'évènement d'un objet. .. notes Des vues SQL sont disponibles pour accéder aux objets de manière plus lisible et simplifiée (``v_interventions`` par exemple). Snapping - Aimantage - Accrochage -================================= +---------------------------------- Quand vous créez un objet, il est possible de le snapper (aimanter) aux objets existants. C'est notamment utile pour bien raccorder les tronçons entre eux. Quand vous raccrochez un tronçon à un tronçon existant, ce dernier est coupé automatiquement à la nouvelle intersection. Les fonctions d'aimantage ne sont pas disponibles lors de la création d'un nouvel objet (linéraire ou ponctuel). Il faut commencer par le créer puis le modifier pour disposer des fonctionnalités d'aimantage, activées automatiquement lorsque l'on se rapproche d'un objet existant. Par défaut la distance d'imantage est de 30 pixels mais elle est modifiable en configuration avancée. + +Informations altimétriques +--------------------------- + +L'édition des objets s'effectue en 2D, et leur géométrie est “drapée” automatiquement en 3D sur un Modèle Numérique de Terrain (MNT) stocké dans la base de données au format raster. + +Cette information est visible à travers le profil altimétrique pour les tronçons, les itinéraires et les autres objets linéaires. + +.. figure:: ../images/user-manual/altimetrie.png + :alt: Profil altimétrique d'un itinéraire + :align: center + + Profil altimétrique d'un itinéraire + +Pour importer automatiquement un MNT, se référer à la section :ref:`Import DEM (altimetry) ` + +Attributs aditionnels sur les objets +===================================== + +Fichiers liés +------------- + +Fichiers liés +~~~~~~~~~~~~~~ + +L’ajout, la modification ou la suppression des documents, illustrations et photos s’effectuent depuis l’onglet « Fichiers liés » de la fiche détail. + +Pour chaque fichier lié, l’auteur, le titre, la légende et sa catégorie sont saisis. Les fichiers liés peuvent être de tout type (photo, vidéo, dessin, PDF, tableur, fichier audio…). Pour les images, un aperçu est présenté. + +Les vignettes et versions redimensionnées des photos sont créées automatiquement lors de l’ajout. +Les contenus saisis sont publiés automatiquement. + +Il est possible de limiter la gestion des fichiers liés à un groupe restreint d’utilisateurs. + +.. figure:: ../images/user-manual/fichiers-lies.png + :alt: Fenêtre d'ajout de fichiers + :align: center + + Fenêtre d'ajout de fichiers + +Représentation verticale : les vues HD +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ + +Pour aller au-delà de la localisation sur une carte dans la représentation des sites d'activité Outdoor, notamment celles verticales (escalade, via-ferrata, alpinisme...), nous avons la possibilité d'ajouter des photos très haute définition (gigapixel) sur les itinéraires, POI et sites outdoor, et d'annoter celles-ci pour les enrichir. + +Le bloc "Vues HD" dans l'onglet "Fichier liés" permet d'associer une photo très haute définition (de plusieurs dizaines ou centaines de Mo) aux itinéraires, POI et sites Outdoor. Ces images sont tuilées automatiquement pour disposer de fichiers plus légers à charger dans un navigateur (en fonctionnant comme les fonds de carte tuilés). + +.. image :: /images/user-manual/hd_view_trek.png + +Une fois l'image ajoutée, un formulaire d'annotation permet d'ajouter des objets (points, lignes, polygones, cercles...) et des textes pour enrichir les photos. + +.. image :: /images/user-manual/hd_view_annotations.png + +Les annotations sont stockées en GeoJSON et peuvent donc être affichées par dessus la photo tuilée dans une librairie javascript de cartographie (comme Leaflet ou GeoJS) au niveau de Geotrek-rando-v3 ou autre. Pour cela, l'APIv2 expose pour chaque Vue HD l'adresse de récupération des tuiles ainsi que les annotations GeoJSON. + +La vue HD est également associée à une localisation correspondant à l'emplacement de ce que l'on voit sur l'image. + +.. image :: /images/user-manual/hd_view_detail.png + +.. notes + + Les vues HD ne sont disponibles que pour les modules Itinéraires, POIs et Outdoor. + +Photos accessibilité +--------------------- + +Cet onglet permet d'ajouter des photos afin d'illustrer les informations liées à l'accessibilité des randonnées. + +.. figure:: ../images/user-manual/photos-accessibilite.png + :alt: Fenêtre d'ajout de photos liées à l'accessibilité + :align: center + + Fenêtre d'ajout de photos liées à l'accessibilité + + +Historique +----------- + +Tous les objets créés dans Geotrek-admin possèdent un historique donnant des renseignement sur la date de l'évènement, l'utilisateur à l'origine de l'évènement et l'action réalisée (modification, ajout de fichier, etc.) + +.. figure:: ../images/user-manual/historique.png + :alt: Historique des modifications sur un objet + :align: center + + Historique des modifications sur un objet + diff --git a/docs/usage/externals-apis.rst b/docs/usage/externals-apis.rst deleted file mode 100644 index 31ffeddbc2..0000000000 --- a/docs/usage/externals-apis.rst +++ /dev/null @@ -1,48 +0,0 @@ -============= -External APIs -============= - -Geotrek et IGNrando' -==================== - -Depuis la version 0.32.0, Geotrek-admin est capable de produire un flux des itinéraires et POIs présents dans sa BDD au format Cirkwi pour pouvoir les importer directement dans IGNrando'(https://makina-corpus.com/sig-webmapping/geotrek-et-lign-ca-fonctionne). - -Exemple des randonnées et POIs du Parc national des Ecrins publiées sur IGNrando' depuis Geotrek-admin : https://ignrando.fr/fr/communautes/parc-national-des-ecrins - -Depuis cette version, 2 flux sont automatiquement générés par Geotrek-admin au format attendu par l'IGN : - -- [URL_GEOTREK-ADMIN]/api/cirkwi/circuits.xml -- [URL_GEOTREK-ADMIN]/api/cirkwi/pois.xml - -Il est possible d'exclure les POI du flux pour ne diffuser que les randonnées. Pour cela, ajouter le paramètre ``?withoutpois=1`` à la fin de l'URL (``http://XXXXX/api/cirkwi/circuits.xml?withoutpois=1``). - -Il est possible de filtrer les POI du flux par structure. Pour cela, ajouter le paramètre ``?structures=`` à la fin de l'URL (``http://XXXXX/api/cirkwi/pois.xml?structures=2``). -Vous pouvez filtrer avec plusieurs structures : en séparant les identifiants par des virgules (``http://XXXXX/api/cirkwi/pois.xml?structures=2,5,3``). - -Il est également possible de filtrer les randonnées du flux par structure et par portail. Pour cela, ajouter le paramètre ``?structures=``. -ou ``?portals=`` à la fin de l'URL (``http://XXXXX/api/cirkwi/circuits.xml?portals=3``). -Tout comme les pois Vous pouvez filtrer avec plusieurs structures et portails : en séparant les identifiants par des virgules. - -Il est également possible d'exclure du flux les randonnées provenant de sources externes à Geotrek-Admin. Ce filtre est notamment nécessaire pour -ne pas renvoyer à Cirkwi les randonnées qui en proviennent déjà. Pour cela, ajouter le paramètre ``?include_externals=false`` à la fin de l'URL (``http://XXXXX/api/cirkwi/circuits.xml?include_externals=false``). - -Il est possible de cumuler ces différents filtres, en séparant les valeurs par un ``&`` (``http://XXXXX/api/cirkwi/circuits.xml?portals=3&structures=1&include_externals=false``). - -Le référentiel CIRKWI a été intégré dans 3 tables accessibles dans l'Adminsite (à ne pas modifier) : - -.. image :: /images/user-manual/cirkwi-tables.png - -Si vous ne souhaitez pas utiliser les valeurs par défaut ou avez créez vos propres typologies, il faut que vous renseigniez les correspondances entre les catégories de votre Geotrek et celles du référentiel IGN (Cirkwi) dans votre Adminsite. Comme indiqué ici : https://github.com/GeotrekCE/Geotrek-admin/issues/806. - -* Pratique >> locomotion/loisirs -* Accessibilite >> thematiques/tags -* Themes >> thematiques/tags -* Types de POI >> Categories POI - -Les correspondances avec les valeurs de ces 3 tables sont donc à renseigner dans les tables Geotrek des Pratiques, Accessibilités, Thèmes et Types de POI. - -Ce même flux est aussi utilisable pour alimenter directement la plateforme Cirkwi : https://pro.cirkwi.com/importez-vos-donnees-geotrek-dans-cirkwi/. - -:Note: - - Geotrek-admin dispose aussi d'une API générique permettant d'accéder aux contenus d'une instance à l'adresse : ``[URL_GEOTREK-ADMIN]/api/v2/`` diff --git a/docs/usage/interfaces.rst b/docs/usage/interfaces.rst new file mode 100644 index 0000000000..ba3ff29f94 --- /dev/null +++ b/docs/usage/interfaces.rst @@ -0,0 +1,100 @@ +======================================= +Interface, navigation et saisie +======================================= + +.. contents:: + :local: + :depth: 2 + +Navigation et saisie +==================== + +Les résultats sont affichés sous forme de carte et liste puis on accède aux détails des objets. + +Vue liste +--------- + +Tous les modules sont construits de la même façon : + +* une liste paginée des objets du module +* la possibilité de filtrer la liste selon des attributs ou de faire une recherche libre +* la possibilité de filtrer selon l'étendue de la carte +* la sélection coordonnée (liste → carte, carte → liste) +* la possibilité d'exporter les résultats au format CSV, SHAPEFILE et en GPX +* une carte dans laquelle il est possible de naviguer (déplacer, zoomer), d'afficher en plein écran, de mesurer une longueur, d'exporter une image de la carte, de réinitialiser l'étendue, de zoomer sur une commune ou un secteur et de superposer des données des autres modules (contours communes / secteurs / physique / foncier / gestionnaires…) +* l'accès à la vue détail d'un objet au clic sur celui-ci + +.. figure:: ../images/user-manual/01-liste-fr.jpg + :alt: Vue liste avec la carte + :align: center + + Vue liste avec la carte + + +.. note:: + - Au survol d'un objet dans la liste, celui-ci est mis en surbrillance sur la carte. + - Il est possible d'ajouter de nouveaux objets depuis chaque module. + - Un clic sur un objet dans la liste ou la carte permet d'accéder à la fiche détaillée de celui-ci. + +.. warning:: + - La liste des résultats est filtrée en fonction de l'étendue de la carte affichée. + +Vue détail +---------- + +A partir de chaque module, il est possible d'afficher la fiche détail d'un objet en cliquant sur celui-ci dans la liste ou la carte du module. Les objets de chaque module peuvent ainsi être affichés individuellement dans une fiche détail pour en consulter tous les attributs, tous les objets des autres modules qui intersectent l'objet, les fichiers qui y sont attachés et l'historique des modifications de l'objet. + +Voici les possibilités de la fiche détail : + +- le récapitulatif des attributs (saisis et calculés) +- récupérer automatiquement des informations liées (communes, secteurs, POI…) +- ajouter des fichiers (redimensionnement automatique pour les photos) +- l'accès à la vue d’édition selon les droits de l’utilisateur connecté +- l'export GPX, KML, OpenDocument, Word, PDF + +.. figure:: ../images/user-manual/fiche-detail.png + :alt: Fiche détail d'un itinéraire + :align: center + + Fiche détail d'un itinéraire + +.. note:: + - Lorsque le statut de publication d'un objet est activé, celui-ci ainsi que tous ses attributs associés, sont mis en ligne. + - À tout moment et ce sur chaque module, les informations peuvent être soit mises en ligne, soit désactivées, voire supprimées. + - Ne sont mises en ligne que les informations choisies et disponibles. Les catégories non encore alimentées ne seront pas visibles pour le grand public. Ainsi si vous créez une nouvelle pratique "Raquettes", celle-ci ne sera pas mise ne ligne tant que vous n'aurez pas publié un premier itinéraire de raquettes. + + +Vue édition +------------ + +- Saisie des champs multilingues +- Saisie des tracés +- Possibilité de forcer des points de passage (détours, boucles, aller-retours) +- Édition WYSIWYG des champs texte +- Ajout de couches locales en superposition à partir de fichiers GPX ou KML (aide à la saisie) +- Outils de mesure + +.. figure:: ../images/user-manual/vue-edition-v2.png + :alt: Fiche détail d'un itinéraire en édition + :align: center + + Fiche détail d'un itinéraire en édition + +Paramètres de configuration +============================ + +Toutes les listes de choix (thématiques, pratiques, parcours…) sont administrables depuis le module de configuration, selon les droits dont dispose l’utilisateur connecté. + +.. figure:: ../images/admin/interface-django.png + :alt: Interface complète du module de configuration + :align: center + + Interface complète du module de configuration + +.. figure:: ../images/user-manual/django-pratique.png + :alt: Exemple d’édition des pratiques et de leur pictogramme + :align: center + + Exemple d’édition des pratiques et de leur pictogramme + +Voir la section :ref:`Paramétrage des modules ` diff --git a/docs/usage/management-modules.rst b/docs/usage/management-modules.rst index 66bf421449..6c992024cb 100644 --- a/docs/usage/management-modules.rst +++ b/docs/usage/management-modules.rst @@ -2,6 +2,10 @@ Modules de gestion ================== +.. contents:: + :local: + :depth: 2 + Geotrek-admin comporte un certain nombre de modules de gestion des sentiers (tronçons, sentiers, statuts, aménagements, signalétique, interventions et chantiers). Les tronçons sont les éléments de base sur lesquels s'appuient l'ensemble des objets des autres modules, en utilisant la segmentation dynamique (https://makina-corpus.com/blog/metier/2014/la-segmentation-dynamique). @@ -10,16 +14,19 @@ Les modules signalétique et aménagement ont initialement été conçus dans un Les modules interventions et chantiers ont été conçus de façon à permettre à la fois un inventaire et un suivi des travaux (prévisionnel, administratif et financier). -En termes de structuration, le choix initial a été de concevoir, sur le volet gestion, la gestion des valeurs des listes déroulantes structure par structure pour que chaque structure travaillant sur une même instance Geotrek-admin puisse avoir des typologies différentes (types de signalétique, d’aménagements, d’organismes...). Néanmoins, depuis la version 2.20 de Geotrek-admin (voir le changelog : https://github.com/GeotrekCE/Geotrek-admin/releases/tag/2.20.0), il est possible de partager des typologies entre les différentes structures en ne renseignant pas ce champ. +Pour les territoires qui le souhaitent, sur le volet gestion, les valeurs des listes déroulantes peuvent être différenciées par structure, afin que chaque structure travaillant sur une même instance Geotrek-admin puisse avoir des typologies différentes si nécéssaire (types de signalétique, d’aménagements, d’organismes...). + +Néanmoins, pour les territoires qui souhaitent mutualiser les mêmes valeurs dans les listes sans avoir à les renseigner pour chaque structure, il est possible de partager des typologies entre les différentes structures en ne renseignant tout simplement pas ce champ. Un compte utilisateur appartenant à une structure X n'aura accès qu'aux typologies associées à celle-ci, ainsi qu'aux typologies partagées. De même, ce compte utilisateur ne pourra pas modifier ou supprimer des objets appartenant à une autre structure (c'est-à-dire créés par un compte utilisateur appartenant à une autre structure), sauf à avoir des permissions particulières. Lors de la saisie d'un objet sur la carte, il est possible d'afficher une couche SIG ou un relevé GPX sur la carte lors de la création d'un objet sur la carte pour pouvoir le visualiser et le localiser sur la carte (``Charger un fichier local (GPX, KML, GeoJSON)``). +.. _les-troncons: + Les tronçons ============ -C'est le socle essentiel et central de Geotrek. Un tronçon est un objet linéaire, entre 2 intersections. Le mécanisme de ségmentation dynamique permet de ne pas devoir le recouper pour y rattacher des informations. - +C'est le socle essentiel et central de Geotrek. Un tronçon est un objet linéaire, entre deux intersections. Le mécanisme de segmentation dynamique permet de ne pas devoir le recouper pour y rattacher des informations. Les tronçons peuvent être soit numérisés dans Geotrek-admin, soit importés directement dans l'outil via : @@ -44,6 +51,8 @@ Comme pour tous les modules, il est aussi possible d'attacher des documents à c Enfin, toujours depuis la fiche détail d'un tronçon, il est possible d'en afficher l'historique des modifications. +.. _les-sentiers: + Les sentiers ============ @@ -55,11 +64,15 @@ Ils permettent également de préciser une ou plusieurs certifications ainsi que A ne pas confondre avec le module Itinéraires qui permet de créer des randonnées publiées sur un portail Geotrek-rando. +.. _les-statuts: + Les statuts -=========== +============ Ils permettent de renseigner des informations sur le linéaire (type physique, statut foncier, organismes ayant la compétence sentiers, gestionnaires des travaux et de la signalétique) sans avoir à le faire tronçon par tronçon grâce à la segmentation dynamique qui permet de localiser le départ et l'arrivée sur un ou plusieurs tronçons. +.. _les-amenagements: + Les aménagements ================ @@ -73,6 +86,10 @@ Comme pour les autres modules, il sont intersectés avec les autres modules pour Il est aussi possible de les exporter, de leur attacher des fichiers (images, PDF, tableurs, ZIP...) et d'en consulter l'historique des modifications. +Pour importer automatiquement des éléments d'aménagements, se référer à la section :ref:`Import Infrastructure ` + +.. _la-signaletique: + La signalétique =============== @@ -82,6 +99,10 @@ Pour une signalétique, il est possible de définir chaque lame et chaque ligne .. image :: /images/user-manual/signage.png +Pour importer automatiquement des éléments de signalétiques, se référer à la section :ref:`Import Signage ` + +.. _les-interventions: + Les interventions ================= @@ -99,6 +120,8 @@ Plusieurs interventions peuvent être rattachées à un même chantier pour avoi L'onglet `Avancé` du formulaire permet de renseigner des informations financières sur chaque intervention (coût direct et indirect lié au nombre de jours/agents dissocié par fonction). +.. _les-chantiers: + Les chantiers ============= diff --git a/docs/usage/outdoor.rst b/docs/usage/outdoor.rst deleted file mode 100644 index 203be178ab..0000000000 --- a/docs/usage/outdoor.rst +++ /dev/null @@ -1,114 +0,0 @@ -================= -Activités outdoor -================= - -Sites et parcours -================= - -Geotrek-admin dédie 2 modules aux activités outdoor : les sites et les parcours. Un site correspond à une zone ou à un réseau hydrographique -à gérer et/ou à valoriser d'un seul tenant : site d'escalade, cours d'eau, zone de vol libre… - -Les sites peuvent être subdivisés en sous-sites (dits enfants), qui peuvent eux-mêmes être subdivisés en sous-sites : -secteurs d'escalade (groupe de blocs ou falaise), aires de décollage ou d'atterrissage… - -Chaque site (ou sous-site) peut contenir différents parcours : voie d'escalade, parcours d'eau vive… - -Il est possible de regrouper un enchaînement de parcours sous forme d'un parcours particulier appelé itinérance : -grande voie d'escalade, enchainement entre différentes pratiques… - -Les 2 modules outdoor permettent de : - -- Lister, filtrer, créer, modifier et exporter des sites et des parcours outdoor de manière générique pour gérer tout type de pratiques (escalade, alpinisme, via ferrata, canyoning, kayak, vol libre, plongée...) -- Ajouter les pratiques que l'on souhaite de manière générique, et de définir leurs propres types et leurs propres niveaux et valeurs de cotation -- Lier des sites entre eux de manière hiérarchisée, pour avoir des sites, des sous-sites, des sous-sous-sites... Par exemple pour un site global avec différentes pratiques, pour un site d'escalade avec des secteurs, des sous-secteurs... -- Agréger des informations au niveau d'un site, en fonction des sous-sites qui lui sont rattachés. Par exemple les pratiques d'un grand site outdoor sont l'agrégation des pratiques des sous-sites qui le composent -- Lier des parcours à des sites et leur appliquer une cotation en fonction de la pratique du site auquel ils sont rattachés -- Lier des parcours entre eux pour faire de l'itinérance avec une fiche mère et des fiches enfants (étapes), comme c'est déjà la cas pour les itinéraires -- Associer des aménagements aux sites (parking, toilettes, banc...) automatiquement par intersection géographique -- Associer des interventions à des sites ou parcours, automatiquement par intersection géographique, ou explicitement en passant par le site ou le parcours sur lequel l'intervention a été réalisée -- Associer des POI à un site ou parcours, automatiquement par intersection géographique -- Associer des accès au site, automatiquement par intersection géographique des itinéraires à proximité - -Arborescence ------------- - -Les fiches détail des sites et des parcours présentent les liens entre eux sous forme d'une arborescence. Pour ne pas surcharger, -tous les éléments ne sont pas repris, mais uniquement : - -- le site/parcours courant, -- le site auquel il appartient (parent), ainsi que le grand-parent, etc. jusqu'à remonter au plus haut niveau, -- les différents sous-sites et/ou parcours (enfants) le cas échéant. - -Des liens permettent d'ajouter des sites ou parcours en les positionnant directement dans l'arborescence. - -Nomenclatures -============= - -En déroulant le menu en haut à droite de l'écran et en cliquant sur « Admin » il est possible de modifier les nomenclatures. - -* Filières : elles servent à regrouper les pratiques pour pouvoir filtrer rapidement les sites ou parcours. - Par exemple la filière « eau vive » peut regrouper « kayak » et « canyoning ». -* Pratiques : les pratiques sportives. Vous pouvez préciser à quelle filière elle appartient. -* Types de sites : ces catégories permettent d'étiqueter et de filtrer les sites. Elles sont spécifiques à chaque pratique. - Par exemple « Site école » pour l'escalade. -* Échelle de cotation : permet de regrouper les cotations faisant partie de la même échelle. Elles sont spécifiques à chaque pratique. - -Filières -======== - -Escalade --------- - -La notion de site est naturelle. Elle peut être définie géographiquement par un polygone. -Il est possible (mais pas obligatoire) de créer des sous-sites pour représenter des secteurs. -Ou pour des falaises, elles-mêmes divisées en sous-sous sites pour les différents secteurs. - -Chaque voie correspond à un parcours. La voie étant verticale et la carte horizontale, -le plus pertinent est de définir géographiquement la voie par un simple point. -Une grande voie peut être décrite simplement par un parcours mais, pour plus de détails, -il est également possible de créer autant de parcours que de longueurs dans la grande voie. -Lors de la saisie de la grande voie, il faudra préciser les différentes longueurs dans le champ « Enfants », dans le bon ordre. -Le nom de chaque longueur pourra reprendre le nom de la voie suffixé par « longueur 1 », « longueur 2 », etc. - -Vol libre ---------- - -La zone de vol n'est pas définie géographiquement de manière précise mais fait quand même l'objet d'un site avec un nom -(ex: « massif de … ») et un polygone approximatif ou bien un point (de préférence celui de départ). Cela n'a pas une importance -déterminante. Ce qui compte c'est 1) de rendre cela lisible sur une carte et 2) d'être cohérent entre les différents sites. - -Pour chaque zone de vol, les différentes aires de décollage et d'atterrissage sont définies à l'aide de sous-sites. -Afin de les identifier, il faut créer les types de site « Aire de décollage » et « Aire d'atterrissage » pour la catégorie -« Vol libre » dans la nomenclature et associer ces types aux aires. -Comme le vol est libre, il n'est pas nécessaire de définir des parcours. Cependant, il est possible d'en définir pour donner -des exemples de trajectoires. - -Eau vive --------- - -Le site est généralement constitué par une rivière ou une portion de rivière. Il est possible d'y adjoindre des affluents. -La géométrie du site est donc un linéraire correspondant à un réseau hydrographique. - -Les aires d'embarquement/débarquement sont définies par des sous-sites. Leur géométrie peut être définie sous forme d'un point -ou d'un polygone. -Les parcours sont automatiquement attachés à une aire d'embarquement et une aire de débarquement qui sont les aires les plus -proches respectivement du début et de la fin du parcours. - -Représentation verticale : les vues HD -====================================== - -Pour aller au-delà de la localisation sur une carte dans la représentation des sites d'activité Outdoor, notamment celles verticales (escalade, via-ferrata, alpinisme...), nous avons la possibilité d'ajouter des photos très haute définition (gigapixel) sur les itinéraires, POI et sites outdoor, et d'annoter celles-ci pour les enrichir. - -Le bloc "Vues HD" dans l'onglet "Fichier liés" permet d'associer une photo très haute définition (de plusieurs dizaines ou centaines de Mo) aux itinéraires, POI et sites Outdoor. Ces images sont tuilées automatiquement pour disposer de fichiers plus légers à charger dans un navigateur (en fonctionnant comme les fonds de carte tuilés). - -.. image :: /images/user-manual/hd_view_trek.png - -Une fois l'image ajoutée, un formulaire d'annotation permet d'ajouter des objets (points, lignes, polygones, cercles...) et des textes pour enrichir les photos. - -.. image :: /images/user-manual/hd_view_annotations.png - -Les annotations sont stockées en GeoJSON et peuvent donc être affichées par dessus la photo tuilée dans une librairie javascript de cartographie (comme Leaflet ou GeoJS) au niveau de Geotrek-rando-v3 ou autre. Pour cela, l'APIv2 expose pour chaque Vue HD l'adresse de récupération des tuiles ainsi que les annotations GeoJSON. - -La vue HD est également associée à une localisation correspondant à l'emplacement de ce que l'on voit sur l'image. - -.. image :: /images/user-manual/hd_view_detail.png diff --git a/docs/usage/overview.rst b/docs/usage/overview.rst index 7aaf93e067..b99fb7175c 100644 --- a/docs/usage/overview.rst +++ b/docs/usage/overview.rst @@ -1,63 +1,147 @@ -======== -Overview -======== - -Interface -========= - -Modules -------- - -Geotrek est composé de différents modules. - -**Gestion des sentiers** : - -* Tronçons (linéaire entre 2 intersections) -* Sentiers (groupe de tronçons) -* Statuts (physique, foncier, organismes ayant la compétence sentiers, gestionnaires des travaux et de la signalétique) -* Aménagements (ouvrages et équipements) -* Signalétique -* Interventions (travaux) -* Chantiers (groupe d'interventions) - -**Valorisation de l'offre touristique** : - -* Sites outdoor (sites d'escalade, rivières, aires de vol libre…) -* Parcours outdoor (voie d'escalade, parcours d'eau vive…) -* Itinéraires (randonnées) -* POI (points d'intérêt patrimoniaux) -* Services (informations pratiques comme les points d'eau, passages délicats... selon la typologie que vous souhaitez) -* Contenus touristiques (hébergements, restaurants, services, activités de pleine nature, musées, produits labellisés... Vous pouvez créer les catégories que vous souhaitez) -* Evènements touristiques (animations, expositions, sorties...) -* Signalements (problèmes signalés par les internautes sur un itinéraire depuis Geotrek-rando) -* Zones de sensibilité (module non activé par défaut permettant de gérer des zones de sensibilité de la faune sauvage pour les afficher sur Geotrek-rando ou les diffuser avec l'API de Geotrek-admin) - -Chaque module est accessible depuis le bandeau vertical. - -Tous les modules sont construits de la même façon : - -* une liste paginée des objets du module -* la possibilité de filtrer la liste ou de faire une recherche libre -* la possibilité d'exporter les résultats en CSV (pour EXCEL ou CALC), en SHAPEFILE (pour QGIS ou ArcGIS) et en GPX (pour l'importer dans un GPS) -* une carte dans laquelle il est possible de naviguer (déplacer, zoomer), d'afficher en plein écran, de mesurer une longueur, d'exporter une image de la carte, de réinitialiser l'étendue, de zommer sur une commune ou un secteur et de choisir les couches à afficher - -.. image :: /images/user-manual/01-liste-fr.jpg - -Au survol d'un objet dans la liste, celui-ci est mis en surbrillance sur la carte. - -Au survol d'un objet sur la carte, celui-ci est mis en évidence dans la liste. - -La liste des résultats est filtrée en fonction de l'étendue de la carte affichée. - -C'est aussi depuis un module qu'il est possible d'ajouter de nouveaux objets. - -Un clic sur un objet dans la liste ou la carte permet d'accéder à la fiche détaillée de celui-ci. - -Fiches détails --------------- - -A partir de chaque module, il est possible d'afficher la fiche détail d'un objet en cliquant sur celui-ci dans la liste ou la carte du module. Les objets de chaque module peuvent ainsi être affichés individuellement dans une fiche détail pour en consulter tous les attributs, tous les objets des autres modules qui intersectent l'objet, les fichiers qui y sont attachés et l'historique des modifications de l'objet. - -Depuis la fiche détail d'un objet, il est aussi possible d'exporter celui-ci au format ODT, DOC ou PDF. - -Selon les droits dont dispose l'utilisateur connecté, il peut alors modifier l'objet. +===================== +Présentation générale +===================== + +.. contents:: + :local: + :depth: 2 + +Architecture +============ + +L’application est composée : + +* d’une **page d'authentification**, demandant la saisie d’un login et d’un mot de passe +* d’une **interface de consultation des objets de chaque module** + + * avec la liste de sélection déroulante des modules avec compteur des résultats + * un onglet latéral de sélection des modules + * un accès aux paramètres de configuration + * un bouton déconnexion de l’application + +* de **paramètres d’administration** (gestion des droits, des listes déroulantes…) + +Page d'authentification +======================= + +.. figure:: ../images/user-manual/geotrek-login.png + :alt: Accès à Geotrek-admin via un login et un mot de passe + :align: center + + Accès à Geotrek-admin via un login et un mot de passe + + +Les modules de Geotrek +======================= + +Geotrek-admin est composé de deux types de modules pour la gestion et la valorisation des contenus. + +Modules de gestion +------------------- + +.. list-table:: Modules de gestion + :widths: 25 25 50 + :header-rows: 1 + + * - Icône + - Module + - Description + * - .. figure:: ../images/user-manual/modules/troncons.png + - :ref:`Tronçon ` + - | C'est l’équivalent du réseau routier : ils constituent le support des tracés + | des objets linéaires (itinéraires, statuts, interventions, aménagements...). + | Leur modification est relativement rare (fermeture d’un chemin, + | éboulement...). + * - .. figure:: ../images/user-manual/modules/sentier.png + - :ref:`Sentier ` + - | Les itinéraires, non pas de randonnée, mais de gestion, correspondent au + | départ et à l'arrivée d'un sentier. + * - .. figure:: ../images/user-manual/modules/statut.png + - :ref:`Statut ` + - | Gestion des organismes ayant la compétence sentiers, + | gestionnaires des travaux et de la signalétique. + | Type physique (route, piste, sente, etc.) + * - .. figure:: ../images/user-manual/modules/amenagement.png + - :ref:`Aménagement ` + - | Décrit et localise les ouvrages, le mobilier, les équipements. + * - .. figure:: ../images/user-manual/modules/signaletique.png + - :ref:`Signalétique ` + - | Reprend l'ensemble de la signalétique d'accueil, d'information et + | d'orientation à destination des randonneurs. + | Gestion des fichiers associés comme les BAT, les maquettes… + * - .. figure:: ../images/user-manual/modules/intervention.png + - :ref:`Intervention ` + - | Répertorie les travaux liés à l'entretien courant des ouvrages, + | l'entretien sur les sentiers, la mise en place et l'entretien + | de la signalétique, etc... + * - .. figure:: ../images/user-manual/modules/chantier.png + - :ref:`Chantier ` + - | Correspond à des ensembles d'interventions. Cela permet d'avoir une + | approche globale de chantiers significatifs et des informations + | administratives associées. + +Modules de valorisation +------------------------ + +.. list-table:: Modules de valorisation + :widths: 25 25 50 + :header-rows: 1 + + * - Icône + - Module + - Description + * - .. figure:: ../images/user-manual/modules/itineraire.png + - :ref:`Itinéraire ` + - | Randonnées présentées au grand public : l’itinéraire est + | défini selon la géométrie des tronçons empruntés. L’ajout, + | la modification sont fréquents. La dé-publication est fortement + | déconseillée pour le référencement et les passerelles + | avec d'autres outils. + * - .. figure:: ../images/user-manual/modules/poi.png + - :ref:`Points d'intérêts (POI) ` + - | Ponctuels à découvrir associés aux randonnées : en fonction + | de leur emplacement, ils sont associés automatiquement aux + | randonnées. Leur catégorie détermine leur pictogramme (faune, + | flore, patrimoine, équipements...). + * - .. figure:: ../images/user-manual/modules/service.png + - :ref:`Services ` + - | Informations pratiques comme les points d'eau, passages + | délicats... selon la typologie souhaitée. Ils n'ont pas de + | description ni de nom, ni de photo et sont uniquement affichés + | sur la carte de l'itinéraire sous forme de pictogramme. + * - .. figure:: ../images/user-manual/modules/contenustouristiques.png + - :ref:`Contenus touristiques ` + - | Correspond aux services touristiques pouvant être importés + | depuis des Systèmes d'Informations Touristiques (SIT), + | qui permettent d'alimenter automatiquement la base de + | données Geotrek. Celles-ci sont regroupées dans des + | catégories de type : hébergements, musées, restaurants, + | produits du terroir... + * - .. figure:: ../images/user-manual/modules/evenementstouristiques.png + - :ref:`Évènements touristiques ` + - | Correspond aux animations pouvant être importées depuis + | des Systèmes d'Informations Touristiques (SIT), qui permettent + | d'alimenter automatiquement la base de données Geotrek. + | Celles-ci sont regroupées dans des catégories de type : + | conférences, expositions, sorties… + * - .. figure:: ../images/user-manual/modules/signalements.png + - :ref:`Signalements ` + - | Contient les problèmes remontés par les internautes, par + | exemple via le formulaire dédié sur Geotrek-rando + * - .. figure:: ../images/user-manual/modules/zonessensibles.png + - :ref:`Zones sensibles ` + - | Module non activé par défaut permettant de saisir et de gérer + | des zones de sensibilité de la faune sauvage pour les afficher + | sur Geotrek-rando ou les diffuser avec l'API de Geotrek-admin). + * - .. figure:: ../images/user-manual/modules/sitesoutdoor.png + - :ref:`Sites outdoor ` + - | Permet de définir des sites d'activités de pleine nature + | (sites d'escalade, rivières, aires de vol libre) + * - .. figure:: ../images/user-manual/modules/parcoursoutdoor.png + - :ref:`Parcours outdoor ` + - | Couplé au module « site outdoor», permet de les détailler en + | renseignant des activités de pleine nature diverses (kayak, + | rafting, parapente, course d'orientation, voie d'escalade, + | parcours d'eau vive…etc.) + +Chaque module est accessible depuis le bandeau vertical situé à gauche de l'écran. diff --git a/docs/usage/screencasts.rst b/docs/usage/screencasts.rst deleted file mode 100644 index 2014b6d19e..0000000000 --- a/docs/usage/screencasts.rst +++ /dev/null @@ -1,35 +0,0 @@ -=========== -Screencasts -=========== - -( **In French** ) - -* `Présentation de l'interface `_ : - -.. raw:: html - - - -* `Création d'un itinéraire `_ : - -.. raw:: html - - - -* `Création d'un POI `_ : - -.. raw:: html - - - -* `Ajout de photos `_ : - -.. raw:: html - - - -* `Administration `_ : - -.. raw:: html - - diff --git a/docs/usage/static-pages.rst b/docs/usage/static-pages.rst index 0a03c06ea3..2246cf8515 100644 --- a/docs/usage/static-pages.rst +++ b/docs/usage/static-pages.rst @@ -2,6 +2,11 @@ Pages statiques =============== +.. contents:: + :local: + :depth: 2 + + .. danger:: Depuis Geotrek-Rando V3, le composant Bootstrap n'est plus utilisé pour gérer les différentes tailles d'écran. Cela signifie que la mise en page créée dans Geotrek-Admin n'est pas reproduite sur le site public. Cette documentation n'est valable que pour Geotrek-Rando V2 en attendant sa mise à jour expliquant le fonctionnement actuel. Voir le ticket : https://github.com/GeotrekCE/Geotrek-rando-v3/issues/466 @@ -14,14 +19,14 @@ Les pages statiques sont les pages d'information et de contextualisation de votr Elles permettent de fournir à l'internaute et futur randonneur des informations génériques : présentation de votre structure, votre projet de randonnée, recommandations, informations pratiques, etc. -Elles sont gérées depuis l'Adminsite de Geotrek-admin et sont ensuite publiées sur Geotrek-rando à chaque synchronisation du contenu. +Elles sont gérées depuis le module de configuration de Geotrek-admin et sont ensuite publiées sur Geotrek-rando à chaque synchronisation du contenu. .. image :: /images/user-manual/flatpages-adminsite.jpg Créer une page statique -======================= +======================== -Depuis l'Adminsite de Geotrek, sélectionnez "Pages statiques" dans la rubrique "Flatpages". +Depuis le module de configuration de Geotrek-admin, sélectionnez "Pages statiques" dans la rubrique "Flatpages". .. image :: /images/user-manual/flatpages-flatpages.png @@ -92,7 +97,7 @@ Insérer un lien : cela ouvre une nouvelle fenêtre avec différents champs à - Tools : Afficher le code source de la page Astuces -======= +======== 1. Ne jamais utiliser la touche retour du clavier [ ? ] sans avoir le curseur sélectionné dans une zone de texte. Cela équivaut à revenir à la page précédente et vous perdrez tout votre contenu sans le sauvegarder. 2. Pour reproduire une page dans une langue différente : copier le Code Source et coller-le Code Source de votre nouvelle langue. Vous n'aurez plus qu'à traduire votre texte ! Idem pour traduire un contenu dans une autre langue. diff --git a/docs/usage/touristic-modules.rst b/docs/usage/touristic-modules.rst new file mode 100644 index 0000000000..6627c54098 --- /dev/null +++ b/docs/usage/touristic-modules.rst @@ -0,0 +1,555 @@ +======================= +Modules de valorisation +======================= + +.. contents:: + :local: + :depth: 2 + +.. _itineraires: + +Itinéraires +=========== + +Les itinéraires sont des randonnées présentés au grand public : l’itinéraire est défini selon la géométrie des tronçons empruntés. +L’ajout ou la modification sont fréquents. + +Fiche détaillée +--------------- + +Basique +~~~~~~~ + +**Structure liée** ~ requis + +- Description : nom de la structure d'appartenance de l'itinéraire +- Type : liste déroulante +- Choix : unique +- URl de configuration : `/admin/authent/structure/ `_ +- Visibilité : interne +- Exemple : CD09 + +**Nom [fr]** ~ requis + +- Description : nom de l'itinéraire +- Type : champ libre +- Multilingue : oui +- Visibilité : publique +- Exemple : GR09 Boucle du Pic des Trois Gentilhommes + +**En attente de publication** + +- Description : itinéraire en attente d'être publié +- Type : case à cocher +- Valeur par défaut (décoché) : itinéraire publiable +- Visibilité : publique + +**Publié [fr]** + +- Description : Itinéraire publié ou en brouillon +- Type : case à cocher +- Valeur par défaut (décoché) : brouillon +- Visibilité : interne + +**Départ [fr]** ~ Recommandé + +- Description : description du lieu de départ +- Type : champ libre +- Visibilité : publique +- Exemple : Refuge de les Caussis + +**Arrivée [fr]** ~ Recommandé + +- Description : description du lieu de l'arrivée +- Type : champ libre +- Visibilité : publique +- Exemple : Refuge de les Caussis + +**Durée** ~ Recommandé + +- Description : durée de l'itinéraire (en heures (1.5 = 1 h 30, 24 = 1 jour, 48 = 2 jours)) +- Type : numérique +- Visibilité : publique +- Exemple : 1.5 + +**Difficulté** ~ Recommandé + +- Description : niveau de difficulté de l'itinéraire +- Type : liste déroulante +- Choix : unique +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/trekking/difficultylevel/ `_ +- Visibilité : publique +- Exemple : Intermédiaire + +**Pratique** ~ Recommandé + +- Description : type de pratique de l'itinéraire +- Type : liste déroulante +- Choix : unique +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/trekking/practice/ `_ +- Visibilité : publique +- Exemple : Pédestre + +**Échelle de cotation** + +- Description : définition d'une cotation de l'itinéraire spécifique à la pratique +- Type : liste déroulante +- Choix : unique +- Conditionnel : selon la pratique choisie +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/trekking/ratingscale/ `_ +- Visibilité : publique +- Exemple : Technicité : 3 - Moyen + +**Description de cotation [fr]** + +- Description : précision sur la valeur de cotation de l'itinéraire spécifique à la pratique +- Type : champ libre +- Visibilité : publique +- Exemple : La technicité de cet itinéraire est moyenne car elle ne comprend pas de passages délicats. + +**Parcours** + +- Description : type de parcours +- Type : liste déroulante +- Choix : unique +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/trekking/route/ `_ +- Visibilité : publique +- Exemple : Boucle + +**Accès routier [fr]** + +- Description : accès routier jusqu'au point de départ +- Type : champ libre +- Visibilité : publique +- Exemple : Depuis Savines-Le-Lac (17km), prendre la D41 jusqu'à Réallon. Suivre ensuite la D241 jusqu'au hameau des Gourniers au fond de la vallée. + +**Chapeau [fr]** ~ Recommandé + +- Description : bref résumé de l'itinéraire avec accroche +- Type : champ libre +- Visibilité : publique +- Exemple : Une agréable randonnée familiale en boucle avec un beau point de vue sur la vallée de Réallon. + +**Ambiance [fr]** + +- Description : attractions principales et intérêts +- Type : champ libre +- Visibilité : publique +- Exemple : La montée commence dans la fraîcheur d'un bois de hêtre puis d'une belle forêt de mélèzes avant d'arriver à d'anciens près de fauche, témoignage des activités passées. Les ruines d'anciens chalets d'alpage rappellent ce qu'était la vie en montagne. Quand le sentier passe en balcon le paysage s'ouvre en un large point de vue sur la vallée de Réallon. + +**Description [fr]** + +- Description : description technique pas à pas de l'itinéraire (liste numérotée conseillée) +- Type : champ libre +- Visibilité : publique +- Exemple : Du parking, traverser le pont, au carrefour du hameau prendre la direction de Chargès, remonter la rue jusqu'à la dernière maison. + +1. Prendre le sentier à droite direction l'Oussella +2. Après la marmite de Géant et le pont, continuer à gauche direction l'Oussella. + +Avancé +~~~~~~ + +**Parking conseillé [fr]** + +- Description : nom du lieu recommandé pour se garer en voiture +- Type : champ libre +- Visibilité : publique +- Exemple : Parking du refuge de les Caussis. + +**Transport en commun [fr]** + +- Description : indications du ou des transports en commun pour se rendre au départ +- Type : champ libre +- Visibilité : publique +- Exemple : Ce GR est accessible en train, il démarre de la gare SNCF de Boussenac (ligne Seix - Boussenac). + +**Recommandations [fr]** + +- Description : recommandations sur les risques, danger ou meilleure période pour pratiquer l'itinéraire +- Type : champ libre +- Visibilité : publique +- Exemple : Attention en cas d'orage. Fortement déconseillé par mauvais temps! + +**Matériel [fr]** + +- Description : matériel nécessaire ou conseillé +- Type : champ libre +- Visibilité : publique +- Exemple : Chaussures de randonnées + +**Thèmes** + +- Description : thématiques principales de l'itinéraire +- Type : liste déroulante +- Choix : multiple +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/common/theme/ `_ +- Visibilité : publique +- Exemple : Lacs et glaciers, Géologie, Point de vue + +**Étiquettes** + +- Description : éléments de recommandation ou utiles à connaître +- Type : liste déroulante +- Choix : multiple +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/common/label/ `_ +- Visibilité : publique +- Exemple : Chien autorisé + +**Réseaux** + +- Description : nom du réseau de balisage de l'itinéraire +- Type : liste déroulante +- Choix : multiple +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/core/network/ `_ +- Visibilité : publique +- Exemple : GR + +**Liens web** + +- Description : liens web apportant des compléments d'informations utiles +- Type : liste déroulante +- Choix : multiple +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/trekking/weblink/ `_ +- Visibilité : publique +- Exemple : `Consulter la météo locale de Boussenac `_ + +**Lieux de renseignement** + +- Description : lieux de renseignements utiles +- Type : liste déroulante +- Choix : multiple +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/tourism/informationdesk/ `_ +- Visibilité : publique +- Exemple : Office de tourisme de Seix, Office du tourisme de Boussenac + +**Source** + +- Description : nom de l'organisme auteur de l'itinéraire +- Type : liste déroulante +- Choix : multiple +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/common/recordsource/ `_ +- Visibilité : publique +- Exemple : Conseil départemental de l'Ariège + +**Portail** + +- Description : site web grand public sur lequel sera publié l'itinéraire +- Type : liste déroulante +- Choix : multiple +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/common/targetportal/ `_ +- Visibilité : publique +- Exemple : CD09 + +**Enfants** + +- Description : ensemble des itinéraires étapes constituant l'itinérance +- Type : liste déroulante +- Choix : multiple +- Visibilité : publique +- Exemple : Etape GR09 Refuge les Caussis-Étang Rond, Etape GR09 Étang Rond-Refuge les Caussis. + +**ID externe** + +- Description : identifiant de l'itinéraire dans sa base de données source (dans le cas d'un import) +- Type : numérique +- Visibilité : interne +- Exemple : 15715 + +**Deuxième id externe** + +- Description : identifiant secondaire de l'itinéraire dans sa base de données source (dans le cas d'un import) +- Type : numérique +- Visibilité : interne +- Exemple : 15716 + +**Système de réservation** + +- Description : nom du système de réservation +- Type : liste déroulante +- Choix : unique +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/common/reservationsystem/ `_ +- Visibilité : publique +- Exemple : Open system + +**ID de réservation** + +- Description : identifiant de l'itinéraire dans son système de réservation +- Type : numérique +- Visibilité : interne +- Exemple : 157187456 + +**POI exclus** + +- Description : liste des points d'intérêt associés à l'itinéraire à ne pas faire remonter sur celui-ci +- Type : liste déroulante +- Choix : multiple +- Visibilité : interne +- Exemple : les Estagnous + +Accessibilité +~~~~~~~~~~~~~~ + +**Type d'accessibilité** + +- Description : type d'accessibilité +- Type : liste déroulante +- Choix : multiple +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/trekking/accessibility/ `_ +- Visibilité : publique +- Exemple : Fauteuil roulant, poussette + +**Niveau d'accessibilité** + +- Description : niveau d'accessibilité +- Type : liste déroulante +- Choix : unique +- Valeurs de champ paramétrables dans l'outil d'administration : oui +- Chemin d'accès dans l'outil d'administration : `/admin/trekking/accessibilitylevel/ `_ +- Visibilité : publique +- Exemple : Débutant + +**Aménagements d'accessibilité [fr]** + +- Description : infrastructure d'accessibilité spécifique à disposition +- Type : champ libre +- Visibilité : publique +- Exemple : Rampes d'accès amovibles. + +**Pente accessibilité [fr]** + +- Description : description de la pente : supérieure à 10 % (Nécessite une assistance quand la pente est supérieure à 8%) +- Type : champ libre +- Visibilité : publique +- Exemple : Pente supérieure à 12%. + +**Revêtement accessibilité [fr]** + +- Description : description des revêtements rencontrés sur la totalité d’un itinéraire +- Type : liste déroulante +- Visibilité : publique +- Exemple : Piste ensablée à partir des Estagnous. + +**Exposition accessibilité [fr]** + +- Description : description des expositions et des zones ombragées +- Type : champ libre +- Visibilité : publique +- Exemple : Piste ombragée. + +**Largeur accessibilité [fr]** + +- Description : description des rétrécissements des sentiers et la largueur minimum +- Type : champ libre +- Visibilité : publique +- Exemple : Sentier étroit demandant une forte technique de conduite, avec un passage d'un mètre de large. Passage resserré sur le pont traversant la rivière. + +**Conseil d'accessibilité [fr]** + +- Description : éléments particuliers permettant d’apprécier le contexte de l’itinéraire pour les PMR (conseils, passages délicats, etc.) +- Type : liste déroulante +- Visibilité : publique +- Exemple : La montée du Saut du Laire, particulièrement les 150 derniers mètres, sont déconseillés aux joëlettes, notamment dans la perspective du retour en descente sur pavé pouvant être glissant. + +**Signalétique accessiiblité [fr]** + +- Description : description de taille, forme et couleurs des signalétiques d'accessibilité +- Type : liste déroulante +- Visibilité : publique +- Exemple : Panneau de signalisation PMR rampe d'accès amovible. + + +Itinérance +---------- + +Il est possible de créer des randonnées itinérantes (sur plusieurs jours) et d'y associer des étapes comme sur cet exemple : https://www.grand-tour-ecrins.fr/trek/937571-GR%C2%AE54---Tour-de-l-Oisans-et-des-Ecrins. + +Pour cela il faut créer un itinéraire parent (séjour itinérant complet) puis y associer des itinéraires enfants (étapes) de manière ordonnée, dans le champs `Enfants` présent dans l'onglet `Avancé` du formulaire itinéraire du séjour complet. + +Le séjour complet ainsi que chaque étape sont donc chacunes des randonnées comme les autres. La seule différence est que les étapes (itinéraires enfants) sont rattachées à l'itinéraire parent. + +Si vous ne souhaitez pas que les étapes soient affichées dans la page de Recherche de Geotrek-rando, il ne faut pas les publier. Il suffit alors de publier l'itinéraire parent, pour que toutes les étapes qui y sont rattachées apparaissent uniquement dans sa fiche détail de Geotrek-rando. + +Points de référence +-------------------- + +Lorsqu'on localise un itinéraire, il est aussi possible de localiser le parking de la randonnée et de placer des points de référence numérotés sous forme de puces rouges sur la carte. + +Ces derniers servent à y faire référence dans le champs Description de l'itinéraire (Pas à pas) : + +.. image :: /images/user-manual/references-geotrek-rando.png + +Pour que des puces numérotées sous forme de pastilles rouges soient affichées dans la description, il suffit de les saisir en tant que Liste numérotées dans le champs Description : + +.. image :: /images/user-manual/references-geotrek-admin.png + +.. _points-d-interets-poi: + +Points d'intérêts (POI) +======================= + +Les POIs ne sont pas associés aux itinéraires par zone tampon, mais par segmentation dynamique, en fonction des tronçons communs de l'itinéraire et des POIs. + +Pour importer automatiquement des éléments de POIs, se référer à la section :ref:`Import POIs ` + +.. note:: + + Lorsque Geotrek est installé en mode "sans segmentation dynamique", les POI sont rattachés aux itinéraires par zone tampon (buffer). Dans ce cas le paramètre pris en compte est le paramètre :ref:`TREK_POI_INTERSECTION_MARGIN ` qui est paramétrable dans le custom.py. + +.. _services: + +Services +======== + +.. _contenus-touristiques: + +Contenus touristiques +===================== + +Zone tampon pour contenus à proximité +---------------------------------------- + +La taille de la zone tampon est fixée à 500m autour de l'itinéraire pour remonter les informations des contenus/évènements touristiques et services. + +Pour modifier la distance de la zone tampon (buffer), se référer à la section :ref:`Distances ` + +.. _evenements-touristiques: + +Évènements touristiques +======================= + +.. _signalements: + +Signalements +============ + +Pour configurer Suricate, se référer à cette section :ref:`Suricate support ` + +.. _zones-sensibles: + +Zones sensibles +=============== + +Ce module permet d’inventorier, de localiser des zonages réglementaires (de type sites Natura 2000, Arrêtés Préfectoraux de Protection de Biotope (APPB), sites classés, sites d'intérêt écologique) ou des surfaces liées à la présence d’une ou plusieurs espèces protégées ou patrimoniales. + +La saisie peut se faire sous forme de polygone ou de cercle pour les zones de sensibilité. Le diamètre du cercle est généré automatiquement selon la zone ou l’espèce, avec une valeur définie préalablement. + +Si une randonnée ou un site outdoor intersecte une ou plusieurs zones zones de sensibilité, alors celles-ci sont affichées à la suite des recommandations dans Geotrek-Rando. + +Il est également possible d’importer directement les zonages depuis un format Shapefile (SHP). + +Pour activer le module Zones sensibles, se référer à cette section :ref:`Sensitive areas ` + +.. _pleinenature: + +Activités outdoor +================== + +Par défaut, ce module est désactivé dans Geotrek. Pour activer le module Outdoor, se référer à cette section :ref:`Outdoor ` + +Sites et parcours +------------------ + +Geotrek-admin dédie deux modules aux activités outdoor : les sites et les parcours. Un site correspond à une zone ou à un réseau hydrographique à gérer et/ou à valoriser d'un seul tenant : site d'escalade, cours d'eau, zone de vol libre… + +Les sites peuvent être subdivisés en sous-sites (dits enfants), qui peuvent eux-mêmes être subdivisés en sous-sites : +secteurs d'escalade (groupe de blocs ou falaise), aires de décollage ou d'atterrissage… + +Chaque site (ou sous-site) peut contenir différents parcours : voie d'escalade, parcours d'eau vive… + +Il est possible de regrouper un enchaînement de parcours sous forme d'un parcours particulier appelé itinérance : +grande voie d'escalade, enchainement entre différentes pratiques… + +Les deux modules outdoor permettent de : + +- **Lister, filtrer, créer, modifier et exporter des sites et des parcours outdoor** de manière générique pour gérer tout type de pratiques (escalade, alpinisme, via ferrata, canyoning, kayak, vol libre, plongée...) +- **Ajouter les pratiques** que l'on souhaite de manière générique, et de définir leurs propres types et leurs propres niveaux et valeurs de cotation +- **Lier des sites entre eux** de manière hiérarchisée, pour avoir des sites, des sous-sites, des sous-sous-sites... Par exemple pour un site global avec différentes pratiques, pour un site d'escalade avec des secteurs, des sous-secteurs... +- **Agréger des informations au niveau d'un site**, en fonction des sous-sites qui lui sont rattachés. Par exemple les pratiques d'un grand site outdoor sont l'agrégation des pratiques des sous-sites qui le composent +- **Lier des parcours à des sites** et leur appliquer une cotation en fonction de la pratique du site auquel ils sont rattachés +- **Lier des parcours entre eux pour faire de l'itinérance** avec une fiche mère et des fiches enfants (étapes), comme c'est déjà la cas pour les itinéraires +- **Associer des aménagements aux sites** (parking, toilettes, banc...) automatiquement par intersection géographique +- **Associer des interventions à des sites ou parcours**, automatiquement par intersection géographique, ou explicitement en passant par le site ou le parcours sur lequel l'intervention a été réalisée +- **Associer des POI à un site ou parcours**, automatiquement par intersection géographique +- **Associer des accès au site**, automatiquement par intersection géographique des itinéraires à proximité + +Pour activer le module Outdoor, se référer à la section :ref:`Outdoor ` + +Arborescence +~~~~~~~~~~~~~ + +Les fiches détail des sites et des parcours présentent les liens entre eux sous forme d'une arborescence. Pour ne pas surcharger, +tous les éléments ne sont pas repris, mais uniquement : + +- le site/parcours courant, +- le site auquel il appartient (parent), ainsi que le grand-parent, etc. jusqu'à remonter au plus haut niveau, +- Les sites et parcours "frères", ayant le même site parent. +- les différents sous-sites et/ou parcours enfants. + +Des liens permettent d'ajouter des sites ou parcours en les positionnant directement dans l'arborescence. + +Nomenclatures +-------------- + +Via l'interface de configuration de Geotrek-Admin, il est possible de modifier les nomenclatures. + +* **Filières** : elles servent à regrouper les pratiques pour pouvoir filtrer rapidement les sites ou parcours. + Par exemple la filière « eau vive » peut regrouper « kayak » et « canyoning ». +* **Pratiques** : les pratiques sportives. Vous pouvez préciser à quelle filière elle appartient. +* **Types de sites** : ces catégories permettent d'étiqueter et de filtrer les sites. Elles sont spécifiques à chaque pratique. + Par exemple « Site école » pour l'escalade. +* **Échelle de cotation** : permet de regrouper les cotations faisant partie de la même échelle. Elles sont spécifiques à chaque pratique. + +Filières +--------- + +Escalade +~~~~~~~~~ + +La notion de site est naturelle. Elle peut être définie géographiquement par un polygone. +Il est possible (mais pas obligatoire) de créer des sous-sites pour représenter des secteurs. +Ou pour des falaises, elles-mêmes divisées en sous-sous sites pour les différents secteurs. + +Chaque voie correspond à un parcours. La voie étant verticale et la carte horizontale, +le plus pertinent est de définir géographiquement la voie par un simple point. +Une grande voie peut être décrite simplement par un parcours mais, pour plus de détails, +il est également possible de créer autant de parcours que de longueurs dans la grande voie. +Lors de la saisie de la grande voie, il faudra préciser les différentes longueurs dans le champ « Enfants », dans le bon ordre. +Le nom de chaque longueur pourra reprendre le nom de la voie suffixé par « longueur 1 », « longueur 2 », etc. + +Vol libre +~~~~~~~~~ + +La zone de vol n'est pas définie géographiquement de manière précise mais fait quand même l'objet d'un site avec un nom +(ex: « massif de … ») et un polygone approximatif ou bien un point (de préférence celui de départ). Cela n'a pas une importance +déterminante. Ce qui compte c'est 1) de rendre cela lisible sur une carte et 2) d'être cohérent entre les différents sites. + +Pour chaque zone de vol, les différentes aires de décollage et d'atterrissage sont définies à l'aide de sous-sites. +Afin de les identifier, il faut créer les types de site « Aire de décollage » et « Aire d'atterrissage » pour la catégorie +« Vol libre » dans la nomenclature et associer ces types aux aires. +Comme le vol est libre, il n'est pas nécessaire de définir des parcours. Cependant, il est possible d'en définir pour donner +des exemples de trajectoires. + +Eau vive +~~~~~~~~~ + +Le site est généralement constitué par une rivière ou une portion de rivière. Il est possible d'y adjoindre des affluents. +La géométrie du site est donc un linéraire correspondant à un réseau hydrographique. + +Les aires d'embarquement/débarquement sont définies par des sous-sites. Leur géométrie peut être définie sous forme d'un point +ou d'un polygone. +Les parcours sont automatiquement attachés à une aire d'embarquement et une aire de débarquement qui sont les aires les plus +proches respectivement du début et de la fin du parcours. diff --git a/docs/usage/treks.rst b/docs/usage/treks.rst deleted file mode 100644 index 5392a9357b..0000000000 --- a/docs/usage/treks.rst +++ /dev/null @@ -1,46 +0,0 @@ -========================= -Valorisation des sentiers -========================= - -.. todo:: - - Détailler le fonctionnement des modules de valorisation (itinéraires, POI, contenus et évenements touristiques, services, signalement et zones de sensibilité). - -Itinérance -========== - -Il est possible de créer des randonnées itinérantes (sur plusieurs jours) et d'y associer des étapes comme sur cet exemple : https://www.grand-tour-ecrins.fr/trek/937571-GR%C2%AE54---Tour-de-l-Oisans-et-des-Ecrins. - -Pour cela il faut créer un itinéraire parent (séjour itinérant complet) puis y ajouter des itinéraires enfants (étapes) de manière ordonnée, dans le champs `Enfants` présent dans l'onglet `Avancé` du formulaire itinéraire du séjour complet. - -Le séjour complet ainsi que chaque étape sont donc chacunes des randonnées comme les autres. La seule différence est que les étapes (itinéraires enfants) sont rattachées à l'itinéraire parent. - -Si vous ne souhaitez pas que les étapes soient affichées dans la page de Recherche de Geotrek-rando, il ne faut pas les publier. Il suffit alors de publier l'itinéraire parent, pour que toutes les étapes qui y sont rattachées apparaissent uniquement dans sa fiche détail de Geotrek-rando. - -Points de référence -===================== - -Lorsque l'on localise un itinéraire, il est aussi possible de localiser le parking de la randonnée et de placer des points de référence numérotées sous forme de puces rouges sur la carte. - -Ces derniers servent à y faire référence dans le champs Description de l'itinéraire (Pas à pas) : - -.. image :: /images/user-manual/references-geotrek-rando.jpg - -Pour que des puces numérotées sous forme de pastilles rouges soient affichées dans la description, il suffit de les saisir en tant que Liste numérotées dans le champs Description : - -.. image :: /images/user-manual/references-geotrek-admin.jpg - -Ordre des catégories -==================== - -Dans le portail Geotrek-rando, les différents types de contenus sont éclatés en catégories. - -Pour définir leur ordre d'affichage, il est possible de le définir dans la base de données pour certains contenus (ordre des pratiques et des catégories de contenus touristiques) en renseignant leur champs ``ordre`` depuis l'Adminsite de Geotrek-admin. - -Pour l'ordre d'affichage des catégorie Randonnées, Itinérance et Evènements touristiques, il est possible de modifier les valeurs par défaut définies dans le fichier ``geotrek/settings/base.py`` en surcouchant les paramètres correspondant dans le fichier de configuration avancée ``geotrek/settings/custom.py`` : - -- ``TREK_CATEGORY_ORDER = 1`` -- ``ITINERANCY_CATEGORY_ORDER = 2`` -- ``TOURISTIC_EVENT_CATEGORY_ORDER = 99`` - -Il est aussi possible d'éclater les randonnées pour que chaque pratique soit une catégorie en surcouchant le paramètre ``SPLIT_TREKS_CATEGORIES_BY_PRACTICE = False``, d'éclater les types d'accessibilité en catégories avec le paramètre ``SPLIT_TREKS_CATEGORIES_BY_ACCESSIBILITY = False`` et de séparer les randonnées itinérantes dans une catégorie avec le paramètre ``SPLIT_TREKS_CATEGORIES_BY_ITINERANCY = False``. diff --git a/docs/usage/qgis.rst b/docs/usage/tutorials.rst similarity index 66% rename from docs/usage/qgis.rst rename to docs/usage/tutorials.rst index 51abfb5ea4..f68d48de50 100644 --- a/docs/usage/qgis.rst +++ b/docs/usage/tutorials.rst @@ -1,11 +1,56 @@ -================================ +========== +Tutoriels +========== + +.. contents:: + :local: + :depth: 2 + +Vidéos +======= + +( **In French** ) + +* `Présentation de l'interface `_ : + +.. image:: https://img.youtube.com/vi/-iVe9cwBZ50/maxresdefault.jpg + :alt: Présentation de l'interface + :target: https://www.youtube.com/watch?v=-iVe9cwBZ50 + +* `Création d'un itinéraire `_ : + +.. image:: https://img.youtube.com/vi/d37WixqDs6c/maxresdefault.jpg + :alt: Création d'un itinéraire + :target: https://www.youtube.com/watch?v=d37WixqDs6c + +* `Création d'un POI `_ : + +.. image:: https://img.youtube.com/vi/PRY8y7y8WxM/maxresdefault.jpg + :alt: Création d'un POI + :target: https://www.youtube.com/watch?v=PRY8y7y8WxM + +* `Ajout de photos `_ : + +.. image:: https://img.youtube.com/vi/n96O09284ao/maxresdefault.jpg + :alt: Ajout de photos + :target: https://www.youtube.com/watch?v=n96O09284ao + +* `Administration `_ : + +.. image:: https://img.youtube.com/vi/P106bQCRZKk/maxresdefault.jpg + :alt: Administration + :target: https://www.youtube.com/watch?v=P106bQCRZKk + +.. _visualiser-les-donnees-dans-qgis: + Visualiser les données dans QGIS -================================ +================================= + .. image :: ../images/qgis/Qgis_projet.png Création de vues SQL pour afficher des couches dans QGIS -======================================================== +--------------------------------------------------------- Des vues SQL ont été créées dans la base de données PostgreSQL de Geotrek-admin dans le but de les afficher dans QGIS ou autre (https://makina-corpus.com/django/creer-vues-sql-django-et-afficher-dans-un-sig). Ces vues contiennent les informations essentielles que l'on retrouve dans Geotrek-admin au niveau de chaque module. @@ -14,30 +59,32 @@ Ces vues sont consultables en lecture seule dans QGIS sous forme de couche SIG. Les modifications se font directement dans Geotrek-admin pour chaque projet, et elles sont répercutées instantanément dans les vues SQL. Créer une connexion à la base de données PostgreSQL du projet -============================================================= +------------------------------------------------------------- 1. Ouvrir le logiciel QGIS 2. Créer une nouvelle connexion de base de données PostgreSQL * Dans l'Explorateur > PostgreSQL > Nouvelle connexion * Renseigner les informations suivantes : - * Nom de la connexion - * Hôte - * Port - * Base de données - * SSL mode : permet - * Nom d’utilisateur - * Mot de passe + + * Nom de la connexion + * Hôte + * Port + * Base de données + * SSL mode : permet + * Nom d’utilisateur + * Mot de passe + * Cliquer sur « Tester la connexion » * Si la connexion est réussi, cliquer sur OK pour enregistrer la connexion .. image :: ../images/qgis/Connexion_bdd.png Créer un projet QGIS à partir des vues SQL -========================================== +------------------------------------------ Afficher une vue SQL sous forme de couche ------------------------------------------ +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Dans l'Explorateur > PostgreSQL > Ouvrir la connexion précédemment créé > Schéma public * Ajouter les vues : Clic droit sur l'objet > Ajouter la couche au projet @@ -60,12 +107,12 @@ Afficher une vue SQL sous forme de couche * Parcours outdoor <> `v_outdoor_courses` Afficher un fond de plan OpenStreetMap --------------------------------------- +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Dans l'Explorateur > XYZ Tiles > OpenStreetMap Créer des groupes de couches ----------------------------- +~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Dans le panneau des couches > clic droit > Ajouter un groupe @@ -74,14 +121,14 @@ Il peut être utile de créer des groupes de couches dans le cas où certaines c .. image :: ../images/qgis/groupe_couches.png Changer le style d'une couche ------------------------------ +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Clic droit sur la couche > Propriétés > Symbologie Selon le type géométrique de la couche (point, ligne, polygone), il est possible de changer à volonté la couleur de remplissage, la couleur de contour, la taille ou l'épaisseur. Dimensionner les colonnes de la table attributaire --------------------------------------------------- +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ Le fait de dimensionner la taille des colonnes dans la table attributaire permet une permet lisibilité des noms de champs et des informations contenues à l'intérieur : @@ -91,12 +138,12 @@ Certains champs texte peuvent être très larges (exemple _Description_ dans la * Clic droit sur la couche > Ouvrir la Table d'Attributs > clic droit sur la colonne > Largeur > Entrer une largeur de colonne (exemple : 200) Afficher le décompte des entités d'une couche ---------------------------------------------- +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Clic droit sur la couche > Afficher le nombre d'entités Zoomer sur l'emprise d'une couche ---------------------------------- +~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ * Clic droit sur la couche > Zoomer sur la(les) couche(s) diff --git a/geotrek/static/images/favicon.png b/geotrek/static/images/favicon.png index 45cdea32af..18bfccad45 100644 Binary files a/geotrek/static/images/favicon.png and b/geotrek/static/images/favicon.png differ