CodeIgniter and Datamapper ORM base installation

More and more at work, I’m using CodeIgniter (actually version 2) coupled with Datamapper ORM for quick projects. I even completed a fairly substantial project (the Careers page for PetRelocation.com) with probably 90% of the work being done in an 8 hour period… solo. The most difficult aspect of the whole thing was having multiple file uploads required for the page.  For these projects, I created base framework with CodeIgniter 2 and Datamapper ORM already integrated… plus some of the config files already set, like the autoloads.

So in the effort of being a good community member, I’m offering the CodeIgniter/Datamapper base that I use.

Weekend project – Auto Missing Child Alerts

Last week I saw some posts in my Twitter stream that were retweets of a missing child alert in the UK. It made me wonder if there was something that would do this automatically, so that a tweet would get sent from a user as soon as an alert was issued.  Kind of like the Emergency Broadcast System but for social networks.  I searched over a few days and couldn’t find anything, so I thought I’d build my own.

The guts of the program literally took a few hours yesterday, since I’m already aware of how to access Twitter and Facebook’s API.  I think the big hurdle is convincing people to essentially hand over their accounts to a service… with the knowledge that an alert post could come up at any time.  Also, trusting that the service won’t use the information for “evil”.  If it all works, however, it could be a huge boost to the Amber Alert system.

Imagine, the instant an alert is issued, it’s posted to multiple accounts and in front of millions (10s of millions?) of people.  One argument might be, if you follow 50 people who signed up for the service, you’d get 50 of the exact same message in your stream… but really, it only happens infrequently, and it’s to help find a missing and endangered child. People should be able to overlook that.

Right now, I think I have it working well… but I’ve only been able to test it with my accounts. I’m not sure how it will scale, but it seems to be okay. Here are some details of how I have it setup…

First, if you login using Twitter, I’m saving your “twitter name”, “oauth token”, and “oauth secret token”.  With Facebook, I’m saving your “name”,”oauth token”, and “facebook id”, and asking for offline posting privileges.  Then I have a table that sets whether you have the service active or not, keyed off your unique id. After you activate the service, you’re done.

After that, I have a script that checks for new Amber Alerts… though I’m hoping to add in international alerts.  If it finds a new one, it sends out a post with a link to the Amber Alert page. I also built a sort-of “panic button” script, in case something goes horribly wrong… or the site is compromised… I can run it and the whole system is wiped. Contingency plans, you know.

So it’s all at AutoAlert.Me. I’m probably not going to publicize it anymore than this post and tweet, and just having it running for my own accounts… but it’s there if others want to use it too.