Quick links: Content - sections - sub sections

Trace: 1.1beta1

Jelix 1.1beta1

release : september 26th, 2008. svn 1100

Changelog since 1.0.x.

Main improvements

  • many improvements in jForms :
    • new 1.1 version of the XML format (the 1.0 version is still usable)
    • new controls : <hidden>, <captcha>, <group>, <choice>, <htmleditor>…
    • dynamically add/remove or enable/disable controls
    • possibility to know the updated values
    • Integration of jQuery, Wymeditor (wysiwyg html editor)
  • new jAcl2 API, simpler than jAcl
  • support of SOAP

Updating from Jelix 1.0.x

  • replace the lib directory by the one in jelix 1.1beta1
  • remove all the files in the temp/ directory
  • update your code as specified hereafter :
  • remove most of unuseful JELIX_LIB_* constants. Only JELIX_LIB_PATH, JELIX_LIB_CORE_PATH and JELIX_LIB_UTILS_PATH still exist.
  • Rename the “plugins” section to “coordplugins” in your configuration files
  • Because of misspelling methods and properties, there were methods and properties renamed:
    • template plugin formdatasfull renamed to formdatafull
    • template plugin formdatas renamed to formdata
    • jFormsBase::getDatas() renamed to getAllData()
    • jFormsDatasource::getDatas() renamed to getData()
    • jFormsDatasource::$datas renamed to $data
    • jFormsDataContainer::$datas renamed to $data
    • jResponseJson::$datas renamed to $data
    • jResponseRdf::$datas renamed to $data
    • jControllerDaoCrud::_checkDatas() renamed to _checkData()
  • The jDateTime::durationTo does not accept a jDateTime object as parameter anymore, but a jDuration object.
  • in your customized response objects, rename the _commonProcess method to doAfterActions
  • jForms :
    • in the templates, the {form} and {formfull} plugins have their list of parameters updated
    • The name of the root tag of the jForms files is now uniform and is then called “form”. Rename the “forms” tags into “form”.
    • The javascript API of jForms has been slightly updated : if you use it (but it is rare), you have to update your scripts.
    • The API of the jFormBase object has been slightly updated at the level of methods setReadOnly()
    • The id of the generated html form tags has changed (#423) and also the the ids of the controls to avoid collisions and “guess” it more easily.
  • The old syntax of the action selectors (with a “_” instead of a “:”) is no more supported. You have to change your old selectors. (for those who migrate from a < 1.0 version)

Details of changes

Enhancements, new features

  • all little improvements from 1.0.1 to 1.0.5 version
  • core:
    • added support of SOAP (#377)
    • improvements in error handler and exception handler (code refactor) (#467)
    • made little performance improvement during retrieving of the response object
    • new CRUD controller, jControllerDaoCrudDfk, for tables which have primary key based on 2 fields
    • new jResponseHtmlFragment, to send html fragment for ajax requests (#501)
    • new jResponseCmdLine, for CLI scripts, with a new coordinator jCmdlineCoordinator (#406)
    • first argument of jController::getResponse is now optional
    • jLocale: support multiline rendering in strings (#569)
    • Errors logs: messageLogFormat now supports %url% to log the url causing an error (#638)
    • Automatic detection of the time zone (#600)
    • new url engine basic_significant, based on the names of the modules/controllers/methods to generate the urls
  • jControllerDaoCrud
    • new _preCreate and _preUpdate methods (#627)
  • jResponseHtml :
    • you can now specify your own doctype, by overloading the new outputDoctype() method (#440)
    • renamed _commonProcess method to doAfterActions (however _commonProcess is still there for the compatibility)
    • new addLink method() (#657)
  • jForms :
    • possibility to add your own builder (XUL, extjs or other) under the form of a plugin (#434). The template plugins for jForms are now more more independents from the output format (then from the builder)
    • possibility to specify the builder at the level of template plugins (#583)
    • New version 1.1 of xml format of jForms including :
      • New <hidden> control (#212)
      • New <captcha> control (#248)
      • New <group> control (#549)
      • new <choice> control (#564)
      • New <hmleditor> control (#215). Abilities to choose your own engine. Added wymeditor, a javascript script to do html wysiwyg editing.
      • support of type=“html” on <input> and <textarea>: then jforms checks the content to avoid security issues like XSS (#381)
      • new way to specify datasources : <datasource> element and new attributes
      • possibility to indicate a parameter for method of dao for datasource (#555)
      • new <emptyitem> element for the menulist, allowing to specify the label of the empty option when the choice is not mandatory (#584)
      • support of the minlength and maxlength attributes for <secret> (#556)
      • support of the “required” attribute for <checkbox> (#635)
    • new method jForms::clean() to destroy all oldest forms in sessions
    • new method jFormsBase::getModifiedControls() to know fields which have been modified (#351)
    • new method jFormsBase::prepareDaoFromControl() (similar to saveToDao but the saving is not done) (#497)
    • new methods for jFormsBase : isReadOnly(), getRootControls()
    • Possibility to add or remove controls dynamically thanks to new methods of jFormsBase : addControl(), removeControl().
    • New methods in jFormsControl : setForm(), setData(), setReadOnly(), setValueFromRequest(), setDataFromDao()
    • Possiblity to specify the presence of a fields in the generated form, thanks to jFormsBase::deactivate(), and jFormsBase::isActivated(), and also jFormsControl : deactivate(), isActivated() (#518)
    • added support of maxlength attribute on input tags (#460)
    • important reorganizations in jForm's code.
    • new template plugin ifctrl (#601)
    • new template plugin formdatafull text reponses (#649)
    • {formcontrol} template plugin : it is now possible to specify a list of controls that we don't want in the loop (#652)
    • linebreaks are replaced by a <br> when displaying the content of a text area (#646)
    • new htmllight builder (#688) : it generates classical HTML and javascript, and the html builder now uses jquery.
  • jDao :
    • jDaoFactoryBase::countBy : possibility to use DISTINCT(#580)
    • new jDaoConditions::addItemGroup for groupby (#579)
  • jelix-www
    • the javascript scripts are now “compressed” for better performance
    • updated tooltip.js to 1.1 version
    • added wymeditor to do wysiwyg html editing (#214)
    • added jQuery + some plugins (date_input)
  • jAcl2: better acl API
    • new module jacl2_admin to manage rights with jAcl2, in a HTML user interface
  • jAuth:
    • added a “persistence” parameter to the AuthLogin event, containing the timestamp of the end of validity of persistence
    • jauth~login:form now redirects to the action indicated in after_login, if the user is already identified (#650)
  • jTpl:
    • new methods registerModifier and registerFunction (#138)
    • new method assignByRef (#137)
    • added support of multiline tags in templates (#55)
    • new plugin 'cycle' (#149)
    • minor enhancements in the compilator
    • enhancement of the image plugin
    • new plugin to integrate flash objects (#498, #585)
    • improvements on plugin meta_html (#553)
    • new plugin breadcrumb (#527)
    • new plugin link_to_remote (AJAX) (#30)
    • new modifer plugin number_format (#679)
    • for the compiled template plugins : new jTplCompiler::isInsideBlock() allowing to know if we are inside a block or not.
  • other plugins
    • coord plugin : history (#507)
    • zendframework plugin for the coordinator allowing to directly use utility classes of ZF (#652)
  • jelix:utils
    • new class jIniFileModifier
    • Added a class to do http request, jHttp, based on netHttp from clearbricks (#7)
    • new class jDuration, to use with jDateTime (#425)
    • Updated WikiRenderer (jWiki) to 3.1pre version
    • Added enhanced service handling (dependency injection) in jClasses (#523)
    • new jMessage class and jTpl plugin to manage messages in session and display them in templates (#644)
    • jMailer : possibility to use a template for the messages
    • jZone : replaced the getParam() method by param() (getParam is still here but deprecated) (#690)
  • added support of virtual jdb profiles (#410)
  • junittests module : possibility to run the tests in command line (#454)
  • jelix php extensions (gold edition) : new option for php.ini to deactivate the extension in virtualhost (#386)

Bug fixes

  • all bugs fixed from 1.0.1 to 1.0.5 version
  • jDateTime::durationTo method did a bad calculation of the duration, and now use the new class jDuration (#453)
  • Change content-type of jResponseJSon to application/json according to rfc4627 (#552)
  • jDaoFactoryBase::findBy no more ignores the limit argument when set to 0 (#665)

Other versions

en/changelog/1.1beta1.txt · Last modified: 2008/09/26 21:20 by laurent

Recent changes RSS feed Creative Commons License