Formatting and whitespace changes in README to make it more markdown-y.

This commit is contained in:
Bradley M. Kuhn 2013-12-18 19:04:25 -05:00
parent a4a320a6b6
commit a20b46f973

79
README
View file

@ -1,4 +1,4 @@
Setting up an election: # Setting up an election
0. vote/include/election-sql.php expects a secret config file that exists 0. vote/include/election-sql.php expects a secret config file that exists
only on the server and is included as PHP code. It's hard coded currently only on the server and is included as PHP code. It's hard coded currently
@ -6,64 +6,63 @@ Setting up an election:
The file should look something like this: The file should look something like this:
<?php <?php
$mysql_host = "localhost"; $mysql_host = "localhost";
$mysql_user = "someuser"; $mysql_user = "someuser";
$mysql_password = "somepassword"; $mysql_password = "somepassword";
$mysql_db = "somedb"; $mysql_db = "somedb";
$committee_name = "The Vote Masters"; $committee_name = "The Vote Masters";
$committee_email = "elections@example.org"; $committee_email = "elections@example.org";
?> ?>
1. When I deploy, I create an account for the election, as the mysql root user: 1. When I deploy, I create an account for the election, as the mysql root user:
mysql -u root -p mysql -u root -p
Password: <MYSQLROOTPW> Password: <MYSQLROOTPW>
Then Run these commands at the mysql> prompt: Then Run these commands at the mysql> prompt:
CREATE USER 'someusername' identified by 'somepassword'; CREATE USER 'someusername' identified by 'somepassword';
CREATE DATABASE somedbname; CREATE DATABASE somedbname;
Then, exit, and at the main command line run: Then, exit, and at the main command line run:
msyql -u root -p -D somedbname < ..../vote/include/schema.sql msyql -u root -p -D somedbname < ..../vote/include/schema.sql
Then run this again: Then run this again:
mysql -u root -p mysql -u root -p
Password: <MYSQLROOTPW> Password: <MYSQLROOTPW>
and at the mysql command line, run these grant commands: and at the mysql command line, run these grant commands:
GRANT SELECT on somedb.elections TO someuser@localhost; GRANT SELECT on somedb.elections TO someuser@localhost;
GRANT SELECT on somedb.election_choices TO someuser@localhost; GRANT SELECT on somedb.election_choices TO someuser@localhost;
GRANT SELECT,DELETE on somedb.election_tmp_tokens TO someuser@localhost;
GRANT SELECT on somedb.election_voters TO someuser@localhost;
GRANT SELECT,INSERT on somedb.election_anon_tokens TO someuser@localhost;
GRANT INSERT on somedb.election_votes TO someuser@localhost;
2. Create an election, with something like this: 2. Create an election, with something like this:
mysql -u root -D somedb -p mysql -u root -D somedb -p
SET NAMES 'utf8'; SET NAMES 'utf8';
INSERT t INTO elections (type, name, voting_start, voting_end, choices_nb, question) VALUES ("elections", "2011 Spring Election", "2011-05-29 00:00:00", "2011-06-12 23:59:59", "7", "Which candidates would you like to see Elected?"); INSERT t INTO elections (type, name, voting_start, voting_end, choices_nb, question) VALUES ("elections", "2011 Spring Election", "2011-05-29 00:00:00", "2011-06-12 23:59:59", "7", "Which candidates would you like to see Elected?");
set @el_id = @@IDENTITY; set @el_id = @@IDENTITY;
INSERT INTO election_choices (election_id, choice) INSERT INTO election_choices (election_id, choice) VALUES
VALUES (@el_id, 'Candidate 1'),
(@el_id, 'Candidate 1'), (@el_id, 'Candidate 2'),
(@el_id, 'Candidate 2'), (@el_id, 'Candidate 3'),
(@el_id, 'Candidate 3'), (@el_id, 'Candidate 4');
(@el_id, 'Candidate 4'); INSERT INTO election_voters (election_id, email_address) VALUES
INSERT INTO election_voters (election_id, email_address) (@el_id, 'voter1@example.org'),
VALUES (@el_id, 'voter2@example.org'),
(@el_id, 'voter1@example.org'), (@el_id, 'voter3@example.com'),
(@el_id, 'voter2@example.org'), (@el_id, 'voter4@example.net');
(@el_id, 'voter3@example.com'),
(@el_id, 'voter4@example.net');
INSERT INTO election_tmp_tokens (election_id, election_voter_id, tmp_token) INSERT INTO election_tmp_tokens (election_id, election_voter_id, tmp_token)
SELECT @el_id, id, SUBSTRING(MD5(RAND()) FROM 1 FOR 24) AS tmp_token SELECT @el_id, id, SUBSTRING(MD5(RAND()) FROM 1 FOR 24) AS tmp_token
FROM election_voters where election_id = @el_id; FROM election_voters where election_id = @el_id;
select @el_id; select @el_id;
That number you see at the end is this election's id. The URL you'll give out That number you see at the end is this election's id. The URL you'll give out
is thus something like: is thus something like:
http://example.org/vote?election_id=THAT_NUMBER
http://example.org/vote?election_id=THAT_NUMBER