mirror of
https://github.com/xevidos/codiad.git
synced 2024-11-10 21:26:35 +01:00
Improved install process removing SQL code from process.php file and creating one file per database type
This commit is contained in:
parent
dfed2269c9
commit
03ae41b78d
@ -98,11 +98,12 @@ if ( ! ( defined( "DBHOST" ) && defined( "DBNAME" ) && defined( "DBUSER" ) && de
|
|||||||
$aValidDBType = [
|
$aValidDBType = [
|
||||||
'mysql'
|
'mysql'
|
||||||
,'postgresql'
|
,'postgresql'
|
||||||
|
//,'sqlite'
|
||||||
];
|
];
|
||||||
|
|
||||||
//Is selected database type valid?
|
//Is selected database type valid?
|
||||||
if(!in_array($dbtype,$aValidDBType)){
|
if(!in_array($dbtype,$aValidDBType)){
|
||||||
die( "Invalid database. Please select one of ".implode(", "$aValidDBType)."." );
|
die( "Invalid database. Please select one of ".implode(", ",$aValidDBType)."." );
|
||||||
}
|
}
|
||||||
|
|
||||||
try {
|
try {
|
||||||
@ -115,130 +116,16 @@ if ( ! ( defined( "DBHOST" ) && defined( "DBNAME" ) && defined( "DBUSER" ) && de
|
|||||||
}
|
}
|
||||||
$bind_vars = array();
|
$bind_vars = array();
|
||||||
$bind = "";
|
$bind = "";
|
||||||
$sql = [];
|
$database_sql_fullpath = $path.'/components/install/sql/'.$dbtype.".sql";
|
||||||
$sql['mysql'] = "
|
if(!is_file($database_sql_fullpath)){
|
||||||
|
die("Could not find the sql of the database ".$dbtype." to execute");
|
||||||
--
|
}
|
||||||
-- Table structure for table options
|
$sql = file_get_contents($database_sql_fullpath);
|
||||||
--
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS options (
|
|
||||||
id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
name varchar(255) NOT NULL,
|
|
||||||
value text NOT NULL,
|
|
||||||
CONSTRAINT option_name UNIQUE (name)
|
|
||||||
);
|
|
||||||
|
|
||||||
-- --------------------------------------------------------
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Table structure for table projects
|
|
||||||
--
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS projects (
|
|
||||||
id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
name varchar(255) NOT NULL,
|
|
||||||
path varchar(255) NOT NULL,
|
|
||||||
owner varchar(255) NOT NULL,
|
|
||||||
access text,
|
|
||||||
CONSTRAINT project UNIQUE (path, owner)
|
|
||||||
);
|
|
||||||
|
|
||||||
-- --------------------------------------------------------
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Table structure for table users
|
|
||||||
--
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS users (
|
|
||||||
id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
first_name varchar(255) DEFAULT NULL,
|
|
||||||
last_name varchar(255) DEFAULT NULL,
|
|
||||||
username varchar(255) NOT NULL,
|
|
||||||
password text NOT NULL,
|
|
||||||
email varchar(255) DEFAULT NULL,
|
|
||||||
project varchar(255) DEFAULT NULL,
|
|
||||||
access varchar(255) NOT NULL,
|
|
||||||
groups text,
|
|
||||||
token text,
|
|
||||||
CONSTRAINT username UNIQUE (username)
|
|
||||||
);
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Table structure for table user_options
|
|
||||||
--
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS user_options (
|
|
||||||
id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
|
||||||
name varchar(255) NOT NULL,
|
|
||||||
username varchar(255) NOT NULL,
|
|
||||||
value text NOT NULL,
|
|
||||||
CONSTRAINT option_name UNIQUE (name,username)
|
|
||||||
);
|
|
||||||
|
|
||||||
";
|
|
||||||
|
|
||||||
$sql['postgresql'] = "
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Table structure for table options
|
|
||||||
--
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS options (
|
|
||||||
id SERIAL PRIMARY KEY,
|
|
||||||
name varchar(255) NOT NULL UNIQUE,
|
|
||||||
value TEXT NOT NULL
|
|
||||||
);
|
|
||||||
|
|
||||||
-- --------------------------------------------------------
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Table structure for table projects
|
|
||||||
--
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS projects (
|
|
||||||
id SERIAL PRIMARY KEY,
|
|
||||||
name varchar(255) NOT NULL,
|
|
||||||
path varchar(255) NOT NULL UNIQUE,
|
|
||||||
owner varchar(255) NOT NULL UNIQUE,
|
|
||||||
access text
|
|
||||||
);
|
|
||||||
|
|
||||||
-- --------------------------------------------------------
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Table structure for table users
|
|
||||||
--
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS users (
|
|
||||||
id SERIAL PRIMARY KEY,
|
|
||||||
first_name varchar(255) DEFAULT NULL,
|
|
||||||
last_name varchar(255) DEFAULT NULL,
|
|
||||||
username varchar(255) NOT NULL UNIQUE,
|
|
||||||
password text NOT NULL,
|
|
||||||
email varchar(255) DEFAULT NULL,
|
|
||||||
project varchar(255) DEFAULT NULL,
|
|
||||||
access varchar(255) NOT NULL,
|
|
||||||
groups text,
|
|
||||||
token text
|
|
||||||
);
|
|
||||||
|
|
||||||
--
|
|
||||||
-- Table structure for table user_options
|
|
||||||
--
|
|
||||||
|
|
||||||
CREATE TABLE IF NOT EXISTS user_options (
|
|
||||||
id SERIAL PRIMARY KEY,
|
|
||||||
name varchar(255) NOT NULL UNIQUE,
|
|
||||||
username varchar(255) NOT NULL UNIQUE,
|
|
||||||
value text NOT NULL
|
|
||||||
);
|
|
||||||
|
|
||||||
";
|
|
||||||
|
|
||||||
try {
|
try {
|
||||||
|
//Create the database
|
||||||
$result = $connection->exec($sql[$dbtype]);
|
$result = $connection->exec($sql);
|
||||||
} catch( PDOException $e ) {
|
} catch( PDOException $e ) {
|
||||||
|
|
||||||
die($e->getMessage());
|
die($e->getMessage());
|
||||||
@ -405,4 +292,4 @@ define("WSURL", BASE_URL . "/workspace");
|
|||||||
|
|
||||||
saveFile( $config, $config_data );
|
saveFile( $config, $config_data );
|
||||||
echo( "success" );
|
echo( "success" );
|
||||||
}
|
}
|
||||||
|
57
components/install/sql/mysql.sql
Normal file
57
components/install/sql/mysql.sql
Normal file
@ -0,0 +1,57 @@
|
|||||||
|
--
|
||||||
|
-- Table structure for table options
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS options (
|
||||||
|
id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
name varchar(255) NOT NULL,
|
||||||
|
value text NOT NULL,
|
||||||
|
CONSTRAINT option_name UNIQUE (name)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table projects
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS projects (
|
||||||
|
id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
name varchar(255) NOT NULL,
|
||||||
|
path varchar(255) NOT NULL,
|
||||||
|
owner varchar(255) NOT NULL,
|
||||||
|
access text,
|
||||||
|
CONSTRAINT project UNIQUE (path, owner)
|
||||||
|
);
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table users
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS users (
|
||||||
|
id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
first_name varchar(255) DEFAULT NULL,
|
||||||
|
last_name varchar(255) DEFAULT NULL,
|
||||||
|
username varchar(255) NOT NULL,
|
||||||
|
password text NOT NULL,
|
||||||
|
email varchar(255) DEFAULT NULL,
|
||||||
|
project varchar(255) DEFAULT NULL,
|
||||||
|
access varchar(255) NOT NULL,
|
||||||
|
groups text,
|
||||||
|
token text,
|
||||||
|
CONSTRAINT username UNIQUE (username)
|
||||||
|
);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table user_options
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS user_options (
|
||||||
|
id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
|
||||||
|
name varchar(255) NOT NULL,
|
||||||
|
username varchar(255) NOT NULL,
|
||||||
|
value text NOT NULL,
|
||||||
|
CONSTRAINT option_name UNIQUE (name,username)
|
||||||
|
);
|
53
components/install/sql/postgresql.sql
Normal file
53
components/install/sql/postgresql.sql
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
--
|
||||||
|
-- Table structure for table options
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS options (
|
||||||
|
id SERIAL PRIMARY KEY,
|
||||||
|
name varchar(255) NOT NULL UNIQUE,
|
||||||
|
value TEXT NOT NULL
|
||||||
|
);
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table projects
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS projects (
|
||||||
|
id SERIAL PRIMARY KEY,
|
||||||
|
name varchar(255) NOT NULL,
|
||||||
|
path varchar(255) NOT NULL UNIQUE,
|
||||||
|
owner varchar(255) NOT NULL UNIQUE,
|
||||||
|
access text
|
||||||
|
);
|
||||||
|
|
||||||
|
-- --------------------------------------------------------
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table users
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS users (
|
||||||
|
id SERIAL PRIMARY KEY,
|
||||||
|
first_name varchar(255) DEFAULT NULL,
|
||||||
|
last_name varchar(255) DEFAULT NULL,
|
||||||
|
username varchar(255) NOT NULL UNIQUE,
|
||||||
|
password text NOT NULL,
|
||||||
|
email varchar(255) DEFAULT NULL,
|
||||||
|
project varchar(255) DEFAULT NULL,
|
||||||
|
access varchar(255) NOT NULL,
|
||||||
|
groups text,
|
||||||
|
token text
|
||||||
|
);
|
||||||
|
|
||||||
|
--
|
||||||
|
-- Table structure for table user_options
|
||||||
|
--
|
||||||
|
|
||||||
|
CREATE TABLE IF NOT EXISTS user_options (
|
||||||
|
id SERIAL PRIMARY KEY,
|
||||||
|
name varchar(255) NOT NULL UNIQUE,
|
||||||
|
username varchar(255) NOT NULL UNIQUE,
|
||||||
|
value text NOT NULL
|
||||||
|
);
|
Loading…
Reference in New Issue
Block a user