mirror of
https://github.com/Neetpone/ponepaste.git
synced 2025-03-10 21:50:06 +01:00
213 lines
7 KiB
SQL
213 lines
7 KiB
SQL
drop database if exists ponepaste;
|
|
create database ponepaste;
|
|
use ponepaste;
|
|
|
|
DELIMITER $$
|
|
|
|
CREATE PROCEDURE ExecuteScript()
|
|
BEGIN
|
|
DECLARE exit handler for sqlexception
|
|
BEGIN
|
|
ROLLBACK;
|
|
END;
|
|
|
|
START TRANSACTION;
|
|
|
|
create table admin
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
user varchar(250) null,
|
|
pass varchar(250) null
|
|
);
|
|
|
|
create table admin_history
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
last_date varchar(255) null,
|
|
ip varchar(255) null
|
|
);
|
|
|
|
create table ads
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
text_ads longtext null,
|
|
ads_1 longtext null,
|
|
ads_2 longtext null
|
|
);
|
|
|
|
create table ban_user
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
ip varchar(16) not null,
|
|
last_date varchar(15) not null
|
|
);
|
|
|
|
create table page_view
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
date varchar(255) null,
|
|
tpage varchar(255) null,
|
|
tvisit varchar(255) null
|
|
);
|
|
|
|
create table pages
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
last_date varchar(255) null,
|
|
page_name varchar(255) null,
|
|
page_title longtext null,
|
|
page_content longtext null
|
|
);
|
|
|
|
create table sitemap_options
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
priority varchar(255) null,
|
|
changefreq varchar(255) null
|
|
);
|
|
|
|
create table tags
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
name varchar(255) not null,
|
|
slug varchar(255) not null,
|
|
constraint tags_name_uindex
|
|
unique (name),
|
|
constraint tags_slug_uindex
|
|
unique (slug)
|
|
);
|
|
|
|
create table user_reports
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
m_report longtext not null,
|
|
p_report int not null,
|
|
rep_reason tinyint(1) not null,
|
|
t_report int not null
|
|
);
|
|
|
|
create table users
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
oauth_uid longtext null,
|
|
username varchar(255) null,
|
|
email_id varchar(255) null,
|
|
platform longtext null,
|
|
password varchar(255) null,
|
|
verified tinyint(1) default 0 not null,
|
|
picture longtext null,
|
|
date longtext null,
|
|
ip longtext null,
|
|
badge tinyint(1) unsigned zerofill default 0 not null,
|
|
banned tinyint(1) default 0 not null,
|
|
recovery_code_hash varchar(255) not null,
|
|
admin tinyint(1) default 0 not null,
|
|
admin_password_hash varchar(64) null,
|
|
created_at datetime default now() not null,
|
|
updated_at datetime not null,
|
|
constraint users_username_uindex
|
|
unique (username)
|
|
);
|
|
|
|
INSERT INTO users (id, username, created_at, updated_at, recovery_code_hash) VALUES (1, 'anonfilly', NOW(), NOW(), "");
|
|
|
|
create table admin_logs
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
user_id int not null,
|
|
action int not null,
|
|
time timestamp default current_timestamp() not null on update current_timestamp(),
|
|
ip varchar(16) not null,
|
|
constraint admin_logs_users_id_fk
|
|
foreign key (user_id) references users (id)
|
|
on update cascade on delete cascade
|
|
);
|
|
|
|
create table pastes
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
title longtext null,
|
|
content longtext null,
|
|
visible longtext null,
|
|
code longtext null,
|
|
expiry longtext null,
|
|
password longtext null,
|
|
encrypt longtext null,
|
|
ip longtext null,
|
|
views int null,
|
|
s_date longtext null,
|
|
tagsys longtext null,
|
|
user_id int null,
|
|
created_at datetime default current_timestamp() null,
|
|
updated_at datetime default current_timestamp() null,
|
|
constraint users_id_fkey
|
|
foreign key (user_id) references users (id)
|
|
);
|
|
|
|
create table paste_taggings
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
paste_id int null,
|
|
tag_id int null,
|
|
constraint paste_taggings_uindex
|
|
unique (paste_id, tag_id),
|
|
constraint paste_taggings_ibfk_2
|
|
foreign key (tag_id) references tags (id),
|
|
constraint paste_taggings_ibfk_3
|
|
foreign key (paste_id) references pastes (id)
|
|
on delete cascade
|
|
);
|
|
|
|
create index tag_id
|
|
on paste_taggings (tag_id);
|
|
|
|
create table user_favourites
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
paste_id int null,
|
|
f_time datetime default current_timestamp() not null,
|
|
user_id int not null,
|
|
constraint paste_id_fk
|
|
foreign key (paste_id) references pastes (id),
|
|
constraint user_id_fk
|
|
foreign key (user_id) references users (id)
|
|
);
|
|
|
|
create table user_sessions
|
|
(
|
|
id int auto_increment
|
|
primary key,
|
|
user_id int not null,
|
|
token varchar(255) not null,
|
|
expire_at datetime not null,
|
|
created_at datetime default current_timestamp() not null,
|
|
updated_at datetime default current_timestamp() not null,
|
|
constraint user_sessions_token_uindex
|
|
unique (token),
|
|
constraint user_sessions_users_id_fk
|
|
foreign key (user_id) references users (id)
|
|
);
|
|
|
|
-- Commit the transaction if no errors occurred
|
|
COMMIT;
|
|
END $$
|
|
|
|
DELIMITER ;
|
|
|
|
CALL ExecuteScript();
|
|
|
|
DROP PROCEDURE IF EXISTS ExecuteScript;
|