FUEL CMS 0.9.2 Released!
We are happy to announce that FUEL CMS 0.9.2 has been released on GitHub. So what’s New?
CodeIgniter 2.0
There’s a lot to be happy about in the CodeIgniter Community as of late with the much anticipated release of CodeIgniter 2.0. FUEL CMS 0.9.2 uses this latest release of CodeIgniter (unlike 0.91 branch, which was using a CI 2.0 beta), so you can now take advantage of all the great new features.
Localization
The primary focus on the 0.9.2 release was localization. After the initial release on GitHub, it was great to see all the international interest in the project and became increasingly clear that FUEL CMS needed to support more then just English.
Previous to the 0.9.2 version, only select parts of the application were extracted out into language files. Our goal with FUEL CMS 0.9.2 was to extract all the application’s text and put it into language files. This includes the generated table columns and form fields from your models, as well as any text inserted by javascript. To do this, it required a few changes…
Form_builder Class
The Form_builder class is used throughout FUEL CMS to create the forms used to manage module data. To allow for the localized labels in the module forms, the lang_prefix property was added and has a default value of form_label_. The Form_builder class will now look for language key values of form_label_{field_name} if no label value is provided when creating a field.
Data_table Class
Similar to the Form_builder class, the Data_table class also has a lang_prefix property. This prefix is used for localizing the table column headers. The prefix is set in FUEL to be the same as the Form_builder’s which is form_label_.
The json_lang() Function
To allow for language values to be passed to the javascript, a json_lang() function was added to the MY_language_helper. This function creates a Javascript JSON object based on an array of language key values.
The js_localized Module Property
A new js_localized property can be added to your modules if you have have javascript that needs to use some localized text. You can provide it an array of language key values and it will be added to the list of language keys that get translated into a JSON object for your javascript files to consume. If you are using a jqx type controller that extends the BaseFuelController.js, there will be a localized property and a lang() method on the controller that provides access to the JSON language object.
User Specific Language
FUEL users now have the ability to select which language they want to use for the FUEL admin (if more then one language is installed).
We Need Your Help!
Although FUEL CMS 0.9.2 has gone a long way in facilitating localization, it does us no good until we are able to get the text translated for others. We really appreciate the efforts already on this front and will help facilitate as much as we can with these efforts going forward. To get started, we have created a FUEL CMS Languages GitHub repo specifically for users to help contribute to the localization efforts. Currently, there are only the English language files complete. We were fortunate enough to have a couple of users provide some Russian and German text for the previous releases, which we have included in the modules/fuel/language folder, but they do require additional translation.
Other Updates
There are a few other updates we’ll mention below:
- Dwoo Upgraded to the latest release from GitHub.
- Upgraded to jQuery version 1.5
- Updated version of MarkItUp! to latest 1.1.9.
- Addition of the table_headers property for modules. This allows you to limit the columns displayed by your module’s list view without the need of creating a list_items() method on your model (although, more complicated queries needing joins will still need there own list_items() method).
- Moved lang() function from string helper to MY_language_helper.
- Added a saved_page_state_max to the FUEL configuration to help limit the amount of space needed to save page state on the list view (e.g. for sorting and filtering) and help with issues with session cookie data filling up
- Moved cache and log folders to application directory per default CI 2.0 installation
- Added a MODULES_PATH constant
- Added the ability to send a new user email upon creation or password change
- Added ability to add other button actions to the module item’s form view with the item_actions module property
- Added toggle all on/off for user module permissions
- Added a :children active magic selector to the Menu class. For example, if you have a news page, it allows you to easily highlight the news in the menu for all URI locations of news and news/{any} (translates to news$|news/.+ in regular expression)
- Added ability to pass files ending in ‘.php’ to js() and css() functions
- Added a delimited render type to the Menu class (click here for forum post on subject)
- Added an the description field to the block module (click here for forum post on subject)
- Added multiple delete to users module
- Added dynamic binding of navigation label and page title fields
- Fixed default sorting columns of modules if no default_col value is specified
- Fixed issue with saving text an ‘&’ not being encoded properly(click here for forum post on subject)
- Fixed issue where browsing away from creating a new page would still display a warning that a field had changed even though no fields may have
Upgrading
It is recommended that you use git to do any updates. For general instructions on how to update FUEL CMS with your projects, follow this link to a forum thread on the subject. Also, there were some minor schema changes to the 0.92 release and there is a fuel/install/fuel_0.9.2_upgrade.sql file that will need to be run on your FUEL CMS database.
What’s Next for 0.9.3?
We have a list of features we’ve been keeping track of that we’d like to add for the next 0.9.3 release. Not all will make it of course, but probably highest on the list will be the addition of a true WYSIWYG editor as an option as well as a couple of other nice interface improvements. Stay tuned.
Need Help or Found a Bug?
As always, if you are have a question or suggestion about FUEL CMS, stop by our forums. Lastly, if you’ve found a bug, please submit a ticket on GitHub. Happy Coding!
Comments have been turned off for this post.