diff options
Diffstat (limited to 'docs/fr')
20 files changed, 1765 insertions, 0 deletions
diff --git a/docs/fr/Makefile b/docs/fr/Makefile new file mode 100644 index 0000000..fcccf30 --- /dev/null +++ b/docs/fr/Makefile @@ -0,0 +1,130 @@ +# Makefile for Sphinx documentation +# + +# You can set these variables from the command line. +SPHINXOPTS = +SPHINXBUILD = sphinx-build +PAPER = +BUILDDIR = build + +# Internal variables. +PAPEROPT_a4 = -D latex_paper_size=a4 +PAPEROPT_letter = -D latex_paper_size=letter +ALLSPHINXOPTS = -d $(BUILDDIR)/doctrees $(PAPEROPT_$(PAPER)) $(SPHINXOPTS) . + +.PHONY: help clean html dirhtml singlehtml pickle json htmlhelp qthelp devhelp epub latex latexpdf text man changes linkcheck doctest + +help: + @echo "Please use \`make <target>' where <target> is one of" + @echo " html to make standalone HTML files" + @echo " dirhtml to make HTML files named index.html in directories" + @echo " singlehtml to make a single large HTML file" + @echo " pickle to make pickle files" + @echo " json to make JSON files" + @echo " htmlhelp to make HTML files and a HTML help project" + @echo " qthelp to make HTML files and a qthelp project" + @echo " devhelp to make HTML files and a Devhelp project" + @echo " epub to make an epub" + @echo " latex to make LaTeX files, you can set PAPER=a4 or PAPER=letter" + @echo " latexpdf to make LaTeX files and run them through pdflatex" + @echo " text to make text files" + @echo " man to make manual pages" + @echo " changes to make an overview of all changed/added/deprecated items" + @echo " linkcheck to check all external links for integrity" + @echo " doctest to run all doctests embedded in the documentation (if enabled)" + +clean: + -rm -rf $(BUILDDIR)/* + +html: + $(SPHINXBUILD) -b html $(ALLSPHINXOPTS) $(BUILDDIR)/html + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/html." + +dirhtml: + $(SPHINXBUILD) -b dirhtml $(ALLSPHINXOPTS) $(BUILDDIR)/dirhtml + @echo + @echo "Build finished. The HTML pages are in $(BUILDDIR)/dirhtml." + +singlehtml: + $(SPHINXBUILD) -b singlehtml $(ALLSPHINXOPTS) $(BUILDDIR)/singlehtml + @echo + @echo "Build finished. The HTML page is in $(BUILDDIR)/singlehtml." + +pickle: + $(SPHINXBUILD) -b pickle $(ALLSPHINXOPTS) $(BUILDDIR)/pickle + @echo + @echo "Build finished; now you can process the pickle files." + +json: + $(SPHINXBUILD) -b json $(ALLSPHINXOPTS) $(BUILDDIR)/json + @echo + @echo "Build finished; now you can process the JSON files." + +htmlhelp: + $(SPHINXBUILD) -b htmlhelp $(ALLSPHINXOPTS) $(BUILDDIR)/htmlhelp + @echo + @echo "Build finished; now you can run HTML Help Workshop with the" \ + ".hhp project file in $(BUILDDIR)/htmlhelp." + +qthelp: + $(SPHINXBUILD) -b qthelp $(ALLSPHINXOPTS) $(BUILDDIR)/qthelp + @echo + @echo "Build finished; now you can run "qcollectiongenerator" with the" \ + ".qhcp project file in $(BUILDDIR)/qthelp, like this:" + @echo "# qcollectiongenerator $(BUILDDIR)/qthelp/Chimre.qhcp" + @echo "To view the help file:" + @echo "# assistant -collectionFile $(BUILDDIR)/qthelp/Chimre.qhc" + +devhelp: + $(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp + @echo + @echo "Build finished." + @echo "To view the help file:" + @echo "# mkdir -p $$HOME/.local/share/devhelp/Chimre" + @echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/Chimre" + @echo "# devhelp" + +epub: + $(SPHINXBUILD) -b epub $(ALLSPHINXOPTS) $(BUILDDIR)/epub + @echo + @echo "Build finished. The epub file is in $(BUILDDIR)/epub." + +latex: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo + @echo "Build finished; the LaTeX files are in $(BUILDDIR)/latex." + @echo "Run \`make' in that directory to run these through (pdf)latex" \ + "(use \`make latexpdf' here to do that automatically)." + +latexpdf: + $(SPHINXBUILD) -b latex $(ALLSPHINXOPTS) $(BUILDDIR)/latex + @echo "Running LaTeX files through pdflatex..." + $(MAKE) -C $(BUILDDIR)/latex all-pdf + @echo "pdflatex finished; the PDF files are in $(BUILDDIR)/latex." + +text: + $(SPHINXBUILD) -b text $(ALLSPHINXOPTS) $(BUILDDIR)/text + @echo + @echo "Build finished. The text files are in $(BUILDDIR)/text." + +man: + $(SPHINXBUILD) -b man $(ALLSPHINXOPTS) $(BUILDDIR)/man + @echo + @echo "Build finished. The manual pages are in $(BUILDDIR)/man." + +changes: + $(SPHINXBUILD) -b changes $(ALLSPHINXOPTS) $(BUILDDIR)/changes + @echo + @echo "The overview file is in $(BUILDDIR)/changes." + +linkcheck: + $(SPHINXBUILD) -b linkcheck $(ALLSPHINXOPTS) $(BUILDDIR)/linkcheck + @echo + @echo "Link check complete; look for any errors in the above output " \ + "or in $(BUILDDIR)/linkcheck/output.txt." + +doctest: + $(SPHINXBUILD) -b doctest $(ALLSPHINXOPTS) $(BUILDDIR)/doctest + @echo "Testing of doctests in the sources finished, look at the " \ + "results in $(BUILDDIR)/doctest/output.txt." diff --git a/docs/fr/administration.rst b/docs/fr/administration.rst new file mode 100644 index 0000000..8fcf41a --- /dev/null +++ b/docs/fr/administration.rst @@ -0,0 +1,241 @@ +.. -*- coding: utf-8 -*- +.. _administration: + +============== +Administration +============== + +:Auteur: Étienne Loks +:date: 2012-11-29 +:Copyright: CC-BY 3.0 + +Ce document présente l'administration de Chimère. +Il a été mis à jour pour la version 2.0.0 de Chimère. + +Présentation des pages d'administration +--------------------------------------- + +Les pages d'administration sont accessibles à l'adresse : +http://where_is_your_chimere/admin/ + +N'oubliez pas la barre oblique (slash) à la fin de l'adresse. + +Identification +************** + +Tout d'abord vous avez à vous identifier avec l'identifiant et le mot de +passe fournis. + +.. image:: static/chimere_admin_00.png + + +Page principale +*************** + +Une fois identifié, vous avez accès à la page principale d'administration. + +Cela s'affiche ainsi : + +.. image:: static/chimere_admin_01.png + +#. lien vers cette **Documentation**, vers le formulaire de **Changement de mot + de passe** et la déconnexion ; +#. la liste des actions récemment faites avec ce compte ; +#. un titre d'application, la plupart des actions vont se faire dans + l'application **Chimere** ; +#. un élément à l'intérieur de l'application. Depuis ces pages, vous pouvez + *Ajouter* un nouvel élément ou consulter/**Changer** des éléments. Le lien + **Ajouter** conduit au `Formulaire des éléments`_. Le lien **Modifier** + conduit à la `Liste des éléments`_. La `Liste des éléments`_ est également + disponible en cliquant sur le libellé de l'élément. + + +Liste des éléments +****************** + +.. image:: static/chimere_admin_02.png + +#. chemin dans le site d'administration. C'est un raccourci pratique pour + revenir à la page principale. +#. lien pour créer un nouvel élément depuis la liste des éléments. +#. recherche des éléments par mot (n'est pas disponible pour tous les types + d'éléments). +#. cette boite permet de filtrer les entrées actuelles avec des filtres (n'est + pas disponible pour tous les types d'éléments) +#. les en-têtes de cette table sont cliquables. Cliquer sur une en-tête permet + de trier les éléments de manière ascendante et descendante. Un tri multi-en-tête + est possible (le nombre à droite de l'en-tête indique l'ordre de prise en + compte dans le tri). +#. chaque élément peut être coché (pour lui appliquer une action) ou sélectionné + (en cliquant sur la première colonne) pour voir son détail et éventuellement + le modifier ou le supprimer. + +Formulaire des éléments +*********************** + +.. image:: static/chimere_admin_03.png + +#. les champs pour l'élément sélectionné (ou vide si c'est un nouvel élément) + sont affichés dans ce formulaire. Parfois certains champs sont en lecture + seule et d'autres sont cachés. Les champs obligatoires ont leur intitulé en + gras. Les changements sur ces champs ne sont effectifs qu'une fois le + formulaire validé. +#. pour certains éléments il y a des sous-éléments associés. Ces sous-éléments + peuvent être modifiés directement dans ce formulaire. Lorsque plusieurs + sous-éléments sont associés à un élément, ils peuvent être réagencés par + glisser-déposer. +#. le formulaire doit être validé par un de ces boutons. Ils parlent d'eux-même. + +États +***** + +Les *États* sont des propriétés rattachées à chaque élément géographique dans +Chimère. Pour administrer Chimère efficacement il est nécessaire de comprendre +chacun de ces états. + +- **Proposé**: État d'un élément nouvellement proposé par un utilisateur. Cet + élément n'est pas visible sur la carte. +- **Disponible**: État d'un élément visible sur la carte. +- **Désactivé**: État d'un élément écarté. +- **Modifié**: État d'une proposition de modification d'un élément par un + utilisateur. +- **Importé**: État d'un élément nouvellement importé. Les opérations d'import + et d'export nécessitent que tous les éléments avec l'état *importé* soient + traités (validés, désactivés ou supprimés). + + +Gestion des nouvelles +--------------------- + +Un système de nouvelles est disponible. +Tout ce que vous avez à faire est de cliquer sur le bouton *Ajouter* à côté de +*Nouvelles*. +Pour chaque nouvelle il est nécessaire de fournir un nom et un contenu. Le +contenu peut contenir des balises HTML. +La disponibilité est gérée avec une case à cocher. + +Création de catégories/sous-catégories +-------------------------------------- + +Avant l'ajout de catégories, il est nécessaire de définir des icônes. Ces icônes +apparaissent sur la carte et sur la boîte contenant les catégories sur la carte +principale. +Faites attention de bien redimensionner vos icônes. En effet les icônes vont +être présentées à leur taille réelle sur la carte. +Pour ajouter des icônes : cliquez sur le bouton **Ajout** à côté de *Icônes*. + +Le site http://mapicons.nicolasmollet.com/ permet de générer facilement des +icônes adaptées à un usage dans Chimère. + +Les catégories sont en fait des conteneurs à sous-catégories. Il est juste +nécessaire de fournir nom et ordre d'affichage. +Pour ajouter des catégories : cliquez sur le bouton **Ajout** près des +catégories. + +Les champs concernant les sous-catégories sont : un nom, une icône, un ordre, +un thème de couleur et un type d'élément. +La plupart des champs parlent d'eux-mêmes. +Les thèmes de couleurs sont composés de plusieurs couleurs. +Les couleurs sont utilisées pour le tracé des trajets (si la sous-catégorie +contient des trajets). Si c'est une couleur de base, cela peut être défini +par le nom en anglais (par exemple *red* pour rouge, *blue* pour bleu, +*purple* pour violet) sinon vous pouvez donner le code couleur HTML RVB +(par exemple *#9227c9*). +Le type d'élément est le type d'élément que la sous-catégorie peut contenir : +points d'intérêts, trajets ou les deux. + +.. _geographic-items-management: + +Édition/modération des éléments +------------------------------- + +L'étape de modération est relativement simple. Elle fonctionne de la même +manière avec les points d'intérêt ou avec les trajets. +Le modérateur accède classiquement aux points d'intérêts (ou trajets) en +cliquant sur leur nom dans la liste d'éléments. + +Un champ de recherche est disponible pour rechercher par nom mais il est +généralement plus intéressant de filtrer par état et sous-catégories. + +Il y a un certain nombre d'action disponible. + +- **Supprimer** pour supprimer les éléments sélectionnés. Une étape de + confirmation est affichée. +- **Valider** pour donner le status *Disponible* aux éléments sélectionnés. +- **Désactiver** pour donner le status *Désactivé* aux éléments sélectionnés. + C'est particulièrement utile pour garder des éléments que vous ne voulez + pas voir apparaître sur la carte mais conserver en base de données. +- **Gérer les éléments modifiés** pour gérer les propositions de modification + par les utilisateurs sur le site principal (cf. :ref:`managing-modified`). + Les éléments modifiés ne peuvent être traités qu'un par un. +- **Export en...** pour exporter les éléments sélectionnés vers le format + sélectionné. + + +Pour modifier un élément, classiquement, vous cliquez sur son nom pour accéder +ensuite à un formulaire pour modifier librement l'élément. + +.. image:: static/chimere_admin_modify_item.png + +Sur ce formulaire il y a tous les éléments disponibles à l'utilisateur plus +quelques champs supplémentaires. + +- Les champs *Imports* ne sont pertinent que pour les données importées depuis + une source externe ou pour les données destinées à être exportées vers OSM + cf. à la :ref:`section import <importing>` de cette documentation. +- Les *Éléments associés* sont des champs en lecture seule qui listent les + éléments associés à l'élément courant (élément de référence d'une + modification, fichier associé à un trajet). + + +Les éléments multimédias sont listés à la fin du formulaire. Vous pouvez +librement ajouter, modifier, changer l'ordre (avec du glisser-déposer) de ces +éléments. + +Si un élément n'est pas pertinent, le bouton **Supprimer** permet de le +supprimer. + +.. Warning:: + N'oubliez pas de valider vis changements avec un des boutons d'enregistrement + disponibles à la fin du formulaire (notamment il est assez facile d'oublier + de confirmer les changements faits aux éléments multimédias). + +.. _managing-modified: + +Gérer les modifications des utilisateurs/les éléments importés ayant des modifications locales +---------------------------------------------------------------------------------------------- + +Des propositions de modification peuvent être faits sur le site principal par +les utilisateurs. + +Dans Chimère, une proposition de modification est un nouvel élément avec l'état +**Modifié** qui dispose d'un lien vers l'élément de référence. + +Vous pouvez avoir aussi des éléments importés qui ont à la fois des +modifications locales et sur la source externe. La nouvelle version de la source +externe a l'état **Importé** et un lien vers l'élément de référence. + +.. Note:: + Si vous êtes identifié en tant qu'administrateur et que vous faites des + changements sur la carte avec le « formulaire utilisateur » les changements + vont être directement pris en compte. + +Un formulaire spécifique a été développé pour faciliter le traitement de ces +éléments modifiés. + +Vous pouvez accéder à ce formulaire spécifique avec l'action *Gérer les éléments +modifiés*. + +.. image:: static/chimere_admin_modified_management.png + +Ce formulaire est un tableau à 3 colonnes. + +#. La première colonne affiche les informations de l'élément de référence. +#. La seconde colonne affiche les informations que propose l'utilisateur. +#. La troisième colonne est une liste de cases à cocher. Après validation, pour + chaque ligne cochée, la valeur de l'élément modifié remplacera la valeur de + l'élément de référence. + +.. Note:: + Pour rejeter toutes les modifications proposées, validez le formulaire sans + cocher aucune case. diff --git a/docs/fr/conf.py b/docs/fr/conf.py new file mode 100644 index 0000000..f1ad157 --- /dev/null +++ b/docs/fr/conf.py @@ -0,0 +1,216 @@ +# -*- coding: utf-8 -*- +# +# Chimère documentation build configuration file, created by +# sphinx-quickstart on Wed Feb 15 00:42:28 2012. +# +# 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. + +import sys, os + +# 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 = [] + +# Add any paths that contain templates here, relative to this directory. +templates_path = ['_templates'] + +# 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' + +# General information about the project. +project = u'Chimère' +copyright = u'2012, Étienne Loks' + +# The version info for the project you're documenting, acts as replacement for +# |version| and |release|, also used in various other places throughout the +# built documents. +# +# The short X.Y version. +version = '2.0' +# The full version, including alpha/beta/rc tags. +release = '2.0' + +# The language for content autogenerated by Sphinx. Refer to documentation +# for a list of supported languages. +language = 'fr' + +# 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 = 'default' + +# 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 +# "<project> v<release> documentation". +html_title = u"Documentation de Chimère" + +# 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 + +# 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 <link> 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 = 'Chimeredoc' + + +# -- Options for LaTeX output -------------------------------------------------- + +# The paper size ('letter' or 'a4'). +#latex_paper_size = 'letter' + +# The font size ('10pt', '11pt' or '12pt'). +#latex_font_size = '10pt' + +# Grouping the document tree into LaTeX files. List of tuples +# (source start file, target name, title, author, documentclass [howto/manual]). +latex_documents = [ + ('index', 'Chimere.tex', u'Documentation de Chimère', + u'Étienne Loks', '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 + +# Additional stuff for the LaTeX preamble. +#latex_preamble = '' + +# 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', 'chimere', u'Chimère Documentation', + [u'Étienne Loks'], 1) +] diff --git a/docs/fr/configuration.rst b/docs/fr/configuration.rst new file mode 100644 index 0000000..f419a0d --- /dev/null +++ b/docs/fr/configuration.rst @@ -0,0 +1,202 @@ +.. -*- coding: utf-8 -*- + +============= +Configuration +============= + +:Auteur: Étienne Loks +:date: 2012-11-29 +:Copyright: CC-BY 3.0 + +Ce document présente l'installation de Chimère. +Il a été mis à jour pour la version 2.0.0 de Chimère. + +Votre session doit être initialisée avec ces variables d'environnement +en ligne de commande : :: + + CHIMERE_PATH=/srv/chimere # changez avec votre répertoire d'installation + CHIMERE_LOCALNAME=mychimere # changez avec le nom de votre projet + CHIMERE_APP_PATH=$CHIMERE_PATH/$CHIMERE_LOCALNAME + + +Une fois l'application installée, il y a un certain nombre d'étapes à suivre +pour configurer *votre* Chimère. + +La plupart de ces étapes sont faites dans les pages web d'administration. + +Si vous n'êtes pas familiarisé avec les pages d'administration de *type +Django* vous pouvez dès maintenant regarder le premier paragraphe de +l':ref:`administration` où elles sont présentées. + +Pour accéder à ces pages vous avez à vous identifier avec un compte ayant +pour état *équipe* ou *super-utilisateur*. + +Un compte *super-utilisateur* est créé à l'initialisation de la base de données. + +Configurer le framework Sites +----------------------------- + +Le framework *Sites* vous permet de servir le contenu pour différents domaines +Internet. La plupart des installations serviront le contenu pour un seul domaine +mais ce domaine unique doit être configuré. + +Pour cela allez dans les pages web d'administration *Sites > Sites*. +Vous avez juste à changer *example.com* par votre nom de domaine. Si vous +oubliez de faire cela, quelques fonctionnalités comme les flux RSS ne +fonctionneront pas correctement. + +.. _managing-areas: + +Gérer les zones +--------------- + +Une zone est la base de votre carte. Pour une zone il est défini : + +* un nom : un libellé pour cette zone ; +* une URN associée (*facultatif*) : le nom de la zone en tant que ressource + Web. En pratique si la zone définie n'est pas celle par défaut, elle est + utilisée à la fin de l'adresse Web de base pour pouvoir accéder à cette zone. + Ce n'est pas obligatoire mais nécessaire en pratique pour chaque zone qui + n'est pas celle par défaut ; +* un message par défaut (*facultatif*) : ce message est affiché une fois par + jour par utilisateur consultant la carte ; +* un ordre (pour trier les zones) ; +* une disponibilité ; +* un état « *par défaut* ». La zone *par défaut* est vue par défaut. Une seul + zone peut être *par défaut* : activez cet état sur une zone le désactive sur + toutes les autres ; +* des catégories cochées par défaut (*facultatif*) ; +* si les catégories sont affichées dynamiquement. Si les catégories sont + affichées dynamiquement, l'utilisateur ne voit seulement que les catégories + qui ont des éléments sur la portion de carte actuellement à l'écran ; +* des restrictions sur les catégories (*facultatif*): si aucune restriction + n'est définie, toutes les catégories sont disponibles ; +* une feuille de style CSS externe (*facultatif*) : une adresse Web qui pointe + vers une feuille de style CSS externe ; +* une restriction à la portion de carte : si coché, l'utilisateur ne pourra + pas faire glisser la carte en dehors de la portion de carte. À cause de + limitations de la bibliothèque OpenLayers utilisée par Chimère, il n'y a pas + de restriction sur le zoom ; +* une portion de carte : c'est la zone qui sera affichée par défaut en arrivant + sur la carte. Si la restriction sur une portion de carte est activée, la + restriction portera sur cette portion. Laissez appuyée la touche *Control*, + cliquez et glissez pour dessiner la portion de carte choisie. +* calques disponibles (*facultatif* : OSM Mapnik est utilisé par défaut): les + rendus OSM Mapnik, OSM MapQuest, OSM Transport Map, OSM CycleMap sont + disponibles par défaut. Vous pouvez ajouter de nouveaux calques (cf. + :ref:`managing-layers`). + +Les *Zones* sont personnalisables directement depuis l'interface +d'administration dans *Chimere > Zones*. + +Comme il y a peu de chance que la zone définie par défaut vous convienne, il +sera au minimum nécessaire de définir une zone par défaut. + +Ajouter plusieurs zones peut être un moyen d'afficher vos données de différentes +manières. + +Gestion des utilisateurs +------------------------ + +Si vous n'êtes pas le seul administrateur/modérateur de cette installation de +Chimère vous aurez à créer et gérer des comptes pour les autres utilisateurs. + +Vous pouvez créer un nouvel administrateur en ligne de commande : :: + + ./manage.py createsuperuser + +Les mots de passe peuvent être changés en ligne de commande (utile si vous +avez oublié votre mot de passe) : :: + + ./manage.py changepassword username + +Les *Utilisateurs* sont directement éditables depuis les pages d'administration +au niveau de la section *Auth/Utilisateur*. + +Pour créer un nouveau compte, cliquez simplement sur le bouton *Ajouter* à côté +de *Utilisateur*. Donnez un nom et un mot de passe (l'utilisateur pourra changer +son mot de passe plus tard). + +Ensuite complétez les autres informations. + +Cochez la case : *Statut équipe* (ou cet utilisateur ne sera pas capable +d'accéder aux pages d'administration). + +Si ce compte est un nouvel administrateur technique, cochez la case *Statut +superutilisateur* (cet utilisateur doit être digne de confiance !). Sinon +vous allez devoir donner des permissions à ce nouvel utilisateur. Plutôt que +d'assigner manuellement des permissions aux utilisateurs, il est plus simple +de leur affecter un groupe avec des permissions pré-définies. + +Deux types de groupe sont proposés par défaut : les administrateurs de +l'application et les modérateurs. + +Les groupes de modérateurs ont des droits limités à une seule zone (le nom +du groupe est *Nom_de_zone modération*). Ils ne voient que les éléments +qui concernent leur zone. Un utilisateur pouvant faire partie de plusieurs +groupes, il peut modérer plusieurs zones. + + +Détails des droits pour les groupes par défaut : + ++------------------------------------------+--------------------------+---------------------------------+------------+ +| Élément (ajout/modification/suppression) | Administrateur technique | Administrateur de l'application | Modérateur | ++==========================================+==========================+=================================+============+ +| Utilisateur | Oui | Non | Non | ++------------------------------------------+--------------------------+---------------------------------+------------+ +| Groupe | Oui | Non | Non | ++------------------------------------------+--------------------------+---------------------------------+------------+ +| Modèle de propriété | Oui | Non | Non | ++------------------------------------------+--------------------------+---------------------------------+------------+ +| Import | Oui | Non | Non | ++------------------------------------------+--------------------------+---------------------------------+------------+ +| Calque | Oui | Non | Non | ++------------------------------------------+--------------------------+---------------------------------+------------+ +| Nouvelles | Oui | Oui | Non | ++------------------------------------------+--------------------------+---------------------------------+------------+ +| Zone | Oui | Oui | Non | ++------------------------------------------+--------------------------+---------------------------------+------------+ +| Icône | Oui | Oui | Non | ++------------------------------------------+--------------------------+---------------------------------+------------+ +| Couleurs/thème de couleur | Oui | Oui | Non | ++------------------------------------------+--------------------------+---------------------------------+------------+ +| Catégorie/Sous-catégorie | Oui | Oui | Non | ++------------------------------------------+--------------------------+---------------------------------+------------+ +| Point d'intérêt | Oui | Oui | Oui | ++------------------------------------------+--------------------------+---------------------------------+------------+ +| Trajet | Oui | Oui | Oui | ++------------------------------------------+--------------------------+---------------------------------+------------+ + + +Créer des modèles de propriété +------------------------------ + +Une installation de base de Chimère permet d'associer un nom, des catégories, +une description, des dates, des fichiers multimédias, des fichiers d'image +à chaque élément géographique. + +Vous souhaitez peut-être des champs personnalisés tels que des numéros de +téléphone ou des horaires d'ouverture. Pour cela, il suffit d'ajouter un nouveau +modèle de propriété (*Chimere/Modèle de propriété*). + +La page d'administration vous demande : + +* un nom ; +* un ordre (pour ordonner les propriétés entre elles) ; +* une disponibilité pour l'utilisateur (cela peut être utilisé pour associer + des propriétés cachées) ; +* un état « Obligatoire » qui oblige à remplir ce champ dans les formulaires ; +* les catégories auxquelles associer cette propriété (si aucune catégorie n'est + sélectionnée, la propriété est disponible pour toutes les categories) ; +* le type : texte, texte long, mot de passe ou date. + +.. Warning:: + Pour rendre cette propriété disponible, il est nécessaire de recharger le + serveur Web (les propriétés sont mis en cache). + +Les formulaires sont alors automatiquement mis à jour avec ce nouveau champ. + +En tant qu'administrateur, si vous ne souhaitez pas rendre disponible l'ajout +ou la modification des propriétés, vous pouvez désactiver la gestion des modèles +de propriété en mettant *CHIMERE_HIDE_PROPERTYMODEL* à la valeur *True* dans +votre fichier *local_settings.py*. diff --git a/docs/fr/customisation.rst b/docs/fr/customisation.rst new file mode 100644 index 0000000..016f9e4 --- /dev/null +++ b/docs/fr/customisation.rst @@ -0,0 +1,58 @@ +.. -*- coding: utf-8 -*- + +================ +Personnalisation +================ + +:Auteur: Étienne Loks +:date: 2012-11-29 +:Copyright: CC-BY 3.0 + +Ce document présente la personnalisation de Chimère. +Ce document a été mis à jour pour la version 2.0.0 de Chimère. + +.. _managing-layers: + +Gestion des calques +------------------- + +Il y a différents calques disponibles par défaut dans Chimère (OSM Mapnik, OSM +Mapquest, OSM Transport map, OSM Cyclemap). Vous pouvez ajouter d'autres calques +en utilisant les pages d'administration de Chimère. + +Le nouveau calque est défini en utilisant une chaîne de code Javascript adéquate +de la bibliothèque `Openlayers <http://openlayers.org/>`_. Ce code Javascript +doit être une instance de *Openlayers Layer*, sans point virgule final. + +Par exemple définir un calque Bing peut être fait avec un code de ce type : :: + + new OpenLayers.Layer.Bing({ + name: "Aerial", + key: "my-bing-API-key", + type: "Aerial"}) + + +Référez vous à la `documentation de l'API Openlayers +<http://dev.openlayers.org/releases/OpenLayers-2.12/doc/apidocs/files/OpenLayers-js.html>`_ +pour plus de détail. + + +Personnaliser l'agencement et le design +--------------------------------------- + +Si vous souhaitez simplement améliorer la feuille de style CSS, le plus simple +est d'ajouter un lien vers une feuille de style supplémentaire dans vos *Zones* +(cf. :ref:`managing-areas`). + +Si vous souhaitez faire des changements plus importants dans l'agencement et la +présentation, le projet *example_project* peut être personnalisé pour +correspondre à vos besoins. Chaque fichier de patron de page présent dans le +dossier *chimere/templates* peut être copié dans votre dossier +*monprojet/templates* puis modifié. + +Il est juste nécessaire de copier les fichiers que vous souhaitez modifier. +Ces fichiers sont écrits dans le langage de patron Django principalement composé +de HTML avec des éléments de logique. Référez vous à la `documentation des +patrons Django <https://docs.djangoproject.com/en/1.4/ref/templates/>`_ pour +plus de détails. + diff --git a/docs/fr/import_export.rst b/docs/fr/import_export.rst new file mode 100644 index 0000000..beca4e7 --- /dev/null +++ b/docs/fr/import_export.rst @@ -0,0 +1,268 @@ +.. -*- coding: utf-8 -*- + +============= +Import/export +============= + +:Author: Étienne Loks +:date: 2012-11-28 +:Copyright: CC-BY 3.0 + +Ce document présente les fonctions d'import et d'export de Chimère. +Ce document a été mis à jour pour la version 2.0.0 de Chimère. + +.. _importing: + +Import +------ + +Dans Chimère, le mécanisme d'import est basé sur les objets **Import**. Ces +objets sont stockés dans une base de données pour garder trace des imports et +pour faciliter la ré-importation depuis une même source. En fait, si cela est +possible, la mise à jour de données depuis un même type de source est gérée, de +préférence à une ré-importation. + +.. Note:: + La possibilité de réaliser de telles mises à jour est conditionnée à + l'existence d'un identifiant unique pour chaque objet de la source. + +Pour ajouter un objet **Import**, vous devez aller dans *Chimere > Imports* puis +cliquer sur **Ajouter**. + +Après cela, vous aurez à sélectionner votre type de source. Le formulaire +suivant dépend de ce type de source. + +Champs communs à tous les types de source +***************************************** + +- **Nom par défaut** : si aucun nom ne peut être trouvé dans la source pour ce + nouvel objet le nom par défaut sera utilisé. Si ce champ est vide le nom de + la catégorie associée sera utilisée. +- **SRID** : Chimère tente d'identifier automatiquement le système de coordonnées + utilisé par la source. Mais parfois l'information n'est pas présente ou ne + peut pas être devinée (par exemple un fichier Shapefile qui utilise un fichier + proj non standard). Dans ce cas, Chimère utilise WGS84 par défaut (latitude et + longitude). Si vous avez des problèmes avec la localisation des éléments vous + devez probablement mettre ici le `SRID <https://en.wikipedia.org/wiki/SRID>`_ + correspondant au système de coordonnées de votre source. +- **Écraser les données existantes** : par défaut quand les données ont été + mises à jour à la fois sur la source externe et sur votre source externe un + nouvel élément est créé et a à être rapproché avec le :ref:`formulaire de + gestion des modifications <managing-modified>`. Si vous ne souhaitez pas avoir + à faire ce rapprochement et alors écraser les données existantes avec les + données de la source externe, cochez cette option. +- **Origine** : si non nul, ce champ va être associé à chaque élément importé + afin d'identifier facilement d'où l'élément provient. Pour les imports OSM + la source est ajoutée automatiquement. +- **Licence** : si non nul, ce champ va être associé à chaque élément importé + afin d'identifier facilement la licence de l'élément. Pour les imports OSM + la licence est ajoutée automatiquement. +- **Sous-catégories (obligatoire)** : les sous-catégories sélectionnées seront + associées automatiquement aux nouveaux éléments importés. + + +Import KML +********** + +.. image:: static/chimere_admin_import_KML.png + + +- **Adresse Web / fichier source (obligatoire)** : votre fichier KML peut être + local ou distant. Vous avez à remplir un des deux champs. +- **Filtre**: si vous souhaitez importer seulement un dossier (**Folder**) du + fichier KML mettez son nom dans ce champ. +- **Fichier zippé**: si votre source est un fichier KMLZ (un fichier KML zippé), + cochez cette case. + +Import Shapefile +**************** + +.. image:: static/chimere_admin_import_shapefile.png + + +- **Adresse Web / fichier source (obligatoire)** : votre fichier shapefile peut + être local ou distant. Vous avez à remplir un des deux champs. +- **Fichier zippé**: seuls les fichiers shapefile zippés sont acceptés aussi + cette case devrait être cochée. + +Import GeoRSS +************* + +Simple GeoRSS et W3C GeoRSS sont gérés. + +.. image:: static/chimere_admin_import_georss.png + +- **Adresse Web (obligatoire)**: seul les flux GeoRSS distant sont gérés. + +Import CSV +********** + +Le format du fichier CSV (nombre et ordres des colonnes) géré par Chimère +varie en fonction des modèles de propriété que vous avez utilisé sur votre +instance Chimère. +Aussi, il est recommandé dans un premier temps de faire un export CSV de +quelques éléments. +Le format du fichier CSV exporté sera compatible avec Chimère pour l'import. + + +En tout cas à cause des champs géographiques ce format n'est pas très +pratique pour l'ajout de nouveau contenu mais peut s'avérer utile pour les +mises à jour d'information. + +.. Warning:: + Si vous souhaitez mettre à jour des données existantes avec cet import, à + moins que vous sachiez éditer du WKT ne modifiez **pas** la colonne qui + concerne la géométrie de l'élément. + +.. image:: static/chimere_admin_import_CSV.png + +- **Adresse Web/fichier source (obligatoire)** : votre fichier CSV peut être + distant ou local. Vous avez à remplir un des deux champs. + +.. _osm-import: + +Import OpenStreetMap +******************** + +.. image:: static/chimere_admin_import_OSM.png + +Pour importer depuis OSM, Chimère utilise l'API XAPI d'OSM. + +- **Adresse Web (obligatoire)**: l'URL XAPI à utiliser pour importer. Ce champ + doit être rempli par défaut. Par défaut le serveur MapQuest est utilisé car + il semble le plus robuste. Si vous avez des problèmes avec l'import de données + OSM, vérifiez la disponibilité du serveur utilisé et le cas échéant changez + le. +- **Filtre sur zone (obligatoire)**: dessinez la section de carte à utiliser + pour votre import OSM. +- **Filtre sur types (obligatoire)**: choisissez si vous souhaitez importer des + routes ou des nœuds. +- **Filtre sur les clé/valeur (obligatoire)**: choisissez la paire clé/valeur + à utiliser pour filtrer les données OSM. Un lien vers la `page de « Map + features » OSM <https://wiki.openstreetmap.org/wiki/Map_Features>`_ est + fourni pour vous aider à trouver les valeurs adaptées. +- **Bouton de rafraîchissement**: ce bouton convertit vos choix en arguments + XAPI adaptés. N'oubliez pas de presser sur ce bouton avant de valider le + formulaire. + +Importer +******** + +Une fois que le nouvel objet *Import* est créé, sélectionnez le dans la liste +des objets, choisissez *Importer* et valider. + +L'import doit se dérouler normalement. Dans le cas contraire, un message +d'erreur explicite doit s'afficher dans la colonne *État* de votre import. + +Vous pouvez aussi lancer vos imports en ligne de commande (idéal pour les +travaux à mettre dans la table *cron*). Dans le répertoire du projet, il est +juste nécessaire de lancer la commande :: + + ./manage.py chimere_import <import_id> + +- *import_id* est l'identifiant de l'import + +Si vous lancez l'import en ligne de commande sans l'identifiant d'import, la +liste des imports disponibles est affichée et vous pouvez alors en choisir un. + +.. _manage-imported-data: + +Gérer les données importées +*************************** + +Tous les nouveaux éléments importés ont l'état **Importé**. Pour que ceux-ci +soient disponible sur la carte, il est nécessaire de les valider. Si vous +ne souhaitez pas afficher certains éléments plutôt que de les supprimer, il est +recommandé de les mettre à l'état **Désactivé**. Ainsi lors de la prochaine +mise à jour depuis la source, ceux-ci resteront désactivés plutôt que +d'apparaître comme nouveaux éléments. + +.. Warning:: + Soyez vigilants avec les doublons entre les données existantes et les données + importées. C'est particulièrement important si vous souhaitez exporter vos + données vers OSM. + +Export +------ + +Exporter vers CSV/KML/Shapefile +******************************* + +Depuis les :ref:`listes d'éléments géographiques <geographic-items-management>` +vous pouvez exporter directement vers le format choisi. +Tout ce que vous avez à faire c'est de sélectionner les éléments que vous +souhaitez exporter, choisir l'action appropriée dans la liste d'action et de +valider. + +Vous pouvez aussi lancer les exports depuis la ligne de commande (idéal pour les +travaux à mettre dans la table *cron*). Dans le répertoire du projet, vous avez +juste à lancer :: + + ./manage.py chimere_export <subcategory_id> <CSV|KML|SHP> \ + <marker|route> <filename> + +- *subcategory_id* est l'identifiant de la sous-categorie choisie ; +- *CSV|KML|SHP* est le format choisi ; +- *marker|route* est pour obtenir points d'intérêts (marker) ou trajets + (route) ; +- *filename* est le nom du fichier de sortie + +Si vous lancez la commande sans arguments il vous sera demandé les choix à faire +pour votre export. + + +Exporter vers OSM +***************** + +.. Warning:: + Si vous n'êtes pas sûr de ce que vous êtes entrain de faire avec les exports + vers OSM : **ne le faites pas !** C'est vraiment important de ne pas + plaisanter avec les données des autres. + +.. Note:: + Seuls les exports des nœuds OSM sont gérés. + +Les exports ne sont pas aussi facile à gérer que les autres exports. Tout +d'abord (si cela n'est pas déjà fait) vous avez à définir un import OSM +(:ref:`regarder dessus <osm-import>` pour plus de détail). Cela permettra de +déterminer : + +- la zone géographique concernée par votre export ; +- la clé/valeur à ajouter à vos éléments (nouveaux ou mis à jour) ; +- les sous-catégories concernées par cet export. Si vous pensez que certains + éléments dans ces sous-catégories ne devraient pas être dans la base de + données OSM (car ils ne sont pas pertinents ou à cause de question de licence) + marquez les préalablement comme **À ne pas exporter vers OSM** dans les + *champs d'imports* des :ref:`formulaires concernant les éléments géographiques + <geographic-items-management>`. + + +L'export vers OSM dans Chimère est fait de sorte à être le plus +conservateur possible par rapport à la base de données OSM. C'est pour cela +qu'avant tout export, un import est fait. Si le nouvel import a des données +mises à jour, il est nécessaire de retraiter les nouvelles données importées +avant de faire un export (cf. :ref:`gérer les données importées +<manage-imported-data>`). + +Pour lancer un export sélectionnez l'objet *Import* approprié dans la liste +des imports. Ensuite sélectionnez l'action **Exporter vers OSM** et validez. +Puis on vous demande votre identifiant OSM, votre mot de passe OSM et l'API +que vous souhaitez utiliser. Si vous comptez faire des exports régulièrement +avec Chimère, il est recommandé de créer un compte spécifique pour cela. +L'API de test est disponible pour faire des tests d'export. Si vous souhaitez +utiliser l'API de test, vous aurez à créer un compte spécifique sur la +plateforme de test. + +.. Warning:: + Les données sur la plateforme de test ne sont pas synchronisées avec la + plateforme principale. Vous n'aurez pas les mêmes données que celles celles + importées avec XAPI. + +Une fois que tous ces champs sont remplis, vous pouvez (enfin !) lancer +l'export. + +Quand vous exportez, des couples clés/valeurs sont automatiquement ajoutés/mis à +jour dans la base de données OSM : + +- *name*: obtenu depuis le nom de l'élément dans Chimère ; +- *source*: pour identifier Chimère comme une source. diff --git a/docs/fr/index.rst b/docs/fr/index.rst new file mode 100644 index 0000000..dd9b1e7 --- /dev/null +++ b/docs/fr/index.rst @@ -0,0 +1,17 @@ +.. Chimère documentation master file, created by + sphinx-quickstart on Wed Feb 15 00:42:28 2012. + You can adapt this file completely to your liking, but it should at least + contain the root `toctree` directive. + +Bienvenue dans la documentation de Chimère ! +============================================ + +.. toctree:: + :maxdepth: 2 + + install + upgrade + configuration + administration + import_export + customisation diff --git a/docs/fr/install.rst b/docs/fr/install.rst new file mode 100644 index 0000000..841eae2 --- /dev/null +++ b/docs/fr/install.rst @@ -0,0 +1,299 @@ +.. -*- coding: utf-8 -*- + +============ +Installation +============ + +:Auteur: Étienne Loks +:date: 2012-11-28 +:Copyright: CC-BY 3.0 + +Ce document présente l'installation de Chimère. +Il a été mis à jour pour la version 2.0.0 de Chimère. + +Pré-requis +********** + + - `Apache <http://www.apache.org/>`_ version 2.x + - `Python <http://www.python.org/>`_ versions 2.6 ou 2.7 + - `Django <http://www.djangoproject.com/>`_ >= version 1.4 + - `South <http://south.aeracode.org/>`_ + - `Postgres <http://www.postgresql.org/>`_ >= version 8.x + - `Gettext <http://www.gnu.org/software/gettext/>`_ + - `Psycopg2 <http://freshmeat.net/projects/psycopg/>`_ + - `Python Imaging Library <http://www.pythonware.com/products/pil/>`_ + - `Pyexiv2 <http://tilloy.net/dev/pyexiv2/>`_ + - `Beautiful Soup <http://www.crummy.com/software/BeautifulSoup/>`_ + - python-simplejson + - python-gdal + - `Lxml <http://lxml.de/>`_ + - `Jquery <http://jquery.com/>`_ version 1.7.1 or better + - `Jquery-ui <http://jqueryui.com/>`_ + - `Universal Feed Parser <https://code.google.com/p/feedparser/>`_ + +geodjango fait partie de Django depuis la version 1.0 mais nécessite quelques +dépendances supplémentaires : + + - `geos <http://trac.osgeo.org/geos/>`_ 3.0.x + - `proj.4 <http://trac.osgeo.org/proj/>`_ 4.4 to 4.6 + - `posgis <http://postgis.refractions.net/>`_ versions 1.2.1 ou 1.3.x + - `gdal <http://www.gdal.org/>`_ + + +Optionnel (mais recommandé) : + + - `tinymce <http://tinymce.moxiecode.com/>`_ + - `gpsbabel <http://www.gpsbabel.org/>`_ + - django-celery pour une meilleure gestion des imports importants + +La manière la plus simple de satisfaire à ces pré-prequis est de les installer +par le biais des dépôts de votre distribution Linux préférée. Par exemple +pour Debian Wheezy : :: + + apt-get install apache2 python python-django python-django-south \ + postgresql-9.1 gettext python-psycopg2 python-imaging \ + python-pyexiv2 python-beautifulsoup python-simplejson python-gdal \ + python-lxml libjs-jquery libjs-jquery-ui python-feedparser \ + libgeos-3.3.3 proj-bin postgresql-9.1-postgis gdal-bin \ + tinymce gpsbabel python-django-celery javascript-common + +Pour Debian Squeeze (il est nécessaire d'activer les backports) : :: + + apt-get install -t squeeze-backports python-django libjs-jquery + + apt-get install apache2 python python-django python-django-south \ + postgresql-8.4 gettext python-psycopg2 python-imaging \ + python-pyexiv2 python-beautifulsoup python-simplejson python-gdal \ + python-lxml libjs-jquery libjs-jquery-ui python-feedparser \ + libgeos-3.2.0 proj-bin postgresql-8.4-postgis gdal-bin \ + tinymce gpsbabel javascript-common + +Le paquet *python-django-celery* n'existe pas pour Debian Squeeze. + +Si ces paquets n'ont pas d'équivalents dans les dépôts de votre distribution +Linux, référez-vous aux sites web de ces applications. + +Configuration de la base de données +*********************************** + +Maintenant que postgres et postgis sont installés, vous avez besoin de créer +un nouvel utilisateur pour Chimère : :: + + su postgres + createuser --echo --adduser --createdb --encrypted --pwprompt chimere-user + +Ensuite, vous avez besoin de créer la base de données et d'initialiser les types +géographiques (adaptez les chemins par rapport à vos besoins) : :: + + PG_VERSION=9.1 # 8.4 pour debian Squeeze + createdb --echo --owner chimere-user --encoding UNICODE chimere "Ma base de données Chimère" + createlang plpgsql chimere # seulement nécessaire sous Debian Squeeze + psql -d chimere -f /usr/share/postgresql/$PG_VERSION/contrib/postgis-1.5/postgis.sql + psql -d chimere -f /usr/share/postgresql/$PG_VERSION/contrib/postgis-1.5/spatial_ref_sys.sql + +Installer les sources +********************* + +Choisissez un chemin où installer Chimère :: + + INSTALL_PATH=/var/local/django + mkdir $INSTALL_PATH + +Depuis une archive +++++++++++++++++++ + +La dernière version « stable » est disponible dans ce `répertoire +<http://www.peacefrogs.net/download/chimere/>`_. +Prenez garde à prendre la dernière version de la branche souhaitée +(par exemple la dernière version de la branche 1.0 est la version 1.0.2). :: + + wget http://www.peacefrogs.net/download/chimere -q -O -| html2text + (...) + [[ ]] chimere-1.0.0.tar.bz2 17-Nov-2010 16:51 53K + [[ ]] chimere-1.0.1.tar.bz2 17-Nov-2010 16:51 53K + [[ ]] chimere-1.0.2.tar.bz2 17-Nov-2010 16:51 53K + (...) + + wget http://www.peacefrogs.net/download/chimere/chimere-1.0.2.tar.bz2 + +Téléchargez, décompressez et déplacez les fichiers dans un répertoire lisible +par l'utilisateur de votre serveur web (www-data pour Debian). :: + + cd $INSTALL_PATH + tar xvjf chimere-last.tar.bz2 + chown -R myusername:www-data chimere + +Depuis le dépôt Git ++++++++++++++++++++ + +Une autre solution est d'obtenir les sources depuis le dépôt Git : :: + + cd $INSTALL_PATH + git clone git://www.peacefrogs.net/git/chimere + cd chimere + git tag -l # lister les versions + git checkout v2.0 # choisir la version désirée + + +Créez un patron pour votre projet +********************************* + +Il y a un exemple de projet fourni (*example_project*). Copiez-le et +modifiez-le (ou utilisez un autre projet basé sur Chimère) : :: + + cd $INSTALL_PATH/chimere + cp -ra example_project mychimere_project + +Le nom de votre projet est utilisé pour le nom de la bibliothèque Python +correspondant à votre projet. +En tant que bibliothèque Python, ce nom doit suivre les règles de nommage des +noms de variable Python : il doit comporter au moins une lettre et peut +comporter autant de nombres et de lettres que souhaité, le caractère tiret bas +(« _ ») est accepté. N'utilisez pas de caractères accentués. Ne commencez pas +par « _ » car cela a une signification particulière en Python. + +Dans le répertoire de votre application Chimère créez un fichier +*local_settings.py* qui correspond à votre configuration. +Un fichier de base est fourni (*local_settings.py.example*) et des descriptions +courtes des variables les plus pertinentes sont données sous celui-ci +(survolez-les au minimum). La plupart de ces paramétrages sont initialisés dans +le fichier *settings.py*. :: + + cd $INSTALL_PATH/chimere/mychimere_project + cp local_settings.py.sample local_settings.py + vim local_settings.py + +:Champs: + + * DATABASES : paramètres relatifs à la base de données + * PROJECT_NAME : nom du projet + * SECRET_KEY : une clé secrète pour l'installation de votre application + Django. Cette clé est utilisée pour les signatures cryptographiques de + l'application et doit être initialisée à une valeur unique et non + devinable. **Modifiez-là !** + * ROOT_URLCONF : module Python de configuration des urls pour votre projet. + Cela devrait être quelque chose comme : 'mychimere_project.urls' + * EMAIL_HOST : SMTP du serveur de courriel pour envoyer des courriels + * TINYMCE_URL : url du chemin vers tinymce (le chemin par défaut est adapté + pour une installation sous Debian avec le paquet tinymce installé) + * JQUERY_JS_URLS : liste des adresses des fichiers javascript jquery et + jquery-ui (les valeurs par défaut sont appropriées pour une installation + sous Debian avec les paquets libjs-jquery et libjs-jquery-ui installés) + * JQUERY_CSS_URLS : liste des adresses des fichiers CSS jquery et + jquery-ui (les valeurs par défaut sont appropriées pour une installation + sous Debian avec les paquets libjs-jquery et libjs-jquery-ui installés) + * GPSBABEL : chemin de gpsbabel (la valeur par défaut est appropriée pour + une installation sous Debian avec le paquet gpsbabel installé) + * TIME_ZONE : fuseau horaire local de cette installation + * LANGUAGE_CODE : code de langage pour cette installation + +Gérez les permissions du dossier de média : :: + + cd $INSTALL_PATH/chimere/mychimere_project + chown -R user:www-data media + chmod -R g+w media + +Créez le fichier de log : :: + + mkdir /var/log/django + touch /var/log/django/chimere.log + chown -R root:www-data /var/log/django/ + chmod -R g+w /var/log/django/ + +Regroupez les fichiers static dans un seul répertoire : :: + + cd $INSTALL_PATH/chimere/mychimere_project + ./manage.py collectstatic + +Compilation des langages +************************ + +Si votre langage est disponible dans le dossier *chimere/locale/*, il est juste +nécessaire de le compiler. +Pour faire cela, il faut lancer la commande suivante (ici, **fr** est pour le +français, remplacez cela avec le code de langage approprié) : :: + + cd $INSTALL_PATH/chimere/chimere/ + django-admin compilemessages -l fr + +Si votre langage n'est pas disponible, n'hésitez pas à créer le fichier **po** +par défaut et à le proposer (les contributions sont bienvenues). +La procédure est explicité ci-dessous. + +Il est d'abord nécessaire de créer le fichier po par défaut (bien sûr remplacez +**fr** par le code du langage que vous souhaitez créer) : :: + + django-admin makemessages -l fr + +Il doit y avoir maintenant un fichier *django.po* dans le répertoire +*locale/fr/LC_MESSAGES*. Ensuite il faut le compléter avec votre +traduction. + +Une fois le votre fichier de traduction complété, il suffit de le +compiler de la même manière que vous l'auriez fait si ce fichier était +initialement disponible. + +Initialisation de la base de données +************************************ + +Créez les tables de la base de données (toujours dans le répertoire de votre +projet) : :: + + cd $INSTALL_PATH/chimere/mychimere_project + ./manage.py syncdb + + +Vous aurez à rentrer les informations pour la création du compte administrateur +(les pages d'administration se trouvent à l'adresse : +http://where_is_chimere/admin/). Ensuite pour créer les tables de la base de +données gérées par Django-South : :: + + ./manage.py migrate + +La base de données est en place, félicitations ! + +Si vous voulez remplir votre installation avec des données par défaut (ne le +faites pas sur une instance de Chimère contenant déjà des données !) : :: + + ./manage.py loaddata ../chimere/fixtures/default_data.json + +Configuration du serveur web +**************************** + +Configuration d'Apache avec mod_wsgi +++++++++++++++++++++++++++++++++++++ + +Installez *mod_wsgi* pour Apache : :: + + apt-get install libapache2-mod-wsgi + + +Créez et éditez la configuration de Chimère en fonction de votre installation :: + + cp $INSTALL_PATH/chimere/apache/django.wsgi \ + $INSTALL_PATH/chimere/apache/mydjango.wsgi + vim $INSTALL_PATH/chimere/apache/mydjango.wsgi + cp $INSTALL_PATH/chimere/apache/apache-wsgi.conf \ + /etc/apache2/sites-available/chimere + vim /etc/apache2/sites-available/chimere + # créer le répertoire des logs + mkdir /var/log/apache2/chimere/ + chown www-data /var/log/apache2/chimere/ + +Adaptez les fichiers *mydjango.wsgi* (avec le chemin correct *sys* des +bibliothèques Python de Chimère et le nom correct pour le module) et le fichier +*chimere* de Apache (avec le nom de serveur correct et les chemins corrects). + +Pour activer le site web, rechargez Apache : :: + + a2ensite chimere + /etc/init.d/apache2 reload + +Si vous avez des problèmes de dépôt de fichier avec des caractères Unicode dans +leurs noms, activez la locale appropriée dans Apache. Sur un serveur Debian avec +UTF-8 comme codage par défaut, dans le fichier */etc/apache2/envvars* +décommentez la ligne suivante : :: + + . /etc/default/locale + + diff --git a/docs/fr/static/chimere_admin_00.png b/docs/fr/static/chimere_admin_00.png Binary files differnew file mode 100644 index 0000000..e9f6bf7 --- /dev/null +++ b/docs/fr/static/chimere_admin_00.png diff --git a/docs/fr/static/chimere_admin_01.png b/docs/fr/static/chimere_admin_01.png Binary files differnew file mode 100644 index 0000000..f387677 --- /dev/null +++ b/docs/fr/static/chimere_admin_01.png diff --git a/docs/fr/static/chimere_admin_02.png b/docs/fr/static/chimere_admin_02.png Binary files differnew file mode 100644 index 0000000..b14878c --- /dev/null +++ b/docs/fr/static/chimere_admin_02.png diff --git a/docs/fr/static/chimere_admin_03.png b/docs/fr/static/chimere_admin_03.png Binary files differnew file mode 100644 index 0000000..b8f6774 --- /dev/null +++ b/docs/fr/static/chimere_admin_03.png diff --git a/docs/fr/static/chimere_admin_import_CSV.png b/docs/fr/static/chimere_admin_import_CSV.png Binary files differnew file mode 100644 index 0000000..6783564 --- /dev/null +++ b/docs/fr/static/chimere_admin_import_CSV.png diff --git a/docs/fr/static/chimere_admin_import_KML.png b/docs/fr/static/chimere_admin_import_KML.png Binary files differnew file mode 100644 index 0000000..2c4e72b --- /dev/null +++ b/docs/fr/static/chimere_admin_import_KML.png diff --git a/docs/fr/static/chimere_admin_import_OSM.png b/docs/fr/static/chimere_admin_import_OSM.png Binary files differnew file mode 100644 index 0000000..1fa75a6 --- /dev/null +++ b/docs/fr/static/chimere_admin_import_OSM.png diff --git a/docs/fr/static/chimere_admin_import_georss.png b/docs/fr/static/chimere_admin_import_georss.png Binary files differnew file mode 100644 index 0000000..6faf556 --- /dev/null +++ b/docs/fr/static/chimere_admin_import_georss.png diff --git a/docs/fr/static/chimere_admin_import_shapefile.png b/docs/fr/static/chimere_admin_import_shapefile.png Binary files differnew file mode 100644 index 0000000..74a92d9 --- /dev/null +++ b/docs/fr/static/chimere_admin_import_shapefile.png diff --git a/docs/fr/static/chimere_admin_modified_management.png b/docs/fr/static/chimere_admin_modified_management.png Binary files differnew file mode 100644 index 0000000..2281511 --- /dev/null +++ b/docs/fr/static/chimere_admin_modified_management.png diff --git a/docs/fr/static/chimere_admin_modify_item.png b/docs/fr/static/chimere_admin_modify_item.png Binary files differnew file mode 100644 index 0000000..e40ca11 --- /dev/null +++ b/docs/fr/static/chimere_admin_modify_item.png diff --git a/docs/fr/upgrade.rst b/docs/fr/upgrade.rst new file mode 100644 index 0000000..a092b4b --- /dev/null +++ b/docs/fr/upgrade.rst @@ -0,0 +1,334 @@ +.. -*- coding: utf-8 -*- + +=========== +Mise à jour +=========== + +:Auteur: Étienne Loks +:date: 2012-11-29 +:Copyright: CC-BY 3.0 + +Ce document présente la mise à jour de Chimère. +Il a été mis à jour pour la version 2.0.0 de Chimère. + +.. Warning:: + Avant toute mise à jour faites une sauvegarde de la base de données et de + tous vos fichiers d'installation (en particulier si vous avez fait des + changements sur ceux-ci). + +La procédure de migration nécessite une connaissance de base de Git et de la +ligne de commande Linux. Ce n'est *pas* une procédure facile. Un travail est en +cours pour faciliter les mises à jour des futures versions de Chimère (>2.0). + +Si plusieurs versions de Chimère ont été publiées depuis votre installation, +vous devez répéter toutes les étapes de mise à jour. +Par exemple pour mettre à jour depuis la version 1.1 vers la version 2.0, vous +devez d'abord mettre à jour vers la version 1.2 puis vers la version 2.0. +La seule étape optionnelle est l'intégration de vos personnalisations. + +La version stable actuelle est la version 2.0. + +.. Note:: + Si vous souhaitez améliorer Chimère prenez la branche *master* sur Git. + +Les instructions sont données pour Debian Squeeze et Debian Wheezy. + + +Obtenir des nouvelles versions des dépendances +---------------------------------------------- + +Version 1.1 -> 1.2 +****************** + +.. code-block:: bash + + apt-get install python-lxml libjs-jquery gpsbabel python-gdal + +Version 1.2 -> 2.0 +****************** + +Debian Squeeze +++++++++++++++ +Activez les backports (http://backports-master.debian.org/Instructions/). +Puis installez les nouvelles dépendances :: + + apt-get install -t squeeze-backports python-django python-django-south \ + python-simplejson libjs-jquery-ui python-pyexiv2 \ + python-feedparser javascript-common libjs-jquery + +Debian Wheezy ++++++++++++++ + +.. code-block:: bash + + apt-get install python-django-south python-simplejson libjs-jquery-ui \ + python-pyexiv2 python-feedparser javascript-common + +Si vous comptez réaliser des imports importants envisagez l'installation +de `Celery <http://celeryproject.org/>`_. + +.. code-block:: bash + + apt-get install python-django-celery python-kombu + +Obtenir les nouvelles sources +----------------------------- + +Tout d'abord vous avez besoin de la nouvelle version du code source. +Pour la procédure d'installation, le code source doit être celui du dépôt Git. + +Pour simplifier les instructions suivantes, quelques variables d'environnement +sont initialisées. + +.. code-block:: bash + + CHIMERE_PATH=/srv/chimere + CHIMERE_TAG=v1.2.0 # version 1.1 -> 1.2 + CHIMERE_TAG=v2.0-RC3 # version 1.2 -> 2.0 + CHIMERE_TAG=master # version 2.0 -> master + CHIMERE_LOCALNAME=mychimere + +Le nom de votre projet (*CHIMERE_LOCALNAME*) est utilisé pour le nom de la +bibliothèque Python correspondant à votre projet ainsi que votre propre +branche Git. +En tant que bibliothèque Python, ce nom doit suivre les règles de nommage des +noms de variable Python : il doit comporter au moins une lettre et peut +comporter autant de nombres et de lettres que souhaité, le caractère tiret bas +(« _ ») est accepté. N'utilisez pas de caractères accentués. Ne commencez pas +par « _ » car cela a une signification particulière en Python. + + +Pour une précédente installation Git +************************************ + +.. code-block:: bash + + cd $CHIMERE_PATH + git checkout -b $CHIMERE_LOCALNAME # seulement si vous n'avez pas encore + # créé votre branche locale + git stash # si vous avez des changements pas encore « commités » + git checkout master + git pull + git checkout $CHIMERE_LOCALNAME + git rebase $CHIMERE_TAG + +Pour une précédente installation depuis une archive +*************************************************** + +Supprimez d'abord votre ancienne installation et obtenez la version Git : + +.. code-block:: bash + + cd $CHIMERE_PATH + cd .. + rm -rf $CHIMERE_PATH + git clone git://www.peacefrogs.net/git/chimere + cd chimere + git checkout $CHIMERE_TAG + git checkout -b $CHIMERE_LOCALNAME + + +Mettre à jour les paramètres de base +************************************ + +Version 1.1 -> 1.2 +++++++++++++++++++ + +.. code-block:: bash + + CHIMERE_APP_PATH=$CHIMERE_PATH/chimere + vim $CHIMERE_APP_PATH/settings.py + +Ajoutez les lignes suivantes (adaptez en fonction de vos installations +jquery et gpsbabel) : + +.. code-block:: python + + JQUERY_URL = SERVER_URL + 'jquery/jquery-1.4.4.min.js' + GPSBABEL = '/usr/bin/gpsbabel' + # simplification des trajets avec une tolérance de 5 mètres + GPSBABEL_OPTIONS = 'simplify,crosstrack,error=0.005k' + +Version 1.2 -> 2.0 +++++++++++++++++++ + +Patron de projet +................ +Créez un nouveau patron de projet : + +.. code-block:: bash + + cd $CHIMERE_PATH + cp -ra $CHIMERE_PATH/example_project $CHIMERE_LOCALNAME + CHIMERE_APP_PATH=$CHIMERE_PATH/$CHIMERE_LOCALNAME + +local_settings +.............. +Un fichier *local_settings* est maintenant utilisé. + +.. code-block:: bash + + cd $CHIMERE_APP_PATH + cp local_settings.py.sample local_settings.py + vim local_settings.py + +Reportez vos anciens paramètres de *settings.py* vers *local_settings.py* +(au minimum la configuration de votre base de données). +Le paramètre *ROOT_URLCONF* doit être mis à la valeur +« **nom_de_votre_projet.urls** ». + +logs +.... +Par défaut, des fichiers de *log* sont maintenant écrit dans le fichier : +« */var/log/django/chimere.log* ». + +.. code-block:: bash + + mkdir /var/log/django + touch /var/log/django/chimere.log + chown www-data -R /var/log/django + +Fichiers statiques +.................. + +Les fichiers statiques sont maintenant gérés avec +« **django.contrib.staticfiles** ». + +.. code-block:: bash + + cd $CHIMERE_APP_PATH + ./manage.py collectstatic + + +Déplacez vos anciens fichiers statiques vers le nouveau répertoire : + +.. code-block:: bash + + cp -ra $CHIMERE_PATH/chimere/static/* $CHIMERE_APP_PATH/static/ + cp -ra $CHIMERE_PATH/chimere/static/icons/* $CHIMERE_APP_PATH/media/icons/ + cp -ra $CHIMERE_PATH/chimere/static/upload $CHIMERE_APP_PATH/media/ + +Configuration du serveur Web +............................ + +Si vous utilisez Apache et WSGI pour mettre à disposition votre Chimère, +changez la configuration pour pointer vers le chemin correct de +configuration : « **nom_de_votre_projet.settings** ». + +Changez la directive de votre serveur web pour qu'elle pointe vers le bon +répertoire statique de « **votre_chemin_vers_chimere/chimere/static** » en +« **votre_chemin_vers_chimere/nom_de_votre_projet/static** ». + +Version 2.0 -> master ++++++++++++++++++++++ + +Mettez à jour les paramètres et les fichiers statiques. + +.. code-block:: bash + + cp $CHIMERE_PATH/example_project/settings.py $CHIMERE_LOCALNAME + ./manage.py collectstatic + +Migration de la base de données +------------------------------- + +Version 1.1 -> 1.2 +****************** + +Les scripts de migration testent votre installation avant de faire des +changements. Vous n'aurez donc probablement pas de perte mais par précaution +avant de les lancer n'oubliez pas de faire une sauvegarde de votre base de +données. +Vous pouvez aussi faire une copie de votre base de données actuelle dans une +nouvelle base et faire la mise à jour sur cette nouvelle base de données. + +La bibliothèque GDAL pour Python est nécessaire pour faire fonctionner ces +scripts (disponible avec le paquet *python-gdal* dans Debian). + +Si vous souhaitez lancer le script de migration dans un environnement de +production, stoppez l'instance de Chimère avant d'exécuter le script de +migration. + +Dans le fichier *settings.py* vérifiez que **chimere.scripts** fait partie +des *INSTALLED_APPS*. + +Après cela, dans le répertoire d'installation de Chimère, exécutez simplement +le script. + +.. code-block:: bash + + cd $CHIMERE_APP_PATH + python ./scripts/upgrade.py + +Version 1.2 -> 2.0 +****************** + +Django South est maintenant utilisé pour les migrations de base de données. + +.. code-block:: bash + + cd $CHIMERE_APP_PATH + ./manage.py syncdb + ./manage.py migrate chimere 0001 --fake # simule l'initialisation de la base + # de données + ./manage.py migrate chimere + +Un champ descriptif est maintenant disponible pour les points d'intérêts. Si +vous souhaitez migrer un ancien *modèle de propriété* vers ce nouveau champ, +un script est disponible. + +.. code-block:: bash + + cd $CHIMERE_APP_PATH + ../chimere/scripts/migrate_properties.py + # suivez les instructions + +Version 2.0 -> master +********************* + +.. code-block:: bash + + cd $CHIMERE_APP_PATH + ./manage.py syncdb + ./manage.py migrate chimere + +Mise à jour des traductions +--------------------------- + +Version 1.1 -> 1.2 +****************** + +.. code-block:: bash + + cd $CHIMERE_APP_PATH + ./manage.py compilemessages + +Version 1.2 -> 2.0 -> master +**************************** + +.. code-block:: bash + + cd $CHIMERE_PATH/chimere + django-admin compilemessages + +Forcer le rafraîchissement du cache du navigateur des utilisateurs +------------------------------------------------------------------ + +Des changements importants au niveau des styles et du javascript sont faits +entre les différentes versions. Cela peut provoquer des dysfonctionnements +importants chez des utilisateurs dont le navigateur web a conservé les anciennes +versions de certains fichiers en cache. Il y a plusieurs moyens de forcer le +rafraîchissement de leur cache. Un de ceux-ci est de changer le chemin vers les +fichiers statiques. Pour faire cela, éditez votre fichier *local_settings.py* et +changez : :: + + STATIC_URL = '/static/' + +en : :: + + STATIC_URL = '/static/v2.0.0/' + +Changez la directive concernant les fichiers statiques sur le fichier de +configuration de votre serveur web. +Redémarrez alors le serveur web pour appliquer les changements. + |
