I realized only last week that the file change list I introduced to new releases a while ago didn’t actually work any more.
Reason was the broken incremental update build process which also generates that file. Since this is fixed, we do have the file change list again included, starting with the current 0.8.5 release.
As a tip for people that try to find out what actually changed in a file, I recommend either a tool like WinMerge , or even easier you can just browse the subversion repository.
Starting at the root of the ZenMagick source code repository you can drill down to any file and compare versions. Additionally, you can see the comments about the changes (I try to be good about that).
I just learned a new way of breaking your store:
- Login as admin
- Under Configuration -> Layout Settings change the value of the setting ‘Categories - Always Show on Main Page‘ to0 (zero)
This will break both zen-cart and ZenMagick unless a valid category is configured with the setting ‘Main Page - Opens with Category’.
interestingly enough, ZenMagick will work if the setting ‘Main Page - Opens with Category‘ is changed from the default 0 (zero) to an empty string.
zen-cart on the other hand will return something like the following in both cases:
1054 Unknown column 'CATEGORIES_ROOT' in 'where clause'
in:
[select cd.categories_name from zen_categories c, zen_categories_description cd where cd.categories_description LIKE '%-SITE_NAME-%' AND cd.language_id=1 AND c.parent_id = CATEGORIES_ROOT and c.categories_id = cd.categories_id and cd.language_id='1' and c.categories_status=1]
EDIT: I just realized that the above error is the result of a different zen-cart mod installed. It looks like it does work as expected - my mistake!
I just did a few bits & pieces to make the giftwrap mod work in a ZenMagick template. It’s not enough to make a plugin worthwhile (you’ll have to install the mod in any case), but if anyone is interested, drop me a line or leave a comment and I can email it to you.
I wrote a couple small functions to make the template code easier to read and as a side effect, checkboxes will also be prepopulated with the previous selection when going back in the checkout process.
With the release out of the way (at least until the first bug reports ;), I’d like to work on the phpBB support. In fact, I’d like to extend that a bit to make it easier to integrate any sort of other application.
The plan consists of two steps:
- Move all phpBB related code into a plugin
This will make core a bit smaller, reduce clutter and the plugin will hopefuly be in a form that would be easy to copy to integrate other applications
- Make the code actually work!
In practice, I might actually start with #2, as the code seems to be badly broken at the moment.
One thing I need to get my head around to start with is a clean way to switch database connections. I had a couple half-hearted tries over time and I am determined to get it right this time.
Any other suggestions for the next release are more then welcome…
I just modified zipdiff, a Java library to calculate differences between zip files. I use this library to generate incremental updates of ZenMagick and also to build the file change history.
This has been broken for a while and even though I could not get it to working again I figured out that it (or, ZipInputStream) crashes when trying to handle an embedded zip file.
I added an option to disable this feature. If anyone is interested I’d be more than happy to provide the modified source files. Seeing that the sourceforge code didn’t change for about 3 years I think there isn’t a lot of development going to happen anytime soon
So, the good news is that the next ZenMagick release will include the file change file again!
Just realized that I didn’t manage to build the new release. In fact, having 5 days off didn’t help but made me completely forget about the release!
On the plus side, I fixed a couple more bugs, so maybe it was a good thing after all (cheap rationalization, I know)
Either way, I’ll promise to be better this week (or at least I’ll try to 
It’s about time for another release and there’s some good stuff coming in 0.8.5.
The next version will include a number of bug fixes that we picked up working on ry.com.au, which goes to show that commercial work and Open Source can benefit from each other.
The last outstanding bug, a nasty rounding error when tax is included in prices got fixed yesterday, so I am quite optimistic that I’ll be able to build a release in the next 7 days. (Having the rest of the week off might help too 
Once the new Smarty plugin is out (together with 0.8.5), you will see that there is still lots to be done to make it really useful.
Once thing that could help is dropping PHP4 support. Since it is easy to add class instances to a Smarty context I think it’s a much more elegant way to convert the large number of functions used by the templates into class members (static?) rather than writing wrapper plugins for each and every function.
Please forgive me if I get rather exited about this despite the fact that it won’t be useful for some time. It’s the excitement to see that the ZenMagick architecture (MVC, remember?) is really working and it is pretty straightforward to integrate other templating engines into ZenMagick.
It also shows that plugins have very few limits in ZenMagick. I hope this is incentive enough so that other people start writing plugins.
I really like to read the blog stats for this blog. As bloggers out there will know it’s easy to see referers and search keywords used that bring people to my site.
One of the most common searches is for adding new pages to zen-cart and ZenMagick. I’ve written about that before, so I won’t repeat it. It amazes me though, that this is such a common problem. On the other hand it’s something that is not everyones thing to do, in particular with non existing or only very rudimentary PHP knowledge.
So, when filling the wiki I’ll try to keep an eye on the stats to make sure the articles I write bear some relevance to what people out there are actually searching for.
It’s actually also useful to (indirectly) pick up feature requests. Yesterday I saw a search for setting a static page as homepage - voila! already checked in 
ZenMagick has had the pleasure of being LOL’ed and I thought I’d share this in case you feel the site is to darn boring…
http://lolinator.com/lol/www.radebatz.net/mano/
http://lolinator.com/lol/zenmagick.radebatz.net/