We are approaching the first milestone and the Elgg implementation of the Kukui Cup is in a pretty good state. Some of the things we set out to do for this milestone was to get commitments and actions going, get a Google Gadget inserted, and figure out a way to do CAS authentication. I'm happy to say that most if not all have been implemented.
Commitments and actions are supposed to be things a user can do to earn points in the dorm energy competition. They can be things that promote energy literacy like watching videos or making sure the lights in the common room are off if no one is there. Users should be able to commit to an commitment or action and have it posted on their profile. However, only admins can create them.
Creating a commitment in the admin interface.
List of actions
Getting a Google Gadget inserted was a little tricky. Something in the Elgg engine kept redirecting when I inserted the code into the HTML. Fortunately, there's an Elgg plugin called Xgadget that creates a widget. Right now, a user adds the widget to their profile and inserts the Google Gadget code. What we want is some widgets that contain pre-defined Google Gadget code. In a future revision, this can hopefully be fixed.
Xgadget widget with a Google Calendar embedded.
CAS (Central Authentication System) login for UH was another difficult feature. Ideally, we'd have the UH login system handle the username and password stuff so that we don't need to track it. Fortunately, there's a plugin for this as well! The cas_auth and ldap_auth plugins work together to log the user in. I'm able to successfully log in with my UH username and password. However, there was one little catch. Student directory listings are private and are unaccessible via LDAP. Thus, a student would currently be unable to use this system. We'll need to look into that in the future.
Login page with tiny CAS connection button
Finished user profile page.
About the next milestone, I'm considering making a switch to using a different framework. I've been wanting to look into Django for a while. There's a module called Pinax that'll add a lot of social networking functionality to the site. As soon as tomorrow's presentation is over, I'm planning on checking it out. We'll see if it's any better than Elgg.