Voting Tool
Description
Participating at the erasmus intensive program (IP) 2011 in Virrat - finland, we developed a webbased live-voting-system with Grails as backend.
As it works satisfying and there have been some requests, we decided to put the sources online under the terms of GPL
Please note, that this project has been developed in a very short time and was intentionally only for the purpose to show a working system at the end of the workshop - therefor it may lack some features. The main functionallity and some nice features however have been implemented.
Featurelist
- Creation of questions with options (single- or multiple choice)
- Activation and deactivation of questions
- automatic user guidance
- automaticly updated result graphs (graphs generated using jfreechart.)
- GPL licensed
Setupn
The sources can be cloned from the following git-repository:
git clone http://deroberling.de/git/votingTool/
Having a working Grails-Environment installed the votingTool should work right out of the box by executing:
grails runApp
in the projects directory.
Usage
Workflow for Users (Voter):
- navigate to http://server-ip:8080/voting/question/ , where you will find the first question
- after having voted the user will be redirected to the results of this question which will automaticly self-update every 5 seconds
- when the admin activates a new question all users will (with the next refresh) be redirected to that new question.
The administration interface can be found at: http://server-ip:8080/voting/question/list/
as default user we implemented the user admin with password grails - which of course you should change. As of the prototyp manner of this software this is currently done directly in the grails-app/conf/BootStrap.groovy.
Workflow for the admin:
- Create new Questions (single- or multiplechoice) with either radioboxes (for singlechoice) or checkboxes (for multiple choice)
- activate new Questions (the current active question will be deactivated)
- this question will be the next one shown to the audience
Make shure to have at least one question active as otherwise users will be redirected to non-existing pages....
Improve the System
There are some really ugly things occuring in the sourcecode - therefor don't hasitate to ask for write-permission to the upper git to push your improvements.
Some improvements we thought about:
- internationalisation
- config-file for the hardcoded parameters
- sets of questions
- using ajax for refresh on clientside