This is probably not the right long-term solution. Ideally, I think it'd be
useful if elections could be marked private or public, and elections that are
public would be listed automatically, and private ones wouldn't appear.
It seems there are some remnants in the code that make it look like someone
was going to make a step 0, which would list the elections from the database,
but that was never done.
So, I've hard-coded what I wanted here, in hopes someone else comes along and
does it up right.
GNOME's Election committee was previously hard-code here, but the code is
more reusable if it is no longer hard-coded. The variables still default to
GNOME's details, but can be overridden with the configuration file.
With this change, schema.sql can be run directly from the mysql command line,
with a command such as:
$ mysql -u root -p -D dbname < .../vote/include/schema.sql
We're going to use this to run Conservancy project elections in future, and
as such we don't need records of old GNOME elections.
I'm leaving 2013 to use as a template.
It has simplejson as a requirement. Python >2.6 ships it by default
IIRC. There is a version of simplejson compatible with Python >2.4.
You also need to have MySQL set up via ~/.my.cnf as the file referenced
in the imports states.
This translation allows further modifications. We intend to change the
bylaws and this conversion shall facilitate making diffs and theme the
resulting documents more easily, i.e. HTML with CSS or LaTeX.
This is intended to be the conversion of the current bylaws in PDF
format. Unfortunately, the source of the PDF is not available, hence we
needed to convert from the binary PDF.
It was a bit messed up as the index.wml pointed to the very same
election twice, i.e. the election_id=1 *was* indeed the 2005-10
referendum. I guess that the plan was, back when the index.wml was
built, to reference the election_id=4, which is the term length
referendum, which didn't have a subfolder back then.
If you really want to send an email, you can run it with "-s" to not
accidentally flood someone. It reuses some logic from the other program but not nearly as much as I like. But it does the job for now.