CREATE TABLE images(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
url TEXT,
user_id INT,
caption TEXT,
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE user(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
username varchar(255) DEFAULT '',
role varchar(255) DEFAULT '',
email varchar(255) DEFAULT '',
password varchar(255) DEFAULT '',
profile_id INT,
reset_token INT,
reset_token_expire INT,
gender INT,
status INT,
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE profile(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
user_id INT,
is_google INT,
is_facebook INT,
first_name varchar(100) DEFAULT '',
last_name varchar(100) DEFAULT '',
stripe_id varchar(255) DEFAULT '',
phone varchar(15) DEFAULT '',
street varchar(255) DEFAULT '',
city varchar(255) DEFAULT '',
state varchar(255) DEFAULT '',
country varchar(255) DEFAULT '',
zip varchar(10) DEFAULT '',
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE role(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
name varchar(255) DEFAULT '',
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE permission(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
name varchar(255) DEFAULT '',
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE signup(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
first_name varchar(255) DEFAULT '',
last_name varchar(255) DEFAULT '',
email varchar(255) DEFAULT '',
phone varchar(255) DEFAULT '',
postal_code varchar(255) DEFAULT '',
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE volunteer(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
first_name varchar(255) DEFAULT '',
last_name varchar(255) DEFAULT '',
email varchar(255) DEFAULT '',
phone varchar(255) DEFAULT '',
postal_code varchar(255) DEFAULT '',
role varchar(255) DEFAULT '',
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE lawnsign(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
first_name varchar(255) DEFAULT '',
last_name varchar(255) DEFAULT '',
address varchar(255) DEFAULT '',
email varchar(255) DEFAULT '',
phone varchar(255) DEFAULT '',
postal_code varchar(255) DEFAULT '',
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE contact(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
first_name varchar(255) DEFAULT '',
last_name varchar(255) DEFAULT '',
email varchar(255) DEFAULT '',
phone varchar(255) DEFAULT '',
postal_code varchar(255) DEFAULT '', 
contact_list varchar(255) DEFAULT '',
comment TEXT,
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE donation(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
first_name varchar(255) DEFAULT '',
last_name varchar(255) DEFAULT '',
email varchar(255) DEFAULT '',
phone varchar(255) DEFAULT '',
postal_code varchar(255) DEFAULT '',
amount varchar(255) DEFAULT '',
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE permission_role_user(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
role_id INT,
user_id INT,
permission_id INT,
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE email(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
slug varchar(255) DEFAULT '',
subject TEXT,
body TEXT,
tags TEXT,
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE sms(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
slug varchar(255) DEFAULT '',
body TEXT,
tags TEXT,
created_at DATE,
updated_at DATETIME,
PRIMARY KEY ( id )
);

CREATE TABLE token(
   id INT UNSIGNED NOT NULL AUTO_INCREMENT,
token TEXT,
data TEXT,
type INT,
user_id INT,
ttl INT,
issue_at DATETIME,
expire_at DATETIME,
status INT,
PRIMARY KEY ( id )
);

