Version 22 (modified by Bhaavan Merchant, 12 years ago) ( diff )


Google Summer of Code 2012 Project



This project aims to create a roster tool for the CERT service. This would involve a web interface where one could view time scheduling of volunteers. Volunteers could be reassigned using drag and drop features on the timetable as per need and requirement. The interface will highlight empty slots which require filling to the user. The client may then choose to fill these slots manually or take advantage of the autofill functionality of the application which will fill the slots for you.


Student Details

Bhaavan Merchant
bhaavanmerchant [at] gmail [dot[ com

Mentor Details

Dominic König
dominic [at] nursix [dot[ org
Forked repo:

Meeting Dates

5 June 2012 - Google Hangout
13 June 2012 - Google Hangout
20 June 2012 - Google Hangout (1900 UTC)
27 June 2012 - Google Hangout (1900 UTC)
6 July 2012 - #sahana-meeting (1900 UTC)
11 July 2012 - Google Hangout (1700 UTC)
11 July 2012 - Google Hangout (1900 UTC)
18 July 2012 - Google Hangout (1900 UTC)


Finalizing idea
Establishing contact with CERT members for review
Setting up a controller and view for the rostering tool
Building a UI similar to the one in blueprint
Creating a prototype of the rostering tool.
CSS to match the blueprint
Database structure finalized
Database definition done
CERT Review meeting for feedback
s3db for joining tables
Dataflow from model to controller, controller to view and in reverse order established.

Project Goals and Timeline

24th AprilGaining a better understanding of the eden codeFixing Bugsdone
27th AprilGaining a better understanding of the CERT code. Creating a skeletal module for implementing the full code. This will be accessible through a REST UriCode commit, accessible from demo.sahana.lkdone
1st MayModified Proposal in conformation with the feedback receivedInteraction with the community to finalize the project Goals, and feedback; Modification of timeline if needed; Finalizing the details; Prioritizing the tasksdone
17th MayImplementing their demo examples and ensure proper functioningComparing all the required jQuery plugins, weighing their individual pros and cons, and choosing the right plugindone
4th JuneAdmin can login and view admin panelLogin system, and creation of the views for users, and admin including the admin panelstarted
10th JuneVolunteers' list populated from databasePopulate the volunteers list with volunteers which can be dragged and dropped to main grid75% complete
18th JulySuccess message on submission of new rosterStoring new data into database90% complete
20th JulyFix correct JSON parsingComplete roster write and read
24th JulyOption to search volunteers, and short list volunteers by filters Scaling of the volunteers list on the side panel
28th JulyAdmin and user differentiation using authPreliminary User profiles
3rd AugustA volunteer can declare that he will be unavailable from time A to B, and thus, he cannot be assigned a job in that timeImplementing features like suggest a volunteer, and declaring unavailability by volunteer
7th AugustProfile improvementsAdding features to the user and the admin profile
9th AugustError message for conflicting allotmentChecking the new allotments for clashes with previous job role allotmentlater
13th AugustImproved look and feel of the applicationWrite CSS
16th AugustBuffer periodComplete any pending work
18th AugustImproved code structureCode cleanup and commenting, shifting strings to T() etc.
20th AugustProject completionComplete documentation, and submit report
Note: See TracWiki for help on using the wiki.