Piste : • 1.1beta1
Wiki: Plan du site - Derniers changements - Back link
Table des matières
Jelix 1.1beta1 ¶
26 septembre 2008. svn 1100.
Principales évolutions ¶
- Nombreuses améliorations dans jForms :
- nouvelle version 1.1 du format XML (la version 1.0 reste toujours utilisable)
- nouveaux contrôles : <hidden>, <captcha>, <group>, <choice>, <htmleditor>…
- ajout/suppression à la volée de contrôles, ainsi que l'activation/désactivation
- dépendances statiques entre certains contrôles
- possibilité de connaître les valeurs modifiées
- Intégration de jQuery, Wymeditor (éditeur html wysiwyg)
- Nouveau système de droit jAcl2
- Support de SOAP
Mettre à jour depuis Jelix 1.0.x ¶
Il est important de suivre les instructions qui sont indiquées dans le manuel pour migrer de Jelix 1.0 vers Jelix 1.1
Détails des changements ¶
Améliorations, nouveautés ¶
- Toutes les petites améliorations apportées dans les versions 1.0 à 1.0.5
- core
- Ajout de la prise en charge de SOAP (donc jSoapRequest et jResponseSoap) (#377)
- Réécriture des gestionnaires d'erreurs et d'exception (factorisation de codes) (#467)
- amélioration des performances sur la récupération d'un objet response
- Nouveau contrôleur CRUD jControllerDaoCrudDfk, pour les tables dont la clé primaire est sur deux champs
- Nouvelle réponse jResponseHtmlFragment (#501)
- Nouvelle réponse jResponseCmdLine, pour les scripts en ligne de commande, avec un nouveau coordinateur jCmdlineCoordinator (#406)
- le premier argument à jController::getResponse() est maintenant optionel
- jLocale : possibilité d'inclure des sauts de lignes dans les chaînes localisées (#569)
- Erreurs : messageLogFormat supporte maintenant le pattern %url% pour inclure l'url courante dans les logs (#638)
- détection automatique de la timezone (#600)
- nouveau moteur d'url basic_significant, reposant sur les noms des modules/contrôleurs/méthodes pour générer les urls
- jControllerDaoCrud
- nouvelle méthode _preCreate et _preUpdate (#627)
- jResponseHtml :
- on peut maintenant spécifier son propre doctype, en surchargeant la nouvelle méthode outputDoctype() (#440)
- la méthode _commonProcess est remplacée par la méthode doAfterActions (simple renommage donc), mais _commonProcess reste utilisable pour la compatibilité (jusqu'à Jelix 1.2)
- nouvelle méthode addLink() (#657)
- jForms :
- possibilité d'ajouter son propre builder (XUL, extjs ou autre) sous forme de plugins (#434). Les plugins de template pour jForms sont maintenant aussi plus indépendant du format de sortie (du builder donc).
- possibilité d'indiquer le builder au niveau des plugins de templates (#583)
- Nouvelle version 1.1 du format XML de jforms, incluant :
- Nouveau contrôle <hidden> : support des champs cachés (#212)
- Nouveau contrôle <captcha> (#248)
- Nouveau contrôle <group> (#549)
- Nouveau contrôle <choice> (#564)
- Nouveau contrôle <htmleditor> : edition html wysiwyg (#215)
- Support de type=“html” sur <input> et <textarea>, qui permet de saisir du html avec vérification et nettoyage coté serveur des balises interdites pour éviter les problèmes de sécurité (#381)
- Changement de la manière d'indiquer une source de donnée, avec une nouvelle balise <datasource>
- Possibilité d'indiquer un paramètre à une méthode DAO au niveau des sources de données (#555): attributs criteria et criteriafrom.
- Nouvel élement <emptyitem> pour la balise <menulist>, permettant d'indiquer le label de l'option “vide” quand le choix est facultatif (#584)
- support des attributs minlength et maxlength sur <secret> (#556)
- support de l'attribut required sur <checkbox> (#635)
- Nouvelle méthode jForms::clean() pour détruire les formulaires trop vieux en session
- Nouvelle méthode jFormsBase::getModifiedControls() (et setModifiedFlag()) pour savoir les valeurs modifiées (#351)
- Nouvelle méthode jFormsBase::prepareDaoFromControls(), une alternative à saveToDao() (#497)
- Nouvelles methodes sur jFormsBase : isReadOnly(), getRootControls()
- Possibilité d'ajouter et enlever des contrôles à la volée, grâce aux nouvelles méthodes de jFormsBase: addControl(), removeControl().
- Nouvelles méthodes sur jFormsControl : setForm(), setData(), setReadOnly(), setValueFromRequest(), setDataFromDao()
- Possibilité de spécifier la présence d'un champs dans le formulaire généré, grâce à jFormsBase::deactivate(), et jFormsBase::isActivated(), ainsi que jFormsControl : deactivate(), isActivated() (#518)
- support de l'attribut maxlength sur <input> (#460)
- importantes réorganisations dans le code de jforms
- nouveau template de plugin ifctrl (#601)
- nouveau template de plugin formdatafull pour les reponses text (#649)
- plugin de template {formcontrol} : il est maintenant possible d'indiquer une liste de contrôle que l'on ne veut pas dans la boucle (#652)
- remplacement des sauts de lignes par un br lors de l'affichage du contenu des textareas (#646)
- nouveau builder htmllight (#688) : il génère du HTML + javascript classique, tandis que le builder html utilise maintenant jquery.
- jDao :
- jDaoFactoryBase::countBy : possibilité d'utiliser DISTINCT (#580)
- nouvelle méthode jDaoConditions::addItemGroup pour les groupby (#579)
- jelix-www:
- les scripts javascripts fournis sont maintenant “compressés” pour de meilleure performance
- Mise à jour de tooltip.js en version 1.1
- Ajout de wymeditor pour faire de l'édition HTML wysiwyg dans les pages HTML (#214)
- Ajout de jQuery et de plugins jQuery (date_input)
- jAcl2 : nouveau système de droit plus simple que jAcl.
- Nouveau module jacl2_admin permettant de gérer les droits dans une interface HTML
- jAuth :
- ajout d'un paramètre “persistence” à l'évenement AuthLogin, contenant le timestamp de la fin de la validité de la persistence
- jauth~login:form redirige maintenant vers l'action indiquée dans after_login, si l'utilisateur est déjà identifié (#650)
- jTpl :
- nouvelles methodes registerModifier et registerFunction (#138)
- nouvelle methode assignByRef (#137)
- les tags jtpl peuvent maintenant être écrits sur plusieurs lignes (#55)
- nouveau plugin “cycle” (#149)
- petites amélioration mineurs dans le compilateur
- améliorations sur le plugin image
- nouveaux plugins pour intégrer du flash (#498, #585)
- amélioration du plugin meta_html (#553)
- nouveau plugin breadcrumb (#527)
- nouveau plugin link_to_remote (AJAX) (#30)
- nouveau plugin modifier number_format (#679)
- pour les plugins compilés de templates : nouvelle méthode jTplCompiler::isInsideBlock() permettant de savoir si on est à l'intérieur d'un block ou pas.
- autre plugin
- plugin history pour le coordinateur (#507)
- plugin zendframework pour le coordinateur, permettant d'utiliser directement les classes utilitaires de ZF (#651)
- jelix:utils
- nouvelle classe jIniFileModifier
- Ajout d'une classe jHttp, pour faire des requêtes HTTP (#7)
- Nouvelle classe jDuration (#425)
- Mise à jour de WikiRenderer (jWiki) à la version 3.1pre
- jClasses : ajouts de méthodes pour l'injection de dépendance (#523)
- nouvelle classe jMessage et son plugin de template associé pour afficher des messages entre 2 actions (#644)
- jMailer : possibilité d'utiliser un template pour les messages (#530)
- jZone : remplacement de la méthode getParam() par param() (getParam() reste utilisable, mais déprécié) (#690)
- Ajout du support de profils virtuels dans jDb (#410)
- module junittests : possibilité de lancer les tests en ligne de commande (#454)
- extension php jelix (gold edition) : nouvelle option pour php.ini pour désactiver l'extension dans un virtualhost (#386)
Corrections ¶
- Toutes les corrections apportées dans les versions 1.0 à 1.0.5
- La méthode jDatetime::durationTo calculait mal les durées. Utilise maintenant la nouvelle classe jDuration (#453)
- Correction du content-type dans jResponseJson, pour qu'il soit en accord avec la rfc4627 (#552)
- jDaoFactoryBase::findBy n'ignore plus l'argument limit à 0 (#665)