With the nearing release of ImpressCMS 1.3.5 some nice looking features have been added. Now instead of just giving the whole list of items of the change log, I’ll highlight some of them in this article.
As a first highlight, I’d like to mention the feature "Edit and Remove blocks from user side", which apparently never worked. With IE9 you could see the icon in the block title and the menu pops up when clicking it but in the menu the only option working is the 'close' icon.
After investigating the problem, something in the core prevented the admin section from being viewed in an overlay - unless it was in an iframe. Using ahah causes a redirect. Which means that the team would have to come up with a modal ready admin theme, so that the header and everything in the modal isn’t loading any longer. That way a custom overlay script can be written to make the admin panel usable in an iframe. After all sorts tests in different OS’s and browsers, the item made it in the ImpressCMS 1.3.5 release.
A second highlight in this release is that a solution has been found to why the previously working multi-language site no longer filters the languages, when enabling the gzip compression.
A site running ImpressCMS 1.3 is normally configured to be multi-language. That works, but when going to The general settings and switching towards using gzip compression, all the texts using multi-lingual tags (en, fr, nl between square brackets) together on the page and the block where the languages can normally be selected only displays [ mlimg ].
This means that zip compression isn't really working, even with the option on, the page response headers indicate it is not compressed. The combination of setting zlib.output_compression_level to 6 and ob_start('ob_gzhandler') does not work. They simply cannot work simultaneously.
The problem is twofold - getting compression to work and then getting multi-languange to work with it. Getting the 2nd part to work is dependent on the icms::boot() process. The config option needed ($icmsConfig['gzip_compression']) is created when the services are loaded. In order to work, the gzip option needs to be triggered before the session service loads, but after the config service loads, which will mean changing the boot process. A temporary fix if you want multilanguage and gzip compression, you'll need to enable it on the server.
A last highlight is about error in include/pdf.php
If you try to use /root/include/pdf.php the function Generate_PDF ($content, $doc_title, $doc_keywords) you would get a fatal error, image /tcpdf/images/logo.gif not found.
The path to logo needs to be adjusted. After repointing this to the logo file of the site, the error should no longer occur.
Full List of Changes
For a full overview of the resolved issues in this ImpressCMS 1.3.5 release, you can view the log on the assembla website, where ImpressCMS development is done.