Internationalized BambooInvoice revisited
July 10th, 2007
Internationalizing BambooInvoice? Yup.
Again? Yup!
Seems I’ve had quite a love/hate relationship with internationalizing my application, but today I’m proud to say, that despite rumours to the contrary, an internationalized, and localized BambooInvoice is going to happen. Actually, it’s happening as you read this (here’s my local installation)...

BambooInvoice 0.8.0 will be added to the online demo shortly, and the code released a matter of days after that.
I’m finished implementing new features, and what is left is the major job of finishing off the language variables for internationalization (I’m about 40% through right now). I’m proud of the improvements that Bamboo has seen over the last few days. As a small sampling, there has been a significant overhaul to the way languages are handled, and this will actually have a trickle down directly into the CodeIgniter codebase (the ability to autoload language files). The symbol of curreny ($ vs £ vs ¥) is now customizable. Long standing bugs and half-implemented features (I’m looking at you password-reset) are fixed up or added in.
A full new update path is now built in. Inspired by how smoothly ExpressionEngine handles updates, I’ve decided to follow a similar path. In essence, each Bamboo version is now identified via a version number, and when a new release is out, just hit the “update” page, and Bamboo will intelligently and silently make changes to the underlying database structure.
This is on top of the reports I mentioned in an earlier post of course. I’ve implemented an SVG/Canvas charting library that dynamically draws your yearly invoice totals and taxes for you. I absolutely love the end result, but it took a hundred thousand hours to get working right in IE. Does anyone still use IE? Anyhow, check out the new reports feature. Yeah, May was a good month for me ;)
It was fun to dig into the guts of prototype and javascript again. To anyone who still thinks of javascript as a toy language…think again. It is often the right tool for the job - and with libraries like prototype and scriptaculous to build on, it is very much a mature tool. Of course its buggy, but all environments are. Have you tried testing for readable files on various server setups lately? At EllisLab we have… and it’s a monumental pain; and PHP is largely considered among the most stable environments available.
There’s also been significant compatibility improvements, and an installation routine that checks for most requirements before the installation takes place. Also, more of the usual code cleanup - getting rid of un-needed files, and a few cosmetic changes here and there.
Also of note, CodeIgniter itself has also undergone some pretty significant changes recently in the subversion repository, and should see at least a few more in the next few days and Derek and I go on a bug hunt.
This entry was made on July 10th, 2007 @ 16:14 and filed into BambooInvoice.

Sean wrote on July 11th, 2007 @ 3:09
That was quick Derek, impressive.
Cant wait to get my hands on this release.