random facts - and thoughts
It’s been a while so I think it’s time to write up a few things that currently occupy some bits of my mind.
1) Donations
I promised not to write about this any more, so just a big Thank You to everyone that that showed appreciation of what I do
2) Making use of all the architecture work I put into ZenMagick
Today I had the chance to show off some of the framework features that make ZenMagick tick. Involved are:
- Event handler
- Custom validation rules
- Use of services to update account information
- Best of all: no changes to core files!
The problem was to:
- Enforce collection of a phone number during guest checkout
- Default the first/last name of the guest checkout to the shipping (or billing) address
If you are interested in the single file solution to this check out this thread on the ZenMagick forum.
3) The database work in progress
One sideeffect that I haven’t talked about is that the new code will force me to finally add all the missing setXXX() methods to model classes. Yay! Also, since the changes will make use of automatic table <-> model mappings we’ll get update functionallity for all sevices pretty much for free!
I hope that being able to create and update data in the database will make the API even more valuable (I know that there are a few people out there waiting for this…)
4) Backwards compatibility
I have written about this before, so just to reinforce the message: 0.9.1 will be, using a single setting, mostly compatible with 0.9.0. Mostly, because there are a couple other changes (zm_product_href got another parameter, for example) that will require some minor changes. There are also a number of functions deprecated - I think I’ll add another setting to log/backtrace using those. That should make upgrading a lot easier.
5) Framework
There are actually still things that I won’t be able to do in a single release cycle. One thing I’ve been dreaming about would be to extract the actual core framework and make it a separate product(?).
The value of doing that would be to be able to concentrate entirely on making the framework as good as possible without the contrains of an actual application using it. I suppose that is something that could happen once ZenMagick hits the 1.0 version mark.
