Raccourcis : Contenu - rubriques - sous rubriques
EN FR

Lors d'une migration d'une version Jelix à une autre, il y a toujours au moins ces étapes à faire :

  • Remplacer le répertoire lib/ de jelix par celui contenu dans le paquet jelix 1.1.
  • Ne pas oublier de remettre dans le nouveau répertoire lib/ vos éventuelles bibliothèques personnelles si vous en aviez mis dans l'ancien.
  • supprimer tous les fichiers dans le répertoire temp/votre_appli
  • adapter votre code en suivant les instructions indiquées pour chaque ancienne version de Jelix. Voir ci-dessous.

Mettre à jour depuis jelix 1.1beta1

  • jForms : ce que retourne getModifiedControls() dépend maintenant du moment où vous appelez la nouvelle méthode initModifiedControlsList(). Il faut donc appeler celle-ci après une initialisation du formulaire pour connaître plus tard après un submit les valeurs modifiées.
  • Amélioration de la méthode setFetchMode() sur la classe jDbResultSet. Les constantes de classes que l'on donne en paramètres ne sont plus celles de jDbResultSet mais celles de jDbConnection. Donc il faut utiliser jDbConnection::FETCH_CLASS au lieu de jDbResultSet::FETCH_CLASS

Pour cause de noms mal orthographiés, les propriétés et méthodes suivantes ont été renommées depuis Jelix 1.1beta1 :

  • plugin auth/auth : option profil -> profile
  • jDb::getProfil() -> jDb::getProfile()
  • jDb::testProfil() -> jDb::testProfile()
  • jAclDb::getProfil() -> jAclDb::getProfile()
  • jAcl2Db::getProfil() -> jAcl2Db::getProfile()
  • jDbConnection::$profil -> jDbConnection::$profile
  • jControllerDaoCrud::$dbProfil -> jControllerDaoCrud::$dbProfile

Vous devez donc changer les noms de ces propriétés et méthodes dans le code de vos contrôleurs ou autres classes.

Mettre à jour depuis jelix 1.0.x

Généralités

  • La plupart des constantes JELIX_LIB_* ont été supprimées (inutiles), sauf JELIX_LIB_PATH, JELIX_LIB_CORE_PATH et JELIX_LIB_UTILS_PATH. Aussi remplacez l'utilisation de ces constantes disparues par l'utilisation de JELIX_LIB_PATH ou JELIX_LIB_UTILS_PATH.
  • De même, les constantes JELIX_PLUGINS_PATH et JELIX_MODULE_PATH ont été supprimées. Ne les utilisez plus.

Réponses personnalisées

Dans vos objets réponses personnalisées comme responses/myHtmlResponse.class.php :

  • renommez la méthode _commonProcess() en doAfterActions().
  • remplacez <php>require_once (JELIX_LIB_RESPONSE_PATH.'jResponseHtml.class.php');</php> par <php>require_once (JELIX_LIB_CORE_PATH.'response/jResponseHtml.class.php');</php>

Configuration

Dans les fichiers de configurations defaultconfig.ini.php et autres config.ini.php, renommez la section [plugins] en [coordplugins].

Formulaires jForms

  • Dans les templates, les plugins {form} et {formfull} pour afficher un formulaire jForms ont leur liste de paramètres modifiée. Changez les donc en suivant leur documentation.
  • Dans les fichiers xml : le nom de la balise racine des fichiers est maintenant uniformisé et s'appelle <form>. Renommez donc les balises <forms> en <form>.
  • L'api javascript de jforms a été légèrement modifiée : si vous l'utilisez (mais c'est rarement le cas), vous devez adapter vos scripts.
  • L'api de l'objet jFormBase a été légèrement modifiée au niveau des méthodes : setReadOnly()
  • l'id de la balise form HTML générée a changé (#423) ainsi que les noms des ids des contrôles, pour éviter les collisions et les "deviner" plus facilement. Modifiez donc vos CSS ou votre code javascript qui font appel à ces balises.

Autres API

  • La méthode jDateTime::durationTo() n'accepte plus un objet jDateTime en paramètre, mais un objet jDuration.
  • Amélioration de la méthode setFetchMode() sur la classe jDbResultSet. Les constantes de classes que l'on donne en paramètres ne sont plus celles de jDbResultSet mais celles de jDbConnection. Donc il faut utiliser jDbConnection::FETCH_CLASS au lieu de jDbResultSet::FETCH_CLASS

Pour cause de noms mal orthographiés, les propriétés et méthodes suivantes ont été renommées :

  • template plugin formdatasfull renommé en formdatafull
  • template plugin formdatas renommé en formdata
  • jFormsBase::getDatas() -> getAllData()
  • jFormsDatasource::getDatas() -> getData()
  • jFormsDatasource::$datas -> $data
  • jFormsDataContainer::$datas -> $data
  • jResponseJson::$datas -> $data
  • jResponseRdf::$datas -> $data
  • jControllerDaoCrud::_checkDatas() -> _checkData()
  • plugin auth/auth : profil -> profile
  • jDb::getProfil() -> jDb::getProfile()
  • jDb::testProfil() -> jDb::testProfile()
  • jAclDb::getProfil() -> jAclDb::getProfile()
  • jAcl2Db::getProfil() -> jAcl2Db::getProfile()
  • jDbConnection::$profil -> jDbConnection::$profile
  • jControllerDaoCrud::$dbProfil -> jControllerDaoCrud::$dbProfile

Vous devez donc changer les noms de ces propriétés et méthodes dans le code de vos contrôleurs ou autres classes.

Mettre à jour depuis jelix 1.0 alpha ou 1.0 beta

  • L'ancienne syntaxe des sélecteurs d'actions, avec un "_" au lieu d'un ":" pour séparer le nom du contrôleur du nom de la méthode n'est plus prise en charge : il faut changer vos "vieux" sélecteurs.
  • Suivez les instructions de migration de chaque version 1.0 beta et 1.0, et suivez ensuite les instructions ci-dessus.