X-Git-Url: https://projects.mako.cc/source/selectricity/blobdiff_plain/c5fda1e5174238779afd496014379d6446d1e3c1..75091532075247ae9c47164ea883f4fe803eddf4:/db/create.sql

diff --git a/db/create.sql b/db/create.sql
index 2b32457..a9d430c 100644
--- a/db/create.sql
+++ b/db/create.sql
@@ -1,18 +1,3 @@
-# CREATE users TABLE
-#####################################
-
-#drop table if exists users;
-#create table users (
-# id int NOT NULL auto_increment,
-# login varchar(80) default NULL,
-# password varchar(40) default NULL,
-# primary key (id)
-#);
-
-## Create a default system user to own stage directions
-## and similar. Users cannot log in.
-#insert into users ( id, login ) values ( 1, "System Defaults" );
-
 # CREATE elections TABLE
 #####################################
 
@@ -21,10 +6,14 @@ create table elections (
  id int NOT NULL auto_increment,
  name varchar(100) NOT NULL, 
  description TEXT NOT NULL, 
- anonymous tinyint NOT NULL DEFAULT 0, 
- startdate datetime NOT NULL, 
- enddate datetime, 
- primary key (id)
+ anonymous tinyint NOT NULL DEFAULT 1, 
+ startdate datetime, 
+ enddate datetime NOT NULL, 
+ active tinyint NOT NULL DEFAULT 0,
+ user_id int NULL,
+ quickvote tinyint NOT NULL DEFAULT 0,
+ primary key (id),
+ constraint fk_user_election foreign key (user_id) references users(id)
 );
 
 # CREATE candidates TABLE
@@ -35,7 +24,10 @@ create table candidates (
  id int NOT NULL auto_increment,
  election_id int NOT NULL,
  name varchar(100) NOT NULL, 
- picture blob NOT NULL, 
+ description text NULL,
+ picture_filename varchar(200),
+ picture_data blob, 
+ picture_type varchar(100), 
  primary key (id)
 );
 
@@ -45,14 +37,16 @@ create table candidates (
 drop table if exists voters;
 create table voters (
  id int NOT NULL auto_increment,
- email varchar(100) NOT NULL, 
- password varchar(100) NOT NULL, 
+ email varchar(100) NULL, 
+ password varchar(100) NULL, 
  contacted tinyint NOT NULL DEFAULT 0, 
  election_id int NOT NULL, 
+ session_id varchar(32) DEFAULT NULL,
  constraint fk_election_voter foreign key (election_id) references election(id),
  primary key (id)
 );
 
+
 # CREATE tokens TABLE
 #####################################
 
@@ -89,3 +83,26 @@ create table rankings (
  primary key (id)
 );
 
+# CREATE users TABLE
+#####################################
+DROP TABLE IF EXISTS `users`;
+CREATE TABLE `users` (
+  `id` int(11) NOT NULL auto_increment,
+  `login` varchar(80) NOT NULL default '',
+  `salted_password` varchar(40) NOT NULL default '',
+  `email` varchar(60) NOT NULL default '',
+  `firstname` varchar(40) default NULL,
+  `lastname` varchar(40) default NULL,
+  `salt` varchar(40) NOT NULL default '',
+  `verified` int(11) default '0',
+  `role` varchar(40) default NULL,
+  `security_token` varchar(40) default NULL,
+  `token_expiry` datetime default NULL,
+  `created_at` datetime default NULL,
+  `updated_at` datetime default NULL,
+  `logged_in_at` datetime default NULL,
+  `deleted` int(11) default '0',
+  `delete_after` datetime default NULL,
+  PRIMARY KEY  (`id`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1;
+
