-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsetup.php
More file actions
102 lines (91 loc) · 2.74 KB
/
setup.php
File metadata and controls
102 lines (91 loc) · 2.74 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
100
101
102
<?php
require_once 'vendor/autoload.php';
/* // Apparently this doesn't work right now... i have no idea why but nothing else seems affected
if (file_exists('MySQLDBDDL.sql')) {
$sql = file_get_contents('MySQLDBDDL.sql');
access_DB::prepareExecuteFetchStatement($sql);
echo 'DB recreated';
}*/
$img = imagecreatefromstring(file_get_contents('img/SampleGen.jpg'));
$img2 = imagecreatefromstring(file_get_contents('img/SampleGen2.jpg'));
$root_passwd = "plzHackMe";
$default_password = "iAmBad";
//// manually setup root
$sql = <<<'SQL'
INSERT INTO udvide.Users (username,passHash,role)
VALUES (?,?,?)
SQL;
$dbpw = helper::pepperedPassGen($root_passwd);
access_DB::prepareExecuteFetchStatement($sql,['root',$dbpw,PERMISSIONS_ROOT]);
echo "root created! \n<br/>";
//// add devs as root
$root = user::fromDB('root')
->setPassHash($root_passwd)
->login();
(new user())
->setPassHash($default_password)
/*->setRole(PERMISSIONS_DEVELOPER)
->setUsername("dev/simon")
->create()
->setUsername("dev/elias")
->create()
->setUsername("dev/lukas")
->create()
->setUsername("dev/niky")
->create()
->setUsername("dev/siggi")
->create()*/
// add test ppl as root
->setRole(PERMISSIONS_ADMIN)
->setUsername("BBT/Admin")
->create()
->setRole(PERMISSIONS_EDITOR)
->setTargetCreateLimit(5)
->setUsername("BBT/Editor")
->create();
echo "devs and test users created!\n<br/>";
//// Add maps
$mapImg = imagecreatetruecolor(100,100);
imagefilledrectangle($mapImg,5,5,95,95,imagecolorallocate($mapImg,200,255,200));
(new map())
->setImage($mapImg)
->setName('initialMap')
->create()
->setName('BBT/m1')
->create();
////-----------------------------------------------------------------
// add test targets
$targets[] = (new target())
->setName('initialTarget')
->setImage($img)
->setActive(true)
->setContent("<b>Hallo\nWelt!</b>")
->setMap('initialMap')
->setXPos(75)
->setYPos(40)
->setOwner($root->getUsername())
->create();
////
$targets[] = (new target())
->setName('BBT/t1')
->setImage($img2)
->setActive(true)
->setContent('Hi there!')
->setMap('initialMap')
->setXPos(150)
->setYPos(80)
->setOwner($root->getUsername())
->create();
$user = user::fromDB('BBT/Editor');
// Assign Targets
(new editor())->setTarget($targets[0])->setUser($user)->create();
//*/
// PHP SET UP -----------------------------------------------
// BEGIN RESOURCE SETUP
/* STRETCHGOAL: PERFORMANCE
// minify
$js = ""; // todo get from udvide.js.php
minifyJS([$js, 'udvide.min.js']);
$css = ""; // todo collect wherever it is (stretchgoal)
minifyCSS([$css, 'udvide.min.css']);*/
echo "DELETE setup.php BEFORE GOING LIVE! \n and change root password!";