-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup.js
More file actions
99 lines (86 loc) · 2.73 KB
/
Copy pathsetup.js
File metadata and controls
99 lines (86 loc) · 2.73 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
const mysql = require('mysql')
const content = require('./DBObjects')
const config = require('./config')
const DBPort = config.DBPort
const AppPort = config.AppPort
const DBName = config.DBName
const bcrypt = require('bcrypt-nodejs')
console.log(DBPort, AppPort, DBName)
let connection = mysql.createConnection({
connectionLimit: 50,
host : 'localhost',
port : DBPort,
user : 'root',
password : 'root',
})
connection.connect(function(err){
if (err) {
console.log(err)
} else {
console.log("Connected, creating Database: ", DBName)
}
connection.query("DROP DATABASE IF EXISTS " + DBName, function(error, rows, fields){
console.log("Dropped last DB");
createDB();
})
})
const createDB = function(){
connection.query("CREATE DATABASE " + DBName, function(error, rows, fields){
if(error){
console.log(error);
} else {
console.log("Created new DB");
setupTables();
}
})
}
const setupTables = function(){
connection = mysql.createConnection({
connectionLimit: 50,
host : 'localhost',
port : DBPort,
user : 'root',
password : 'root',
database : DBName,
})
//, FOREIGN KEY(civid) REFERENCES civilizations(id))
connection.query(
"CREATE TABLE users( id varchar(255) NOT NULL, name varchar(255) NOT NULL, password varchar(255) NOT NULL, imgUrl varchar(255), PRIMARY KEY (id) )",
function(error, rows, fields){
if(error){
console.log(error);
} else {
console.log("Setup users-table");
content.users.map(function(user){
var hash = bcrypt.hashSync(user.password);
connection.query(
"INSERT INTO users (id, name, password, imgUrl) VALUES (?,?,?,?)",
[user.id, user.name, hash, user.imgUrl],
function(err,rows,fields){
if(err){
console.log(err)
} else {
console.log("users populated with ", user.name)
}
}
)
})
}
})
connection.query("CREATE TABLE civilizations( id varchar(255) NOT NULL, civilization varchar(255) NOT NULL, leader varchar(255), leaderImg varchar(255), iconImg varchar(255) , PRIMARY KEY (id) )", function(error, rows, fields){
if(error){
console.log(error);
} else {
console.log("Setup civilizations-table");
content.civilizations.map(function(civ){
connection.query(
"INSERT INTO civilizations (id, civilization, leader, leaderImg, iconImg) VALUES (?,?,?,?,?)",
[civ.id, civ.civilization, civ.leader, civ.leaderImg, civ.iconImg],
function(err,rows,fields){
console.log("civilizations populated with ", civ.civilization)
}
)
})
}
})
}