diff --git a/doc/LS.entities.xml b/doc/LS.entities.xml
index 16c3623f..6eaec076 100644
--- a/doc/LS.entities.xml
+++ b/doc/LS.entities.xml
@@ -37,3 +37,5 @@
LSauthMethod">
LSselect">
LSsearch">
+
+
diff --git a/doc/LdapSaisie.docbook b/doc/LdapSaisie.docbook
index 0a795edb..b9c40656 100644
--- a/doc/LdapSaisie.docbook
+++ b/doc/LdapSaisie.docbook
@@ -1,10 +1,10 @@
-
%LS-entities;
-
+
%conf-entities;
@@ -21,10 +21,11 @@ book SYSTEM "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
+
]>
-
+
-
+
LdapSaisie
@@ -42,10 +43,12 @@ book SYSTEM "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd"
LdapSaisie
Version 0.3
-
+
&intro;
&install;
+&upgrade;
+
&conf;
diff --git a/doc/upgrade/upgrade.docbook b/doc/upgrade/upgrade.docbook
new file mode 100644
index 00000000..03c3c553
--- /dev/null
+++ b/doc/upgrade/upgrade.docbook
@@ -0,0 +1,439 @@
+
+
+
+Mise à jour
+
+Cette section de la documentation détaille la procédure de mise à jour d'une installation existante
+et regroupe des informations pratiques et utiles pour des montées de versions spécifiques entrainant par
+exemple une perte de rétrocompatibilité de la configuration.
+
+
+ Procédure de mise à jour
+
+
+ Installation via paquet Debian
+ Lors d’une installation par paquet Debian, la mise à jour est grandement facilité par le packaging:
+ Il vous suffit de mettre à jour le paquet ldapsaisie :
+apt update
+apt install ldapsaisie
+
+
+ Une fois l’application mise à jour, prêté attention aux nouveautés et point de vigilances décrite dans
+ la section suivante.
+
+
+
+ Installation à partir des sources
+ Lors d’une installation par à partir des sources, le script upgradeFromGit.sh permet
+ d’automatiser la mise à jour, à condition que vous ayez suivi la procédure d’installation à ce sujet.
+
+ Ce script s’occupera alors de :
+
+ Nettoyer working-tree Git des liens symboliques des fichiers locaux
+ (et éventuellement du thème) mis en place lors d’une précédente exécution ;
+ Vider le cache des templates ;
+ Mettre à jour le working-tree Git via un git pull
+ de la mise à jour ;
+ Installer des liens symboliques pour les fichiers locaux. En cas de fichier remplacant
+ un fichier livré avec l’application, le script vous notifiera en cas de changement intervenu dans le fichier
+ fourni avec l’application et vous permettra de le mettre à jour simplement votre fichier local (via un
+ vim -d) ;
+ Détecter des changements dans les fichiers MO (traduction) et de
+ déclencher dans ce cas un rechargement du serveur web pour prise en compte ;
+ Option : de compiler une version locale à jour de la documentation ;
+
+
+
+ Une fois l’application mise à jour, prêté attention aux nouveautés et point de vigilances décrite dans
+ la section suivante.
+
+
+
+
+
+ Mise à jour 2.4.1 -> 3.0.0
+
+Cette mise à jour majeure apporte de nombreuses nouveautés auxquelles il est important de prêter attention.
+Cette section ne parlera pas particulièrement de ces nouveautés, mais vous pouvez consulter le fichier debian/ldapsaisie.NEWS
+ pour cela. Cette section listera en outre les points de vigilances à avoir et les adaptations à apporter
+sur votre configuration et votre code personnalisé.
+
+
+ Fichier config.inc.php
+
+ ajout du paramètre ConsoleTable avec pour valeur par défaut sous
+ Debian /usr/share/php/Console/Table.php
+
+ ajout du paramètre public_root_url avec pour valeur par défaut sous
+ Debian /ldapsaisie
+ paramètre $GLOBALS['defaultCSSfiles'] : il est nécessaire de modifier les
+ URLs des fichiers listés : seul le nom du fichier doit rester, sa localisation sera détectée automatiquement. Par
+ exemple, $GLOBALS['defaultCSSfiles']=array('../light-blue.css'); devient
+ $GLOBALS['defaultCSSfiles']=array('light-blue.css');.
+
+
+
+
+
+ Fichiers CSS
+
+ corriger les URL des images : url(../../images/default/find.png) devient
+ url(../image/find). Pour identifier les fichiers CSS concernés, vous pouvez utiliser les
+ commandes suivantes :grep -Er 'url\(.*images' /etc/ldapsaisie/local/css
+grep -Er 'url\(.*\.(png|gif|jpg)' /etc/ldapsaisie/local/css
+ modification CSS page fatal_error (fichier base.css) :
+ #fatal_error devient #error
+
+
+
+
+ Fichiers PHP
+
+ LSsession :: redirect() devient LSurl :: redirect().
+ Pour identifier les fichiers CSS concernés, vous pouvez utiliser la commande suivante :
+ grep -Er 'LSsession *:: *redirect *\(' /etc/ldapsaisie/local/
+
+ Les inclusions de fichiers Javascript via LSsession :: addJSscript() doivent
+ être adaptées :
+
+ LSsession :: addJSscript('../../local/includes/js/LSformElement_eetelephone.js');
+ devient LSsession :: addJSscript('LSformElement_eetelephone.js');
+ LSsession :: addJSscript('../../local/includes/js/LSformElement_eetelephone.js');
+ devient LSsession :: addJSscript('LSformElement_eetelephone.js');
+ LSsession :: addJSscript('click-to-dial_view.js', 'local/includes/js/');
+ devient LSsession :: addJSscript('click-to-dial_view.js');
+
+
+
+ Pour identifier les fichiers concernés, vous pouvez utiliser les commandes suivantes :
+ grep -Er 'LSsession *:: *addJSscript\(.*local' /etc/ldapsaisie/local/
+grep -Er 'LSsession *:: *addJSscript\(.*\.\.\/' /etc/ldapsaisie/local/
+
+
+ Les inclusions de fichiers CSS via LSsession :: addCssFile() doivent
+ être adaptées : le nom du fichier CSS uniquememnt doit être conservé (pas de chemin vers le fichier).
+ Pour identifier les fichiers concernés, vous pouvez utiliser les commandes suivantes :
+ grep -Er 'LSsession *:: *addCssFile\(.*local' /etc/ldapsaisie/local/
+grep -Er 'LSsession *:: *addCssFile\(.*\.\.\/' /etc/ldapsaisie/local/
+
+
+ LSlog vs LSdebug : L’utilisation de LSdebug
+ est dépriorisée en faveur de LSlog. Ce dernier ajoute désormais la notion de
+ logger, permettant d’identifier la source des logs. Ce mécanisme permet la configuration
+ d’un niveau de log spécifique pour un logger donné, ainsi que la mise en place de filtres
+ au niveau des handers pour ne logger par exemple que certains loggers,
+ ou à l’inverse en exclure d’autres.
+
+
+ Pour vos classes personnalisées : si celles-ci héritent d’une classe standard, il est fort probable
+ qu’il soit possible d’utiliser des méthodes fournies par cette classe pour logguer au travers un
+ logger dédié (voir les méthodes log_debug, log_info,
+ …). À défaut, il est possible d’utiliser la classe LSlog_staticLoggerClass qui facilite
+ l’implémentation.
+
+
+ Pour vos &LSaddons; : il est conseillé d’utiliser un logger
+ LSaddon_[addon] dédié. Le logger peut facilement être récupéré de la
+ manière suivante : LSlog :: get_logger("LSaddon_[addon]")
+ Cette méthode retourne une référence au logger et il est possible d’appeler directement
+ une méthode de log, par exemple :
+ LSlog :: get_logger("LSaddon_[addon]") -> debug("message");
+
+
+
+
+
+
+
+
+ Fichiers templates :
+
+
+ Changement de l’inclusion des templates
+
+
+ Le cas des fichiers top.tpl et bottom.tpl
+{include file='ls:top.tpl'}
+
+[...]
+
+{include file='ls:bottom.tpl'}
+ devient :
+{extends file='ls:base_connected.tpl'}
+{block name="content"}
+
+[...]
+
+{/block}
+
+
+ Pages à l’état connecté uniquement (incluant le menu, l’entête…).
+
+
+ Fichiers avec entête HTML :
+
+
+ [...]
+
+
+ [...]
+
+