· 9 years ago · Jun 08, 2017, 11:32 PM
1<?php
2
3if (!file_exists('verifyPanel.php')) {
4 $fail = false;
5 if ($_POST['user'] != '') {
6 $user = $_POST['user'];
7 } else {
8 echo 'Invalid User ';
9 $fail = true;
10 }
11
12 if ($_POST['pass'] != '') {
13 $pass = $_POST['pass'];
14 } else {
15 $pass = '';
16 }
17
18 if ($_POST['host'] != '') {
19 $host = $_POST['host'];
20 } else {
21 echo 'Invalid Host ';
22 $fail = true;
23 }
24
25 if ($_POST['name'] != '') {
26 $name = $_POST['name'];
27 } else {
28 echo 'Invalid DB Name ';
29 $fail = true;
30 }
31
32 if ($_POST['port'] != '') {
33 $port = $_POST['port'];
34 } else {
35 $port = 3306;
36 }
37
38 if ($_POST['RHost'] != '') {
39 $RHost = $_POST['RHost'];
40 } else {
41 echo 'Invalid RCON Host ';
42 $fail = true;
43 }
44
45 if ($_POST['RPass'] != '') {
46 $RPass = $_POST['RPass'];
47 } else {
48 echo 'Invalid RCON Password ';
49 $fail = true;
50 }
51
52 if ($_POST['RPort'] != '') {
53 $RPort = $_POST['RPort'];
54 $RPort = (int) $RPort;
55 } else {
56 echo 'Invalid RCON Port ';
57 $fail = true;
58 }
59
60 //max level checks
61
62 if ($_POST['maxCop'] != '') {
63 $maxCop = $_POST['maxCop'];
64 $maxCop = (int) $maxCop;
65 } else {
66 $maxCop = 7;
67 }
68
69 if ($_POST['maxWarning'] != '') {
70 $maxWarning = $_POST['maxWarning'];
71 $maxWarning = (int) $maxWarning;
72 } else {
73 $maxWarning = 30;
74 }
75
76 if ($_POST['maxMedic'] != '') {
77 $maxMedic = $_POST['maxMedic'];
78 $maxMedic = (int) $maxMedic;
79 } else {
80 $maxMedic = 5;
81 }
82
83 if ($_POST['maxAdmin'] != '') {
84 $maxAdmin = $_POST['maxAdmin'];
85 $maxAdmin = (int) $maxAdmin;
86 } else {
87 $maxAdmin = 5;
88 }
89
90 if ($_POST['maxDonator'] != '') {
91 $maxDonator = $_POST['maxDonator'];
92 $maxDonator = (int) $maxDonator;
93 } else {
94 $maxDonator = 5;
95 }
96
97 if ($_POST['apiUser'] != '') {
98 $apiUser = $_POST['apiUser'];
99 } else {
100 $apiUser = 'default';
101 }
102
103 if ($_POST['apiPass'] != '') {
104 $apiPass = $_POST['apiPass'];
105 } else {
106 $apiPass = 'password';
107 }
108
109 if ($_POST['apiEnable'] != '') {
110 if ($_POST['apiEnable'] == '1' || $_POST['apiEnable'] == '0') {
111 $apiEnable = $_POST['apiEnable'];
112 $apiEnable = (int) $apiEnable;
113 } else {
114 $apiEnable = 1;
115 }
116 } else {
117 $apiEnable = 1;
118 }
119
120 if (!$fail) {
121 $filename = 'verifyPanel.php';
122 $ourFileName = $filename;
123 $ourFileHandle = fopen($ourFileName, 'w');
124
125 $written = '<?php
126
127include "functions.php";
128
129function masterconnect(){
130
131 global '.'$'.'dbcon;
132 '.'$'."dbcon = mysqli_connect('$host', '$user', '$pass', '$name', '$port') or die ('Database connection failed');
133}
134
135function loginconnect(){
136
137 global ".'$'.'dbconL;
138 '.'$'."dbconL = mysqli_connect('$host', '$user', '$pass', '$name', '$port');
139}
140
141function Rconconnect(){
142
143 global ".'$'.'rcon;
144 '.'$'."rcon = new \Nizarii\ArmaRConClass\ARC('$RHost', $RPort, '$RPass');
145}
146
147global ".'$'.'DBHost;
148'.'$'."DBHost = '$host';
149global ".'$'.'DBUser;
150'.'$'."DBUser = '$user';
151global ".'$'.'DBPass;
152'.'$'."DBPass = '$pass';
153global ".'$'.'DBName;
154'.'$'."DBName = '$name';
155
156global ".'$'.'RconHost;
157'.'$'."RconHost = '$RHost';
158global ".'$'.'RconPort;
159'.'$'."RconPort = $RPort;
160global ".'$'.'RconPass;
161'.'$'."RconPass = '$RPass';
162
163global ".'$'.'maxCop;
164'.'$'."maxCop = $maxCop;
165global ".'$'.'maxWarning;
166'.'$'."MaxWarning = $Warning;
167global ".'$'.'maxMedic;
168'.'$'."maxMedic = $maxMedic;
169global ".'$'.'maxAdmin;
170'.'$'."maxAdmin = $maxAdmin;
171global ".'$'.'maxDonator;
172'.'$'."maxDonator = $maxDonator;
173
174global ".'$'.'apiUser;
175'.'$'."apiUser = '$apiUser';
176global ".'$'.'apiPass;
177'.'$'."apiPass = '$apiPass';
178global ".'$'.'apiEnable;
179'.'$'."apiEnable = $apiEnable;
180
181?>
182";
183
184 fwrite($ourFileHandle, $written);
185 fclose($ourFileHandle);
186
187 $dbconnect = mysqli_connect($host, $user, $pass, $name) or die('Database connection failed');
188
189 $sqlDel = 'DROP TABLE users;';
190 $sqldata = mysqli_query($dbconnect, $sqlDel);
191
192 $sqlDel1 = 'DROP TABLE log;';
193 $sqldata1 = mysqli_query($dbconnect, $sqlDel1);
194
195 $sqlDel2 = 'DROP TABLE notes;';
196 $sqldata2 = mysqli_query($dbconnect, $sqlDel2);
197
198 $sqlDel3 = 'DROP TABLE reimbursement_log;';
199 $sqldata3 = mysqli_query($dbconnect, $sqlDel3);
200
201 $sqlDel4 = 'DROP TABLE whitelist;';
202 $sqldata4 = mysqli_query($dbconnect, $sqlDel4);
203
204 $sqlDel5 = 'DROP TABLE access;';
205 $sqldata5 = mysqli_query($dbconnect, $sqlDel5);
206
207 $sqlmake = '
208 CREATE TABLE IF NOT EXISTS `log` (
209 `logid` int(11) NOT NULL AUTO_INCREMENT,
210 `date_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
211 `user` varchar(64) DEFAULT NULL,
212 `action` varchar(255) DEFAULT NULL,
213 `level` int(11) NOT NULL,
214 PRIMARY KEY (`logid`),
215 UNIQUE KEY `logid` (`logid`),
216 KEY `logid_2` (`logid`)
217 ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1;
218 ';
219
220 $sqldata = mysqli_query($dbconnect, $sqlmake) or die('Connection could not be established - LOG');
221
222 $sqlmake2 = '
223
224 CREATE TABLE IF NOT EXISTS `users` (
225 `ID` mediumint(9) NOT NULL AUTO_INCREMENT,
226 `username` varchar(60) NOT NULL,
227 `password` varchar(80) NOT NULL,
228 `permissions` text NOT NULL,
229 PRIMARY KEY (`ID`)
230 ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;';
231
232 $sqldata1 = mysqli_query($dbconnect, $sqlmake2) or die('Connection could not be established - USERS!');
233
234 $sqlmake3 = "
235
236 CREATE TABLE IF NOT EXISTS `notes` (
237 `note_id` INT(11) NOT NULL AUTO_INCREMENT COMMENT 'auto incrementing note_id of each user, unique index',
238 `uid` VARCHAR(50) NOT NULL COLLATE 'utf8_unicode_ci',
239 `staff_name` VARCHAR(50) NOT NULL COLLATE 'utf8_unicode_ci',
240 `name` VARCHAR(50) NOT NULL COLLATE 'utf8_unicode_ci',
241 `alias` VARCHAR(50) NOT NULL COLLATE 'utf8_unicode_ci',
242 `note_text` VARCHAR(255) NOT NULL,
243 `warning` ENUM('1','2','3','4') NOT NULL DEFAULT '0',
244 `note_updated` TIMESTAMP NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
245 PRIMARY KEY (`note_id`),
246 UNIQUE INDEX `note_id` (`note_id`)
247 ) COLLATE='latin1_swedish_ci' ENGINE=InnoDB AUTO_INCREMENT=6;
248 ";
249
250 $sqldata100 = mysqli_query($dbconnect, $sqlmake3) or die('Connection could not be established - NOTES!');
251
252 $sqlmake4 = "
253
254 CREATE TABLE IF NOT EXISTS `reimbursement_log` (
255 `reimbursement_id` INT(11) NOT NULL AUTO_INCREMENT,
256 `playerid` VARCHAR(50) NOT NULL,
257 `comp` INT(100) NOT NULL DEFAULT '0',
258 `reason` VARCHAR(255) NOT NULL,
259 `staff_name` VARCHAR(50) NOT NULL COLLATE 'utf8_unicode_ci',
260 `timestamp` TIMESTAMP NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
261 PRIMARY KEY (`reimbursement_id`),
262 UNIQUE INDEX `reimbursement_id` (`reimbursement_id`)
263 )
264 COLLATE='latin1_swedish_ci'
265 ENGINE=InnoDB
266 AUTO_INCREMENT=1;
267 ";
268
269 $sqldata9 = mysqli_query($dbconnect, $sqlmake4) or die('Connection could not be established - REIM!');
270
271 $sqlmake5 = '
272 CREATE TABLE IF NOT EXISTS `whitelist` (
273 `id` int(0) NOT NULL AUTO_INCREMENT,
274 `date_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
275 `user` varchar(64) DEFAULT NULL,
276 `guid` varchar(64) DEFAULT NULL,
277 `uid` varchar(64) DEFAULT NULL,
278 PRIMARY KEY (`id`)
279 ) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=latin1;
280 ';
281 $sqldata10 = mysqli_query($dbconnect, $sqlmake5) or die('Connection could not be established - Whitelist!');
282
283 $sqlmake6 = '
284 CREATE TABLE `access` (
285 `accessID` int(11) NOT NULL AUTO_INCREMENT,
286 `date_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP,
287 `address` varchar(64) DEFAULT NULL,
288 `failed` int(11) NOT NULL,
289 PRIMARY KEY (`accessID`),
290 UNIQUE KEY `accessID` (`accessID`),
291 KEY `accessID_1` (`accessID`)
292 ) ENGINE=InnoDB AUTO_INCREMENT=3 DEFAULT CHARSET=latin1;
293
294 ';
295 $sqldata11 = mysqli_query($dbconnect, $sqlmake6) or die('Connection could not be established - Whitelist!');
296
297 $sqlmake7 = 'ALTER TABLE `players` ADD `warning` enum('0','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') NOT NULL DEFAULT '0' AFTER `last_seen`;
298
299';
300
301 $sqlMakeAccess = mysqli_query($dbconnect, $sqlmake6) or die('Connection could not be established - Access!');
302
303 $sqldeluser = "DELETE FROM users WHERE username='AdminPanel';";
304
305 $sqldatadel = mysqli_query($dbconnect, $sqldeluser) or die('Connection could not be established - USER!');
306
307 $sqlinsert = "INSERT INTO `users` (`ID`, `username`, `password`, `permissions`) VALUES (1, 'AdminPanel','60fe74406e7f353ed979f350f2fbb6a2e8690a5fa7d1b0c32983d1d8b3f95f67', '\"[[`notes`,1],[`cop`,1],[`medic`,1],[`money`,1],[`IG-Admin`,1],[`editPlayer`,1],[`housing`,1],[`gangs`,1],[`vehicles`,1],[`logs`,1],[`steamView`,1],[`ban`,1],[`kick`,1],[`unban`,1],[`globalMessage`,1],[`restartServer`,1],[`stopServer`,1],[`superUser`,1]]\"');";
308
309 $sqldata2 = mysqli_query($dbconnect, $sqlinsert) or die('Connection could not be established or user already exists!');
310
311 header('Location: index.php');
312 } else {
313 echo 'There has been an error setting up your database, please recheck all inputs';
314 }
315} else {
316 header('Location: index.php');
317}