Big changes
Today marks a big day for certain parts of the store.module. The store_transaction_save function was retooled and is less than half its original size.
Key points to get out of this are the increased emphasis on the use of the hook_ec_transactionapi. A good deal of the store transaction logic is now in store_ec_transactionapi and all the product/item logic in now in product_ec_transactionapi. This lead to some greatly simplified code to which is great for everyone.
Hopefully this will serve to help other things interact with transactions in a more meaningful way. A lot of the code removed was also related to role purchases and recurring payments which will be handled by sammys' modules currently being developed in 4-7--3. They should be able to interact in a similar fashion.
More changes to come
The next step Gordon has imparted will make the transaction interaction in this area even more useful. We will add pre save and post save passes to the transactionapi to allow even more fine grained control and interaction. Hopefully this will allow for a lot of workflow automation like payment completion events.
Comments
Some long-awaited
Some long-awaited refactoring!
Thanks neclimdul
This look great. We still
This look great. We still have a little ways to go in this area, but it will make things easier.
Good work.
--
Gordon Heydon
More changes.
I liked the outcome of this so much, I have also done the same to store_transaction_load() and store_transaction_delete()
--
Gordon Heydon
Where is this???
You might be asking.. "Hey, wait, where is this in my new release of E-Commerce?" Well... yeah its still sitting in head. We did a lot of work on different things for 5 but we also where doing a lot of seperate work on 4.7-3 cleaning up anonymous users, recurring products, better mail handling, etc. Thanks to Sammy that's all done and we want all those great changes in 5. Rather than giving you a crappy release with every feature in the world not working we're tuning a -3 release for 4.7 and 5 with the same features. Then once that's locked down we can merge these things back from HEAD to 5 and release a -4 with all sorts of new Drupal 5 goodness.
There's probably no one actually concerned with this but I'm getting it out for the record :)
-
James
A few people will wonder
A few people will wonder about the new simple shipping and flexicharge stuff. That would have gone in 5v3 if I was willing to put it back in 4.7v3. Instead it will be in the next 5v4