- New function: File::calculateExtension() to return a valid extension for a file.
- New function: Vars::getBrowserLanguages() to return an array with the browser languages
- New function: fixPath() to resolve relative paths ('/./', '//' and '/foo/..')
- New function: encodeAscii() to return the ascii value of a string
- New Datetime functions: getDatetimeObject(), Datetime::getMonth() and Datetime::getWeekDay()
- New class: Acl (access control list), to manage user permissions
- New class: Session, to manage user sessions
- New class: Data (the old Data class has been renamed as Db)
- New API classes, to retrieve data from other services (google, twitter, github, feeds)
- New class: Gettext_builder, to collect strings and create mo and po files
- New improvements related with html5 and css3 in classes Html, Css and Form
- The database and svn utilities have been dropped from admin module and are available in new independent modules
- New module gettext for change the gettext strings online
- Support for short urls (bit.ly, tinyurl, etc) in the format url
- The configuration is loaded in "includes/_index.php" and "includes/_file.php". "config/_index.php" and "config/_file.php" have been deleted
- The format html allows iframe, object and embed elements to insert external media (youtube, vimeo, flickr, etc).
- The function Templates::render() now admits an array of settings
- The functions Data::load() and Template::load() has been renamed as Data::file and Template::file
- The function textCutter() admits a string as limit (get the text until this string)
- Vars::getData() and Vars::setData() have been removed. Since now, the data is stored in Data class (Data::set()/Data::get())
- Vars::actionReturn() and Vars::actionWasExecuted has been removed. The action returned data is recovered using the array Data->action. Vars::actionWasSent has been renamed as Vars::actions() (returns the list of sent actions)
- UI improvements and new features in Admin module
- The class Css has been rewriten and only uses dollar symbol for user variables (not vendor prefixes).
- Updated the common libraries to latest versions: jQuery, jQuery UI and CkEditor
- New path to access to modules: "module/name-module"
- Changed the actions management. They are not executed inside any function but just included.
- Deleted "store" parameter of the function Db::select()
- Changed the function urlInfo. Now returns more information
- The function textCutter() has been rewritten
And fixed some bugs:
- The function Html::imgSrc() didn't work in some circumstances.
- The format "sort" didn't redistribute the rows on insert or update.
- The folders for the class Debug weren't configured correctly
- The function Data::delete() didn't delete the dependent relations
- Declared the function spl_autoload_register('__autoload') to be sure that always is called
- The group options in Db and Database class didn't work with multilingual formats
- The function Table::explodeData has been rewrited
- Templates::render() with an empty array as data works like a numerical array
- Fixed all formats to pass more than 400 unittests
- The class Cache didn't calculate the expiration time properly
- Fixed some bugs caching images and css files causing poor performance in server
- Fixed a Internet Explorer bug creating the gradients background using the class Css
- Fixed some bugs in class Image, Gd and Imagick and added quality setting