Announcing CMSMS Version 1.10 Beta1

The dev team is proud to announce the latest version of CMS Made Simple is now in beta. This version continues the development of the 1.0 series with some exciting new features that enhance the admin experience and make maintaining a site an even more efficient process. Our focus for this release is to make CMSMS Faster, Lighter, and Stronger. A number of old and redundant elements have been exchanged or removed to further streamline your favorite software.

The development team has once again contributed many hours of their time to create, enhance and rationalize the features and systems of this version. We are confident that as we turn this version over to the Beta testers that all the work that has been done will make CMSMS 1.10 the best version of this software yet.

By far the biggest changes in this release include adding support for lazy loading of modules, dropping TinyMCE in exchange for MicroTiny, and exchanging the Printing module with CmsPrinting.

Module Lazy Loading is a huge feature that will reduce system requirements and improve performance of your website. It means that modules that are not needed on a page will not be loaded (modules must undergo a few minor modifications to support this). Lazy loading also occurs in the admin interface. The admin navigation is cached for each user so that after the first request memory requirements are much smaller.

MicroTiny as the default WYSIWYG. MicroTiny is a faster, stripped, and trimmed down version of the tinymce editor, optimized for the functionality that is needed by content editors on a majority of sites. The full TinyMCE module will continue to be available from the module manager as a third party module.

CmsPrinting module which provides similar functionality without the bloat of the tcpdf library that proved to be used by only a small percentage of users. PDF Printing capabilities will continue to be provided by the use of a third party module.

A huge feature for 1.10 is the new preview functionality in the News module. Here you can select a page, and a template to use for the preview. This will be huge for the sites that use the news module extensively and provide a reference so that module developers can implement similar features into their modules.

To modernize the core system and streamline we have removed a series of old elements including: the depreciated {stylesheet} plug-in, stylesheet.php and the associated preference, The adsense plug-in and startExpandCollapse/startExpandCollapse from the core, (due to a potential license violation).

1.10 is now fully compatible with MySQL 5.5 which solves any database issues as your server hosts upgrade.

For ease of site and admin maintenance we have improved many features. We have reworked the installation process layout for better theme consistency. The installer itself (and the system information page) has been updated to issue warnings instead of errors for E_STRICT and E_DEPRECATED. Finally we’ve made modifications to the installer to better handle modules.

The ModuleManager module has been significantly revised, to allow installing older versions of modules, install multiple modules with one click, reduce system load, and install modules with one click after completing a search.

General enhancement of the admin interface has been a priority, starting with the login page. If you try to access an admin page when logged out, you will be auto-returned to that page upon login – great for those times your admin times out. Failure to login correctly now issues a login failed’ event to allow for custom handling (email notifications maybe) of failed login events. For our international users there is now the ability to view module help in english in the event that the translated help for a module is not up to date, or not clear. Additionally, the Systeminfo page has been redesigned for better readability

The auditing system has been significantly improved, we’ve rewritten the interface in smarty, added filtering, and IP address tracking for actions undertaken by a logged in administrator. Additionally there are now preferences for the lifetime of the admin log so that the history doesn’t grow extraordinarily large, and ensured that most significant actions in the admin interface generate audit entries to ensure that the information in the audit log is more useful.

For security we have added support for a separate admin URL that supports SSL, and added the ability to salt passwords for your admin users. As well, we’ve modified all cookie commands to ensure that the secure param is managed properly on SSL pages.

JavaScript support is further improved with the {cms_jquery} tag to include the jquery provided with CMSMS, and we’ve updated the JQuery and JQueryUI that is distributed in the core.

The {cms_stylesheet} tag has been improved to combine all stylesheets into one cached .css file by default, thus under normal circumstances reducing the number of requests to the server required by the browser to render a page.

There have also been a lot of improvements in content. In the page edit screen “page URL” is moved from “Options” tab to the “Main” tab. The cms_selflink tag now allows for width and height parameters when using images. The content tag now allows for a max_length parameter so it is possible to control how much content can go into any given area. The parent dropdown now optionally uses the menu text as opposed to the longer title that was showing. We have also revamped the content permission mechanisms, User Defined Tags now contain a description area just like Global content blocks, so you can include notes as to what they do. Global content blocks themselves now show the description in the summary listings for fast reference.

Along with a slew of bug fixes, we have also undertaken a number of housekeeping tasks to further improve the system and its efficiency: We have taken effort to minimize the core XXXXX.module.php files to result in less memory requirements for most actions. Version check now uses a new cms_http_request class to get past the allow_url_fopen limitation on some hosts. All distributed plugins have an assign parameter for better use in smarty. The NuSoap module has been removed as a core module.

We have also cleaned up a large amount of classes to facilitate growth, enhance security, and manage performance going forward. This includes getting rid of the last of the deprecated callbacks from the module class itself, getting rid of a number of member variables that are now redundant ($gCms→modules and the module→cms and module→smarty etc members). We have cleaned up the content classes a fair bit, and additionally ie6 relevant conditional styles and inline JS has been removed from the distribution.

The Beta Program

Our efforts to make the system faster, lighter, and cleaner come at a cost. We are aware that we have broken compatibility with some modules, plugins and user defined tags. Particularly modules that create content types, and those that use the $gCms→modules array which has been discontinued. We hope that module developers will take advantage of the beta period to update their modules for 1.10 compatibility. Also, although we have taken a lot of time and effort in testing and development to minimize problems, we are hoping that our users will take advantage of the beta cycle to assist us in weeding out any difficulties, upgrade issues, and other bugs that may remain.

I am also sorry to say that we will not be entertaining feature requests during the beta cycle. We feel that introducing new features in the middle of a testing cycle may impede our ability to release the final version of CMSMS 1.10 in a timely manner.

We encourage people to test this product at length, and to start building their new websites with this product. However, we cannot support people that decide to use a beta product on a production site, so please to minimize stress on yourself, the community, and the development team please only use this version on sites you are building, or for evaluation purposes.


As always, massive amounts of effort has gone into creating this release, freely donated by the members of the development team and other voluneers. Special thanks to:
Ronny Krijt, Rolf, Jeremy Bass, René Helminsen, Jeff Bosch, Robert Campbell
John Scotcher, Ted Kulp, Samuel Goldstein, Morten Poulsen, Goran Ilic
Mark Reed, Anne-Mieke Bovelett, Keith Lauchlan and to Jean-Claude Etiemble (jce76350)