Version 26 (modified by 12 years ago) ( diff ) | ,
---|
Google Summer of Code 2012 Project
Description
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.
https://google-melange.appspot.com/gsoc/proposal/review/google/gsoc2012/bhaavanmerchant/8005
Blueprint
http://eden.sahanafoundation.org/wiki/BluePrintRoster
Student Details
Bhaavan Merchant
bhaavanmerchant [at] gmail [dot[ com
0091-9552435405
Repo: https://github.com/bhaavanmerchant/eden
Mentor Details
Dominic König
dominic [at] nursix [dot[ org
Forked repo: https://github.com/nursix/eden
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)
25 July 2012 - Google Hangout (1900 UTC)
Progress
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
Date | Goal | Measure | Progress |
24th April | Gaining a better understanding of the eden code | Fixing Bugs | done |
27th April | Gaining a better understanding of the CERT code. Creating a skeletal module for implementing the full code. This will be accessible through a REST Uri | Code commit, accessible from demo.sahana.lk | done |
1st May | Modified Proposal in conformation with the feedback received | Interaction with the community to finalize the project Goals, and feedback; Modification of timeline if needed; Finalizing the details; Prioritizing the tasks | done |
17th May | Implementing their demo examples and ensure proper functioning | Comparing all the required jQuery plugins, weighing their individual pros and cons, and choosing the right plugin | done |
4th June | Admin can login and view admin panel | Login system, and creation of the views for users, and admin including the admin panel | started |
10th June | Volunteers' list populated from database | Populate the volunteers list with volunteers which can be dragged and dropped to main grid | done |
18th July | Success message on submission of new roster | Storing new data into database | done |
20th July | Fix correct JSON parsing | Complete roster write and read | 50% complete |
24th July | Option to search volunteers, and short list volunteers by filters | Scaling of the volunteers list on the side panel | |
28th July | Admin and user differentiation using auth | Preliminary User profiles | |
3rd August | A volunteer can declare that he will be unavailable from time A to B, and thus, he cannot be assigned a job in that time | Implementing features like suggest a volunteer, and declaring unavailability by volunteer | |
5th August | Making Job roles + and - functional | Working functionality | Completed |
7th August | Profile improvements | Adding features to the user and the admin profile | |
9th August | Error message for conflicting allotment | Checking the new allotments for clashes with previous job role allotment | later |
13th August | Improved look and feel of the application | Write CSS | |
16th August | Buffer period | Complete any pending work | |
18th August | Improved code structure | Code cleanup and commenting, shifting strings to T() etc. | |
20th August | Project completion | Complete documentation, and submit report |