DerekAllard.com

BambooInvoice 0.76 released

BambooInvoice

Tonight I quietly released BambooInvoice 0.76.  On the front, it isn’t much to get excited about, but it does feature an upgrade to CodeIgniter 1.5.3.  What is noteworthy about that is that 1.5.3 isn’t out yet - readers of this blog and Bamboo users are front of the line on this one ;)

It is mostly a series of bug squashes, but I did enhance the reporting functionality (pretty minor). 
BambooInvoice reporting window
What will be neat if I can find the time to build it is the graphing and charting functions that I’ve started.  There are a couple of new model functions in invoices_model to allow for those now.

If you are a Bamboo user, then take it for a test drive and let me know what you think!

This entry was made on and filed into BambooInvoice.

Comments

Michael wrote on

Thanks Derek….very juicy.

I’m not a professional programmer, but I am trying to make a web application.  I started learning php about 8 months ago.  BambooInvoice pretty much embodies what I want to have in my application: php, mysql, with an ajax flare.  Would you be able to suggest a roadmap?  Ajax is scaring me a bit right now, I haven’t read anything about that really.  I think I am getting by with the php and OOP.  Is there a way to use CI and develop now without the ajax right now but reduce my work in the future?  For instance is there something in particular with id’s, divs, names, or something that would leave the door open to bring in the ajax later more easily?

Derek wrote on

Terrific!  Welcome aboard.  I think you are completely on the right track.  Get the PHP basics down first, then enhance your knowledge by tearing apart other people’s stuff.  CodeIgniter has among the highest quality code I’ve ever seen, so you’ve gone staight for “the good stuff” on that one.

With respects to AJAX and javascriptlibraries, assuming you are already writing valid xhtml, there’s very little you need to do now to prepare yourself.  The libraries do make very heavy use of id’s in elements, but I’d just add them as you need them (if they aren’t already there), rather then littering your code with id’s that you might never need.

The other thing that I think is VERY overlooked is that people plan on building an app and they start with javascriptand ajax.  I think this is poor planning.  A much better model would be to build it completely without javascript, and then after its fully functional in that state, to go back and layer behaviours on top.  This way, you know your work is fully usable in javascript-less environments.

Looking forward to seeing what you build!

Yannick wrote on

Cool Derek. I see you have been able to put in a little work on Bamboo Invoice.

CI 1.5.3 eh? I assume this means a new release for the rest of us is near? :)

Yannick wrote on

Okay it seems my question about when the 1.5.3 release would be available to the rest of us was answered today when Rick announced it on the CI website. :)

Michael wrote on

Derek,
What’s the Email.php in the config directory?  This is not a standard file with CI, so I’m unclear to the purpose.  Does this file configure a library or something?

Derek wrote on

@Yannick - yeah, I snuck it out a few hours early :)

Hey Michael, very astute!  BambooInvoice offers the option to email invoices directly to your clients.  In order to do that, it leverages CodeIgniter’s email class.  This of course requires the user’s Email specific settings (SMTP server, username/password) to be used each time an email is sent.  I didn’t like the idea of my configure instructions having people go deeply into the code, so I decided to take advantage of this little gem buried in the userguide.

If you prefer not to set preferences using the above method, you can instead put them into a config file. Simply create a new file called the Email.php, add the $config array in that file. Then save the file at config/Email.php and it will be used automatically.

So to answer your question, yes, the file configures the global email settings, allowing the user to change them if the default PHP mail setup doesn’t work.  For example, if you are running Bamboo from a local server (ie: your desktop) and you need to send email through your ISP, that’s the way to go.

Yannick wrote on

Sneaky Derek… :)

I gotta take a look through your bamboo invoice code again to see all the changes you’ve made. I know I’ll learn a thing or two from the changes.

Michael wrote on

I’ve been playing with bamboo, trying to convert it over to the “YATS” platform.  Almost have it converted.  I was doing most of my development checking in IE7.  I log into bamboo ok in IE7.  I had some errors (javascriptnotices?) so thought I’d take a peek in Firefox.  Curiously when I try to log in via Firefox I can’t login, goes straight to the bamboo homepage, not even reporting log in user/password problems.  Any ideas what might be going on?

Derek wrote on

Assuming you haven’t changed the authentication class (I’m guessing you have not) I can’t think of any reason why it would stop working for you.  My suggestion would be to logout in every browser, close all open windows, and then try again.  If the problem persists, start echoing out authentication information to the screen to see where it breaks.

Good luck, and I’m thrilled to hear that you’re toying with Bamboo!

Michael wrote on

Actually, I get the same result when going to http://www.bambooinvoice.org  Have. you tried to go to your site with Firefox?

Derek wrote on

Have I tried the site in Firefox?... yes of course.

I can’t recreate what you describe, and I’ve never heard of that before.  Let me know if you learn more.

Iki wrote on

Hi Derek,

Searching for an open-source invoice solution the other day led me to Bamboo and I’ve got it installed and working… sort of. ;) I’ve got a bit of a weird problem that I posted about over here:

http://codeigniter.com/forums/viewthread/50935/

And someone suggested I come by here and ask you about it. Can you drop me a line please? I’m loving this thing, it does exactly what I need and then some!

doug wrote on

Thanks Derek, I have enjoyed using Bamboo for a few weeks now. Reporting & graphing will be nice and will really open up a lot of possibilities. An earlier poster asked about a road map. Have you considered putting up a list of featues you envision Bamboo eventually having? The only feature I am missing at this point is the ability to add time units & rates. (i.e. invoice for 4 hours of work at this rate, invoice 3 hours at this rate etc..)

cheers,

d.

Derek wrote on

Well, actually I did publish a bit of a roadmap.  Located very intuitively on the help page.

That said, I fully understand why programmers are hesitant to release roadmaps.  They are unreliable, and I don’t like telling people I’m going to try to release a feature, because then if I miss it, people get irritated.  Also, until you’ve actually taken that feature for a test, it is difficult to say if it’ll even be right for your needs.  For example, some of the feedback I get is to stop working on reports and build more other things.  Other people tell me reports is perfect for them… its a strange balance of needs.

But all that said, I am committed to more bug-squashing, better reporting tools, and more customization in the short-term future.

Andrey wrote on

Hi Derek,
I’ve use Bamboo to learn CodeIgniter. But the first thing that I notice is a stupid algorithm of authentification. To load whole table of users to find correct user entry instead to use simple sql statement ... hm. For small table it’s ok, but for huge number of users!?