CHeMS-0x03
2008-02-05 18:45
Since the third release (fourth also considering the 0.2RC1) the CHeMS versioning
system has been changed from the decimal notation to the hexadecimal one. Here is
a quote from the relative FAQ:
Apart of this geeky change, the following list of improvements has been done:
An hexadecimal notation is used in order to mark the CHeMS releases. In an hex number there are three place where to store version informations: major number goes befor the 'x' and minor numbers goes after the 'x'. So, 0x01 means major 0 and minor 01. Bugfixes releases are released by using the previous release hex number followed by an underscore and the ID (in a decimal form) of the bugfix release, e.g., 0x01_1 means the first bugfix release of the 0x01 version. That's all.
Apart of this geeky change, the following list of improvements has been done:
- New format operators added, %[pages_total] and %[posts_total], which return the number of elements in its corresponding (pages/posts) .inc file. The format operator has been implemented into the respective modules and not inside the CHeMS core.
- We have now a logo, an header image, and several meta icons. Special thanks to Leonardo Taccari (aka leot).
- A first stub of the guide has been (finally) made (docs/GUIDE).
- Several documentation improvements. New FAQs has been added and the old has been changed relatively to the CHeMS changes.
- The getModule() has been extended and renamed to getModFunc()
- New module
showfiles
: it's not a real geek module but may be useful in some case. The pages generated are, of course, XHTML-1.1 compliant - Added the
core
theme which should be used as start point for all new themes - Added the monochrome theme. It's the new CHeMS default theme
- All previous themes has been removed
- Changed
page_body
andpage_title
IDs to XHTML classes - New module
rssfeeds
which consists essentially of a link to an XML page (the feeds) generated dinamycally. It's loaded by default into theposts_mgr
module. The feeds RSS version is 2.0 - The insert() function has been rewritten from scratch. Objects insertion is much intuitive and easy to handle for both CHeMS core and modules which can be configured individually for each object (by using the array pairs key/value)
- The navigation bar has been modularized in order to make CHeMS very modular and flexible
- The constants for pathname and files has been (finally) addedd into the index.php file
- Added the
categories
module which allow to specify tags for both pages and modules - A file (docs/MODULES) with the descriptions of modules currently released with CHeMS is now provided
- New option MODULES_SECURE which prevents getting pages from modules internals links when the modules are not loaded. This required a new function: modisload()
- Added an easily configurable multi-color theme: ``colorlite''. See the
README file into the
themes/colorlite/
directory for more informations. - Added support for configurables multiple modules instances (identifiers)
- New ``meta tags'' instance of the freehands module. It includes by default the following tags: XHTML 1.1, CSS2, Any browser, RSS 2.0, of course CHeMS 0x03 and CC BY-SA 3.0.
- Large amount of changes into the whole sources tree. CHeMS is now full modularized (including posts and pages visualization). The requests types system has been totally removed in favour of the modularized approach. Lots of options has been renamed, removed and added. The modules system has been improved and a new function modload() has been added. The core file (main.php) includes lots of changes (it's smaller). CHeMS is now faster and geekest!
- New core implementation: almost the whole CHeMS core (main.php) has been modified in order to fit the new approach without request types. All the routines has been improved and the modules has been modified in order to be compliant with the new implementation
- The new core implementation allowed to remove the following functions: gnameetAllModules(), getAllSideModulesIdx(), getModPage()
- The old default request type option has been replaced by the DEF_MODNAME one (since there is not the requests types system, anymore)
- Add the modules failure return values CHEMS_MODULE_FAILURE
- Removed the force_lmenu and force_rmenu feature from themes
- Module system has been reimplemented. It's now more flexible, using the array() construct it's possible to easily add new options to the core without have to modify the actual configuration or modules.
- Added the file/md5 pair recognition for getting local files content. This
allow modules to call internal files directly from the index.php in order
to still get the CHeMS paths constant without have to guess them (as the
old
rssfeeds
module did) - Removed all classes (src/classes.php file deleted)
- The options CHEMS_HEADER_TITLE and CHEMS_DESCRIPTION has been merged into one option, CHEMS_HEADER
- Various fixes, improvements and code cleanups