This program is licensed under the AGPL version 3, see file headers and the
AGPL-3.0 file for details.
The SelectCandidateWidget is an AGPLv3 derivative of Django's
SelectCheckboxMultiple, which was originally licensed under a BSD-style license.
See the header of vote/SelectCandidateWidget.py for details.
To install with symbolic links:
- Symbolic link to the contents of vote/media, from the root of your MEDIA_DIR.
- Symbolic link to the contents of vote/templates, from the root of your
TEMPLATE_DIR
- Follow the GenericInstall instructions below.
To install by copying:
- Copy the contents of vote/media/ to the root of your MEDIA_DIR.
- Copy the contents of vote/templates/ to the root of your TEMPLATE_DIR
- Follow the GenericInstall instructions below.
GenericInstall instructions:
- Precede with
To install with symbolic links'' or
To install by
copying''.
- Add the following line to urlpatterns in your site's urls.py:
(r'^accounts/login/$', 'django.contrib.auth.views.login'),
- Add the following line to urlpatterns in your site's urls.py:
(r'^admin/vote/results/', 'cevote.vote.admin_views.results'),
making sure it precedes the following:
(r'^admin/(.*)', admin.site.root),
- Add 'from vote.settings import *' to your site's settings.py . See comments
in vote.settings for vote settings documentation.
- To compile translations, run the following command from the vote
application's directory:
django-admin.py compilemessages
- To compile API documentation, run epydoc on the vote package.
Howto use:
- Install and configure the vote application and enable the admin interface
if it has not already been done.
From the admin interface:
- Create voting groups. Since this application was written mainly for Student
council elections, groups represent groups of students who can vote for a
certain position. Example, only Grade 10, 11 and 12 students (
Grade 10--12'' Group) can vote for the
Grade 10--12 representative'' position.
- Create positions, filling in the requested information and selecting the
groups that may for for the created positions.
- Create candidates for each position. You may optionally upload a picture.
- Create the desired amount of voters in each group and print the list of
created voters.
On election day:
- Have the voters queue. Once they have supplied credentials, randomly select
a UUID from the UUIDs created for their group and direct them to logon to
the UUID login page ('http://123.456.789.012/vote/' by default) and to
select their candidates. Inform them that they must thoroughly ensure that
they have correctly selected their choices before submitting since it is
impossible to uncast a vote.
After the elections:
- You may view the election results at any time by visiting
/admin/vote/results/ .