Raccourcis : Contenu - rubriques - sous rubriques
EN FR
La page correspondant à la dernière version stable est consultable dans le Manuel Jelix 1.8

Principales nouveautés apportées par la version 1.6 :

  • defaultconfig.ini.php a été renommé en mainconfig.ini.php. defaultconfig.ini.php est encore pris en charge mais est déprécié. (Olivier Demah)
  • un fichier localconfig.ini.php peut contenir des paramètres de configuration spécifiques à un environnement (dev, prod...)
  • Nouvelle méthode jApp::mainConfigFile() pour récupérer le chemin de la configuration principale.
  • Les plugins de template fournis par l'application sont maintenant prioritaires sur les plugins de template de jelix. On peut donc fournir un plugin de même nom pour remplacer un par défaut.
  • jDb/jDao:
    • Support complet de l'API oci dans le plugin oci pour jDb (Philippe Villiers)
    • jDbTools pour Oracle : utilisation des commentaires de colonnes pour générer les labels des formulaires (Philippe Villiers)
    • jDao: ajout d'un paramètre "pattern" dans jDaoConditions, similaire aux attributs "(select|insert|update)pattern" (Philippe Villiers).
    • nouvelle méthode jDbConnection::disconnect()
  • Ajout des méthodes addJSLinkModule() et addCSSLinkModule sur l'objet réponse html pour ajouter facilement des liens vers des fichiers JS et CSS situés dans des modules. (Eric D.)
  • jForms:
    • amélioration de l'affichage des données seules d'un formulaire (avec ctrl_value ou formdatafull):
      • les labels sont affichés comme en mode édition
      • ctrl_label n'affiche plus l'indicateur "required"
      • amélioration de l'affichage des contrôles <choice> et <group>
      • Ajout d'un booléen en paramètre de \jelix\forms\Builder\BuilderBase::outputControlLabel() et \jelix\forms\HtmlWidget\WidgetInterface::outputLabel()
      • le plugin formdatafull accepte maintenant le nom d'un builder jForms et ses options
    • possibilité d'avoir un label spécifique quand la valeur d'un champs est vide (emptyvaluelabel)
    • nouveaux attributs minvalue et maxvalue pour les <input> de type "integer" ou "decimal"
    • le plugin formdata accepte en paramètre le nom d'un builder jForms et ses options
    • Il est possible d'indiquer les labels correspondant aux valeurs d'une checkbox ex: <oncheckvalue label="yes" /> et <onuncheckvalue label="no" />
    • plugin ctrl_label : on peut indiquer en deuxième paramètre une chaîne de formatage pour sprintf
  • Les objets jEvent ont maintenant des setters/getters: il est possible de faire $event->something plutôt que $event->getParam('something').
  • jDateTime::toString() accepte maintenant une chaine de formatage en paramètre, compatible avec mktime().
  • nouvelle propriété jResponseJSON::$options qui contient les options pour json_encode (Couac)
  • Interne: nouvelle méthode jFile::parseJelixPath() permettant de traduire les raccourcis jelix en chemin complet (Brice)
  • Nouvelle classe jSoapObject
  • Urls significatives : on peut maintenant avoir un caractère ":" dans l'url que l'on définit.
  • Mise à jour de TCPDF
  • Mise à jour de jQuery 1.10.2 et jQueryUI 1.9.1

Notez aussi qu'il n'y a plus d'édition Gold du framework.

Nouveautés sur la version 1.6.1 et 1.6.2 :

  • Support de 'busytimeout' et des extensions sqlite dans le plugin sqlite3 pour jDb
  • jForms : les items de choice (éléments li) ont maintenant un id et une classe (jforms-selected et jforms-notselected)
  • jForms : un groupe peut maintenant avoir une case à cocher pour l'activer/désactiver
  • Possibilité d'utiliser la dernière version de PHPUnit disponible via Composer
  • Pour les contributeurs : une configuration vagrant est fournie dans le dépôt sur github, permettant de lancer les tests sans configurer sa machine.

Nouveautés sur la version 1.6.6 :

  • jForms: support des sources de données personnalisées ("class") pour les chargements dynamiques des champs de type menulist et listbox (attribut criteriafrom)
  • jDb : possibilité pour une connexion postgresql d'utiliser un service postgresql plutôt que host/login/password

Nouveautés sur la version 1.6.7 :

  • En raison de l'obsolescence de l'extension mcrypt de PHP, la classe jCrypt est dépréciée et disparaitra dans Jelix 1.7 et+. Préférez l'utilisation des fonctions openssl ou de la bibliothèque https://github.com/defuse/php-encryption
  • L'ancien builder de jForms (jFormsBuilderHtml) est également déprécié. Il disparaitra aussi dans Jelix 1.7.
  • jLog : le plugin syslog utilise maintenant la fonction syslog et non plus error_log. L'ancien comportement est disponible dans un nouveau plugin legacysyslog
  • jCache : nouveau plugin pour Redis

Nouveautés sur la version 1.6.8 :

  • jAcl2: nouveau driver dbcache. Il fonctionne comme le driver "db" existant, mais stocke les droits qu'il a calculé dans un cache avec jCache, pour améliorer les performances.
  • jCache: les clés peuvent maintenant contenir les caractères '/.-:'.
  • plugin file de jCache: la structure des fichiers générés par le plugin a été modifié afin d'avoir des chemins plus petit. Le paramètre file_name_prefix est maintenant utilisé comme nom de répertoire, non comme prefix de fichier.
  • plugin Redis de jCache : nouveau paramètre key_prefix pour ajouter automatiquement un prefix aux clés.
  • plugin Redis de jCache : nouveau paramètre db pour selectionner la base redis à utiliser
  • plugin Redis pour jKvDb: prise en charge également des paramètre db et key_prefix.
  • jInstaller : nouvelle méthode new method jInstallerEntryPoint::getEpConfigIni()

Nouveautés sur la version 1.6.9 :

  • jForms, HtmlBuilder : possibilité de redéfinir l'affichage des erreurs avec la méthode ouputError() dans les classes enfants
  • Possibilité de déclarer un module qui ne soit pas dans un répertoire de modules, via le paramètre de configuration <module>.path dans la section modules, en indiquant le chemin de son répertoire (expérimental)

Nouveautés sur la version 1.6.11 :

  • jAuth : support d'une action pour les erreurs ajax, via le paramètre de configuration on_ajax_error_action (voir la configuration par défaut du plugin jauth).
  • jDb, mysqli : support des connections en SSL

Nouveautés sur la version 1.6.14 :

  • Les plugins "redis" pour jCache et jKvDb, apparu dans 1.6.8, ont été renommé en "redis_php"
  • Nouveaux plugins pour Redis, nommés “redis_ext”, pour jCache et jKvDb, utilisant l'API de l'extension php redis
  • Nouveau driver expérimental de jDb pour SQL Server, “sqlsrv” utilisant l'API sqlsrv de PHP.
  • jForms : le champs de captcha est maintenant configurable, de telle manière que vous pouvez dorénavant implémenter son comportement. Voir la page sur les Captcha.
  • Plugin “recaptcha” pour le captcha de jForms

Nouveautés sur la version 1.6.16 :

  • jDao : l'attribut groupby sur la balise <method> est déprécié car son implémentation n'est pas compatible avec des versions récentes de mysql, ni avec les autres bases de données. Elle sera supprimée dans la prochaine version. Une erreur de type "E_USER_DEPRECATED" est générée si cet attribut est utilisé. Idem pour la méthode jDaoConditions::addItemGroup().
  • Une nouvelle fonctionnalité pour éviter la fuite de données sensibles dans les logs.
  • Support complet de Postgresql, sqlite3 et Mysql dans jDbSchema
  • Moteur d'url Basic Significant: possibilité de changer le nom du module dans les urls
  • Gestion des droits dans l'interface d'administration : il n'est plus possible de supprimer les droits de gestion des droits à un admin si il est le seul à les avoir.
  • Nouveau logger soapfile pour les logs SOAP
  • Support PHP 7.2

Nouveautés sur la version 1.6.17 :

  • Nouvel évènement AuthChangePassword quand jAuth::changePassword() est appelé
  • jInstaller : messages d'erreurs améliorés à propos des versions mal formatés
  • jResponseHtml : nouvelles propriétés pour le mode IE, viewport et metas
  • jResponseHtml : nouvelles méthodes addMeta() et outputMeta()
  • jRequest : nouvelle méthode isPostMethod()
  • jForms: prise en charge de génération d'un placeholder (avec le label)
  • jForms: possiblité de redéfinir le code HTML de l'aide des contrôles, au niveau du builder de formulaire
  • jForms: possibilité de configurer un décorateur d'erreur JS pour tous les formulaires
  • jForms: erreurs HTTP plus précises lors de la récupération des données de listes dynamiques (action jelix~jforms:getListData)
  • jMailer: nouveau mode de debug, permettant de forcer l'expéditeur et les destinataires pour tous les mails
  • jMailer: possibilité de stocker les accés SMTP dans profiles.ini.php
  • jInstallerBase::insertDaoData(): possiblité d'indiquer des données d'un autre module
  • Master_admin: avertissement de l'utilisation d'un mots de passes par défaut pour tous les utilisateurs
  • Ajout de la prise en charge d'une variable http_method dans le format des messages d'erreur

Nouveautés sur la version 1.6.18 :

  • prise en charge d'un nouveau fichier de configuration liveconfig.ini.php pour stocker les paramètres changeant de l'application.

Nouveautés sur la version 1.6.19 :

  • prise en charge des scripts install_1_6.php dans les modules qui veulent être compatible à la fois avec Jelix 1.7 (qui a une API d'installation différente) et Jelix 1.6
  • prise en charge d'un fichier upgrade.php dans les modules pour executer des processus à chaque mise à jour.
  • jForms : prise en charge des attributs capture et accept sur <upload>
  • jForms : quelques améliorations sur HtmlBuilder et WidgetBase (nouvelles propriétés etc) pour faciliter la création d'autres builder et widgets.
  • Nouveau plugins de templates dumptolog, vardump, ifctrl_value, json_encode, jurlpattern

Nouveautés sur la version 1.6.20 :

  • Nouveau scrit jelix inifile.php. Il permet de modifier un script ini en ligne de commande.
  • Controleur CRUD : injéction de l'enregistrement dans le template de détails d'un enregistrement, pour pouvoir accéder à des champs qui ne sont pas dans le formulaire.
  • La liste des fichiers de jQuery/jQueryUI est entièrement configurable. Ils ne sont plus indiqués en dur à divers endroit du code, mais uniquement dans la configuration, dans une nouvelle section jquery. Ce qui permet de changer plus facilement la version de jquery et jqueryUI
  • Datepicker : ajout de locales pour jForms.

Nouveautés sur la version 1.6.21 :

  • jAuth: nouvelle méthode canChangePassword() et nouvelle interface jIAuthDriver2 pour les drivers d'authentification
  • jAuthdb_admin: nouveaux évènements pour préparer les objets formulaires avant leur vérification : jauthdbAdminBeforeCheckCreateForm et jauthdbAdminBeforeCheckUpdateForm
  • Installer: support d'un fichier upgrade_1_6.php pour les modules supportant à la fois Jelix 1.6 et 1.7

Nouveautés sur la version 1.6.22 :

  • Nouveaux plugins jTpl : fetchtpl, tolog, ifctrlexists
  • jForms : nouveau widget pour afficher un selecteur de couleur. L'utilisation de ce widget doit être configuré manuellement : {form $form, $submitAction, $submitParam, 'html', array('plugins'=>array('couleur'=>'color_html'))}
  • Nouvelles méthodes sur jEvent pour récupérer facilement des valeurs de retours booléennes et des éléments de listes

Nouveautés sur la version 1.6.23 :

  • jForms : nouvel attribut controlclass pour indiquer quelle classe utiliser pour le contrôle
  • jForms : nouveau contrôle pour les uploads, avec une gestion des fichiers remplacés. Pour l'utiliser, ajouter l'attribut controlclass="jFormsControlUpload2" sur <upload>.

Nouveautés sur la version 1.6.24 :

  • jResponseBinary : ajout de la possibilité de supprimer le fichier après l'avoir envoyé
  • jFormsBase:iniFromDao(): un record DAO peut être donné en paramètre à la place d'un sélecteur.
  • Amélioration de la personnalisation de jauthdb_admin, avec de nouveaux évènements et variables de templates

Nouveautés sur la version 1.6.25 :

  • jForms htmleditor : prise en charge d'un paramètre $lang dans les urls indiquées dans la configuration, pour charger des fichiers JS en fonction de la langue de l'utilisateur
  • Nouveau plugins stdout et stderr pour jLog

Nouveautés sur la version 1.6.26 :

  • jMailer: Add smtp debug mode. New configuration property debugSmtpLevel

Nouveautés sur la version 1.6.27 :

  • jforms : nouveau widget imageupload
  • jforms : nouveaux widgets autocomplete et autocompleteajax
  • jInstaller : prise en charge des modules optionnels dans module.xml

Nouveautés sur la version 1.6.28 :

  • core: ajout de paramètres pour le cookie de session dans la configuration (cookieSecure, cookieHttpOnly, cookieLifetime, cookieSameSite). Il est maintenant httponly par défaut.
  • Core: autorise les caractères - et _ dans les noms de fichiers dans les selecteurs de fichiers
  • jIniMultiFilesModifier: ajout de isSection() comme dans jIniFileModifier
  • installateur: nouvelles methodes jInstallerEntryPoint::getSingleMainConfigIni() et getSingleLocalConfigIni()
  • jLocale: les locales peuvent maintenant être stockées dans <app>/app/locales, comme avec Jelix 1.7.
  • Sitemap: fonctionnalité de cache des urls. Configurer un profile de cache "sitemap", et appeler la nouvelle méthode hasUrlInCache() dans le contrôleur. Si elle renvoie true, le cache est valide et vous pouvez renvoyer l'objet reponse. Si hasUrlInCache() n'est pas appelé, le cache n'est pas géré.

Nouveautés sur la version 1.6.29 :

  • nouvelle méthode jAcl2::checkByUser(), pour vérifier les droits d'un utilisateur quelconque
  • nom de base de donnée autorisé dans les profiles pgsql qui utilisent un nom de service
  • nouvel evenement jformsPrepareToFillDynamicList pendant le remplissage des controls dynamique en ajax, afin de pouvoir préparer un formulaire créé à la volée en PHP.

Nouveautés sur la version 1.6.30 :

  • Nouveau script pour tester la configuration du mailer : php scripts/script.php jelix~mailer:test my.email[at]example.com. (remplacer le [at] par un arobase)
  • Nouvelle méthode jEvent::getParameters()
  • jforms: support d'un champs de saisie d'heure: "time" (nouvelle classe jFormsControlTime, et support de <time> dans les fichiers xml)
  • jAcl2 admin: ajout d'une confirmation lors de la suppression d'un groupe
  • jAcl2 admin: ajout d'un séparateur dans la liste des groupes affichée dans la liste des utilisateurs
  • Nouvelle méthode jAuth::setUserSession()
  • Nouvelles méthodes sur jServer: getDomainName(), getServerURI(), getPort(), isHttps()

Nouveautés sur la version 1.6.31 :

  • jauthdb_admin: ajout de l'autocomplétion dans le champs de recherche des utilisateurs
  • jInstaller, module.xml: autorisation de https:// en plus de https:// dans le namespace

Nouveautés sur la version 1.6.33 :

  • jacl2db_admin: petites améliorations dans l'interface de liste de droits pour que ce soit plus compréhensibles
  • Nouvelle option force_new dans les profiles pgsql pour forcer une nouvelle connexion

Contributeurs à Jelix 1.6 : Olivier Demah, Philippe Villiers, Eric D., JulienI, Couac, Brice Tence, Khena, René-luc D'hont, Adrien Lagroy de Croute, Joel Kociolek.