summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorÉtienne Loks <etienne.loks@peacefrogs.net>2012-10-07 15:58:34 +0200
committerÉtienne Loks <etienne.loks@peacefrogs.net>2012-10-07 15:58:34 +0200
commitcecac962b4e547c5ea15415c4a04529110d2beb1 (patch)
tree233e9c330af137d6393f7dd053a0cc3aadfccc9e
parent97ae0f6702112cad26e1265dc7d0ffdbcd3d01a0 (diff)
downloadChimère-cecac962b4e547c5ea15415c4a04529110d2beb1.tar.bz2
Chimère-cecac962b4e547c5ea15415c4a04529110d2beb1.zip
Documentation: t2t -> rst (for using sphinx)
-rw-r--r--docs/Makefile130
-rw-r--r--docs/conf.py216
-rw-r--r--docs/index.rst14
-rw-r--r--docs/install.rst355
-rw-r--r--docs/t2t/en/INSTALL.t2t (renamed from docs/en/INSTALL.t2t)0
-rw-r--r--docs/t2t/en/UPGRADE.t2t (renamed from docs/en/UPGRADE.t2t)0
-rw-r--r--docs/t2t/fr/documentation-utilisateur.t2t (renamed from docs/fr/documentation-utilisateur.t2t)0
-rwxr-xr-xdocs/t2t/generate (renamed from docs/generate)0
-rw-r--r--docs/t2t/style.css (renamed from docs/style.css)0
-rw-r--r--docs/upgrade.rst186
10 files changed, 901 insertions, 0 deletions
diff --git a/docs/Makefile b/docs/Makefile
new file mode 100644
index 0000000..dc549a6
--- /dev/null
+++ b/docs/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/conf.py b/docs/conf.py
new file mode 100644
index 0000000..19ac399
--- /dev/null
+++ b/docs/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 = '1.2'
+# The full version, including alpha/beta/rc tags.
+release = '1.2'
+
+# 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 = '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 = 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
+
+# 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 = 'Chimredoc'
+
+
+# -- 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', 'Chimre.tex', u'Chimère Documentation',
+ 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', 'chimre', u'Chimère Documentation',
+ [u'Étienne Loks'], 1)
+]
diff --git a/docs/index.rst b/docs/index.rst
new file mode 100644
index 0000000..fb8c4a9
--- /dev/null
+++ b/docs/index.rst
@@ -0,0 +1,14 @@
+.. 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.
+
+Welcome to Chimère's documentation!
+===================================
+
+.. toctree::
+ :maxdepth: 2
+
+ install
+ upgrade
+
diff --git a/docs/install.rst b/docs/install.rst
new file mode 100644
index 0000000..a2b1dc5
--- /dev/null
+++ b/docs/install.rst
@@ -0,0 +1,355 @@
+.. -*- coding: utf-8 -*-
+
+====================
+Chimère installation
+====================
+
+:Author: Étienne Loks
+:date: 2012-02-15
+:Copyright: CC-BY 3.0
+
+This documents presents the installation of Chimère for version 1.x. This
+documentation is no longer relevant for version 2.
+
+-----------------
+Base installation
+-----------------
+
+Installation
+------------
+
+Prerequisites
+*************
+
+ - `apache <http://www.apache.org/>`_ version 2.x with `mod_python <http://www.modpython.org/>`_ 3.x
+
+ - `python <http://www.python.org/>`_ versions 2.6 or 2.7
+
+ - `geodjango <http://www.djangoproject.com/>`_ version 1.0
+
+ - `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/>`_
+
+ - `Beautiful Soup <http://www.crummy.com/software/BeautifulSoup/>`_
+
+ - `lxml <http://lxml.de/>`_
+
+geodjango is a part of django version 1.0 but it has some specific (geographically related) additionnal dependencies:
+
+ - `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 or 1.3.x
+
+ - `gdal <http://www.gdal.org/>`_
+
+
+Optionaly (but recommanded):
+
+ - `tinymce <http://tinymce.moxiecode.com/>`_
+
+ - `gpsbabel <http://www.gpsbabel.org/>`_
+
+
+The simpliest way to obtain these packages is to get them from your favorite Linux distribution repositories (for instance python, python-django, python-beautifulsoup, tinymce, apache2, libgeos-3.2.0, proj, gdal-bin, python-gdal, python-lxml, python-psycopg2, python-imaging, gettext, postgresql-8.4 and postgresql-8.4-postgis packages for Debian Squeeze). If these packages do not exist in your distribution's repository, please refer to the applications' websites.
+
+Database configuration
+**********************
+
+Now that postgres and postgis are installed, you need to create a new user for chimere::
+
+ createuser --echo --adduser --createdb --encrypted --pwprompt chimere-user
+
+Then, you have to create the database, and initialize the geographic types (adapt the paths accordingly to your needs)::
+
+ createdb --echo --owner chimere-user --encoding UNICODE chimere "My Chimère database"
+ createlang plpgsql chimere
+ psql -d chimere -f /usr/share/postgresql/8.4/contrib/postgis-1.5/postgis.sql
+ psql -d chimere -f /usr/share/postgresql/8.4/contrib/postgis-1.5/spatial_ref_sys.sql
+
+Getting the sources
+*******************
+
+The last "stable" version is available in this `directory <http://www.peacefrogs.net/download/>`_.
+
+Another solution is to get the last git version::
+
+ git clone git://www.peacefrogs.net/git/chimere
+ git tag -l # list tagged versions
+ git checkout v1.2.2 # checkout the desired version
+
+
+Install the sources
+*******************
+
+Unpack and move the files in an apache user (www-data for Debian) readable directory::
+
+ sudo mkdir /var/local/django
+ cd /var/local/django
+ sudo tar xvjf /home/etienne/chimere-last.tar.bz2
+ sudo chown -R etienne:www-data chimere
+
+In your chimere application directory create settings.py to fit to your configuration.
+A base template is provided (settings.py.example)::
+
+ cd chimere/chimere/
+ cp settings.py.example settings.py
+ vim settings.py
+ ####
+ PROJECT_NAME = u'Chimère'
+
+ ROOT_PATH = '/var/local/django/chimere/chimere/' # path to the installation of Chimère
+
+ SERVER_URL = "http://www.peacefrogs.net/" # root of the web address of Chimère
+ EXTRA_URL = 'chimere/' # suffix to the web address of Chimère
+ BASE_URL = SERVER_URL + EXTRA_URL
+ EMAIL_HOST = 'localhost' # smtp of an email server to send emails
+
+ TINYMCE_URL = SERVER_URL + 'tinymce/'
+
+ # chimere specific
+ DEFAULT_CENTER = (-1.679444, 48.114722) # default center of the map
+ EPSG_PROJECTION = 900913 # projection used for data exchange (JSON flow)
+ EPSG_DISPLAY_PROJECTION = 4326 # projection used to display on the map
+
+ # default id category to check on the map
+ DEFAULT_CATEGORIES = [1] # list of default category ids checked on the map
+
+ # JS definition of the main map cf. OpenLayers documentation for more details
+ # to begin you can leave the default OpenStreetMap map rendered with Mapnik
+ MAP_LAYER = "new OpenLayers.Layer.OSM.Mapnik('Mapnik')"
+
+ # setting the appropriate language code for your site
+ LANGUAGE_CODE = 'en-gb'
+
+ # database configuration
+ DATABASES = {
+ 'default': {
+ 'ENGINE': 'django.contrib.gis.db.backends.postgis',
+ 'NAME': 'chimere',
+ 'USER': 'chimere-user',
+ 'PASSWORD': '',
+ 'HOST': '',
+ 'PORT': '',
+ },
+ }
+
+
+If you want to use tinymce don't forget to make it available to Chimère.
+
+In this same chimere directory, make a symbolic link to django's basic styles (do not forget to change the path according to your configuration, it is the last time I will recall it to you. Next time, you are on your own!)::
+
+ ln -s /usr/share/pyshared/django/contrib/admin/media/ .
+
+Compiling languages
+*******************
+
+If your language is available in the locale directory of chimere, you will just need to get it compiled. Still being in the chimere directory, this can be done with (here, "de" stands for german. Replace it with the appropriate language code)::
+
+ django-admin compilemessages -l de
+
+If your language is not available, feel free to create the default po files and to submit it, contributions are well appreciated. Procedure is as follows :
+
+You first need to create the default po file (of course, replace "de" according to the language you chose to create)::
+
+ django-admin makemessages -l de
+
+There should now be a django.po file in locale/de/LC_MESSAGES. Complete it with your translation.
+
+Now that the translation file is completed, just compile it the same way you would have if the language file was already available.
+
+Database initialisation
+***********************
+
+Create the appropriate tables (still being in chimère application directory)::
+
+ ./manage.py syncdb
+
+You will be prompted for the creation of an administrator account (administration can be found at: http://where_is_chimere/admin).
+The database is set, congratulations!
+
+Webserver configuration
+***********************
+
+Apache configuration with mod_wsgi
+++++++++++++++++++++++++++++++++++
+
+Install mod_wsgi for apache::
+
+ sudo apt-get install libapache2-mod-wsgi
+
+
+Create and edit a configuration for Chimère::
+
+ sudo mkdir /var/local/django/chimere/apache
+ sudo cp /var/local/django/chimere/docs/conf/django.wsgi /var/local/django/chimere/apache/django.wsgi
+ sudo cp /var/local/django/chimere/docs/conf/apache-wsgi.conf /etc/apache2/sites-available/chimere
+
+Adapt the files django.wsgi (with the correct sys path) and chimere.
+
+To activate the website reload apache::
+
+ sudo a2ensite chimere
+ sudo /etc/init.d/apache2 reload
+
+Apache configuration with mod_python
+++++++++++++++++++++++++++++++++++++
+
+Install mod_python for apache::
+
+ apt-get install libapache2-mod-python
+
+Create and edit a configuration file for Chimère::
+
+ sudo vim /etc/apache2/sites-available/chimere
+
+Insert Apache directives for your installation::
+
+ # part of the address after the root of your site
+ <Location "/chimere/">
+ # directory path to the father of the installation of Chimère
+ PythonPath "['/var/local/django/'] + sys.path"
+ SetHandler python-program
+ PythonHandler django.core.handlers.modpython
+ SetEnv DJANGO_SETTINGS_MODULE chimere.settings
+ # set it to on or off if in test or production environment
+ PythonDebug On
+ # put differents interpreter names if you deploy several Chimère
+ PythonInterpreter chimere
+ </Location>
+
+To activate the website reload apache::
+
+ sudo a2ensite chimere
+ sudo /etc/init.d/apache2 reload
+
+
+Now that you have gone through ALL this configuration procedure (which was not that hard after all) you can configure the site.
+
+------------------
+Base configuration
+------------------
+
+When you have installed the application there is a few simple steps to follow to configure *your* Chimère.
+
+Most of theses steps are done in the administration pages accessible at : http://where_is_chimere/admin
+To access theses pages you have to identify you with login and password provided at the initialization of the database.
+
+Creating users
+--------------
+
+If you are not the only administrator of this Chimère installation you have to create account for the other users.
+Currently the process has to be done manualy.
+
+Simply click on the Add button near Users. Give a name and a default password (the user can change it on in own later).
+Then complete the other pieces of information.
+Check the case: Member of the staff (or this user will not be able to log to this administration site).
+To simply give this user correct rights don't add permission manualy but make this user member of a group.
+Two default group are proposed: application administrator and moderator.
+
+Detail of rights for default user/groups:
+
++-----------------------------------------+-------------------+---------------------------+-----------+
+| Task | Application owner | Application administrator | Moderator |
++=========================================+===================+===========================+===========+
+| User add/modify/delete | yes | no | no |
++-----------------------------------------+-------------------+---------------------------+-----------+
+| Group add/modify/delete | yes | no | no |
++-----------------------------------------+-------------------+---------------------------+-----------+
+| Property model add/modify/delete | yes | no | no |
++-----------------------------------------+-------------------+---------------------------+-----------+
+| News add/modify/delete | yes | yes | no |
++-----------------------------------------+-------------------+---------------------------+-----------+
+| Area add/modify/delete | yes | yes | no |
++-----------------------------------------+-------------------+---------------------------+-----------+
+| Icon add/modify/delete | yes | yes | no |
++-----------------------------------------+-------------------+---------------------------+-----------+
+| Category/Subcategory add/modify/delete | yes | yes | no |
++-----------------------------------------+-------------------+---------------------------+-----------+
+| Point Of Interest add/modify/delete | yes | yes | yes |
++-----------------------------------------+-------------------+---------------------------+-----------+
+| Route add/modify/delete | yes | yes | yes |
++-----------------------------------------+-------------------+---------------------------+-----------+
+
+Setting the welcome page
+------------------------
+
+The message has to be set by updating the file templates/welcome.html.
+You only have to change the message at the begin of #detail_content.
+
+Creating property models
+------------------------
+
+A basic installation of Chimère only permit to associate a name, a category and (for the point of interest) a picture for each point of interest and each route. You may want to add more fields like phone number or opening hours. For that all you have to do is to add a new property model.
+The administration ask you for name, order (to order between other properties), availability for the user and type (only text field and long text field are available for the moment).
+Then to make this property available it is necessary to restart your application (and then probably to reload Apache).
+All forms are then automaticaly updated with this new field.
+
+Updating the detail window
+--------------------------
+
+When clicking on a POI a window appear with the details.
+Particulary if you have set some new property models you may want to customize this window.
+Each property is in a paragraph with id: property_i_j (i is the order and j is the model property id - the first model property is id 1 then 2...).
+You can simply adapt the CSS file (static/styles.css) to match the desired presentation.
+If you want to really change the whole presentation you can change the template file templates/detail.html (go to the Django template documentation for details).
+
+Updating the design
+-------------------
+
+You can of course customize Chimère with your own CSS. To do that just edit the file static/styles.css.
+
+After this basic configuration done the harder is done. You can do now application administration tasks.
+
+-------------------
+Site administration
+-------------------
+
+The explanation are to create new elements. To modify these elements it is the same if only some fields are already filled.
+
+Creating news
+-------------
+
+A news system is available.
+All you have to to do is to click on the Add button near News.
+For each news you have to provided a name and a content. The content can contain HTML tags.
+The avaibility is set with a checkbox.
+
+Creating categories/subcategories
+---------------------------------
+
+Before adding categories you have to set some icons. Theses icons appears on the map and in the categories' box on the main map.
+Be careful to resize correctly your icons. Indeed the icon will be presented at their real size on the map.
+To add icons: the Add button near Icons.
+
+Categories are in fact only containers for subcategories. You'll have to provide only a name and an order.
+To add categories: the Add button near categories (quite clear now, isn't it?)
+
+Fields of subcategories are: an associated category, a name, an icon, an order, a color and an element type.
+Theses fields are mainly quite self-explainatory.
+The color is used to draw routes (if this subcategory contains routes). If it a basic color it can be set with the english name (for instance: "red", "blue", "yellow" or "purple") otherwise you can put the HTML RVB code (for instance "#9227c9").
+The element type is the type of element the subcategory can contain: POI, route or both.
+
+Creating areas
+--------------
+
+Areas are useful to provide a quick access to a particular town, a district, etc.
+To define an area fill a name and move/zoom to the choosed location. Submit it and that's all.
+
+----------
+Moderation
+----------
+
+The moderation step is quite simple. It works the same with POIs and routes.
+The moderator can access to all POIs (or routes) by clicking on the Modify button.
+A search field is available to search by name but the more interesting is to filter POIs (or route) by state and by subcategory.
+Then to modify an item you have to click on his name.
+The submission can now freely modified. Compared to the main submission interface there is only on field add: the state field. To be publish in the main site the item must have the state: Available.
+If an item is not revelant the Delete button permit to remove it.
+
diff --git a/docs/en/INSTALL.t2t b/docs/t2t/en/INSTALL.t2t
index 2279e37..2279e37 100644
--- a/docs/en/INSTALL.t2t
+++ b/docs/t2t/en/INSTALL.t2t
diff --git a/docs/en/UPGRADE.t2t b/docs/t2t/en/UPGRADE.t2t
index 7d248ee..7d248ee 100644
--- a/docs/en/UPGRADE.t2t
+++ b/docs/t2t/en/UPGRADE.t2t
diff --git a/docs/fr/documentation-utilisateur.t2t b/docs/t2t/fr/documentation-utilisateur.t2t
index d4ff0e1..d4ff0e1 100644
--- a/docs/fr/documentation-utilisateur.t2t
+++ b/docs/t2t/fr/documentation-utilisateur.t2t
diff --git a/docs/generate b/docs/t2t/generate
index c01cb57..c01cb57 100755
--- a/docs/generate
+++ b/docs/t2t/generate
diff --git a/docs/style.css b/docs/t2t/style.css
index 5ba1a2f..5ba1a2f 100644
--- a/docs/style.css
+++ b/docs/t2t/style.css
diff --git a/docs/upgrade.rst b/docs/upgrade.rst
new file mode 100644
index 0000000..91bd597
--- /dev/null
+++ b/docs/upgrade.rst
@@ -0,0 +1,186 @@
+.. -*- coding: utf-8 -*-
+
+===============
+Chimère upgrade
+===============
+
+:Author: Étienne Loks
+:date: 2012-02-15
+:Copyright: CC-BY 3.0
+
+This documents presents the upgrade of Chimère to version 1.2. This
+documentation is no longer relevant for version 2.
+
+-------------------------------
+Get new version of dependencies
+-------------------------------
+
+From version prior to 1.1 to 1.1
+--------------------------------
+
+Upgrade Django to the 1.2 version.
+Install the `Beautiful Soup <http://www.crummy.com/software/BeautifulSoup/>`_
+library.
+
+-------------------
+Get the new version
+-------------------
+
+First of all get the new version of the code source.
+
+Download archive from the download site
+---------------------------------------
+
+Versions are available at this `address <http://www.peacefrogs.net/download/chimere/>`_.
+Take care of getting the last version in the desired X.Y branch (for instance
+the last version for the 1.0 branch is version 1.0.2 as the time of writing of
+this document).
+Extract it to the desired destination path.::
+
+ su
+ 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
+ mv chimere-1.0.2.tar.bz2 /var/local/django
+ cd /var/local/django
+ tar xvjf chimere-1.0.2.tar.bz2
+ cd chimere-1.0.2
+
+Get from the Git repository
+---------------------------
+
+Clone the Git repository, checkout the desired version and copy it to the
+desired destination path.::
+
+ git clone git://www.peacefrogs.net/git/chimere
+ cd chimere
+ git tag -l
+ (...)
+ v1.2.0
+ v1.2.1
+ git checkout v1.2.1
+ cd ..
+ mv chimere /var/local/dgango/chimere-1.0
+ cd /var/local/dgango/chimere-1.0
+
+-------------------------------------
+Copy files from your old installation
+-------------------------------------
+
+From your old installation at least copy "settings.py" and the content of
+"static/icons/" and "static/upload/" to the new installation.
+You have probably customised some styles and templates (for instance
+"styles.css", "welcome.html" and "base_user.html") don't forget to copy them and
+eventualy adapt them (if you have old vanilla version of this file comparing
+with the new one provided is easier).
+
+-----------------
+Adapt settings.py
+-----------------
+
+The format of settings.py could have evolved, the easiest way to complete your
+settings.py is to compare your old settings.py.example and the new one provided.
+
+Specific to upgrade from version 1.0 to version 1.1
+---------------------------------------------------
+
+Version 1.1 of Chimère uses Django 1.2 and with it the manner to define database
+has changed.
+
+Old way to define your database is::
+
+
+ DATABASE_ENGINE = 'postgresql_psycopg2'
+ DATABASE_NAME = 'chimere'
+ DATABASE_USER = 'chimere-user'
+ DATABASE_PASSWORD = 'password'
+ DATABASE_HOST = 'localhost'
+ DATABASE_PORT = ''
+
+
+The new one looks like::
+
+
+ DATABASES = {
+ 'default': {
+ 'NAME': 'ratatouille',
+ 'ENGINE': 'django.contrib.gis.db.backends.postgis',
+ 'HOST': 'localhost',
+ 'PORT': '5432',
+ 'USER': 'chimere-user',
+ 'PASSWORD': 'password',
+ },
+ }
+
+Be careful to adapt properly your settings.py
+
+---------------------
+Run migration scripts
+---------------------
+
+Migration scripts test your installation before making changes so you probably
+won't have any lost but by precaution before running theses scripts don't forget
+to backup your database.
+You can also make a copy of your current database into a new database and make
+the new installation to this new database.
+
+The gdal binding for python is necessary to run the upgrade scripts (available
+in the python-gdal package in Debian).
+
+If you run the migration scripts in a production environnement stop the old
+instance of Chimère before executing the migration script. Perhaps prepare the
+web server to point to the new installation before doing the database upgrade
+(cf. next paragraph).
+
+In "settings.py" verify that "chimere.scripts" is in the INSTALLED_APPS.
+
+After that in the chimere directory just execute the script::
+
+ python ./scripts/upgrade
+
+-----------------------------
+Point to the new installation
+-----------------------------
+
+Most of the job is done. You'll just have to configure your web server to serve
+the new version.
+
+For instance for Apache the directive is changed from::
+
+ PythonPath "['/var/local/django/chimere/'] + sys.path"
+
+To::
+
+ PythonPath "['/var/local/django/chimere-1.0.2/'] + sys.path"
+
+
+Restart your web server and apart from web browser cache issues this should work.
+
+------------------------------------------------
+Force the upgrade of visitor's web browser cache
+------------------------------------------------
+
+If major changes in the javascript has be done between version, many of your
+users could experience problems. There are many tricks to force the refresh
+of their cache. One of them is to change the location of statics files. To do
+that edit your settings.py and change::
+
+ MEDIA_ROOT = ROOT_PATH + 'static/'
+ MEDIA_URL = '/' + EXTRA_URL + 'static/'
+
+To::
+
+ MEDIA_ROOT = ROOT_PATH + 'static/v1.0.2/'
+ MEDIA_URL = '/' + EXTRA_URL + 'static/v1.0.2/'
+
+Then in the static directory::
+
+ ln -s `pwd` v1.0.2
+
+Restart the web server to apply changes.
+