-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathserver.php
More file actions
95 lines (92 loc) · 4.32 KB
/
server.php
File metadata and controls
95 lines (92 loc) · 4.32 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
<?php
require('connect.php');
$headers = getallheaders();
if (verifyRequest($con, $headers, $_SERVER)) {
header('Content-type: application/json');
if ($_SERVER['REQUEST_METHOD'] == "POST") {
$Params = json_decode(file_get_contents('php://input'), true);
switch($Params['Method']) {
case 'Add':
$command = "INSERT INTO `servers` (`place_id`, `job_id`, `player_count`, `max_players`, `shutdown_msg`) VALUES (" . $headers['Roblox-Id'] . ",'" . $headers['Job-Id'] . "'," . safe($con, $Params['Player-Count']) . "," . safe($con, $Params['Max-Players']) . ", 'This server has been shutdown! Sorry about that. Derp.')";
$query = mysqli_query($con, $command);
if ($query)
echo json_encode(array("Status" => "Success"));
else
echo json_encode(array("Status" => "Error", "Error" => mysqli_error($con)));
break;
case 'UpdatePlayerCount':
$command = "UPDATE `servers` SET `player_count`=" . safe($con, $Params['Player-Count']) . " WHERE `job_id`='" . $headers['Job-Id'] . "'";
$query = mysqli_query($con, $command);
if ($query)
echo json_encode(array("Status" => "Success"));
else
die(json_encode(array("Error" => mysqli_error($con))));
break;
case 'AddPlayer':
$command = "INSERT INTO `players`(`user_id`, `user_name`, `server`) VALUES (" . safe($con, $Params['User-Id']) . ", '" . safe($con, $Params['Name']) . "', '" . $headers['Job-Id'] . "')";
$query = mysqli_query($con, $command);
mysqli_query($con, "UPDATE `servers` SET `player_count`=" . safe($con, $Params['Player-Count']) . " WHERE `job_id`='" . $headers['Job-Id'] . "'");
if ($query)
echo json_encode(array("Status" => "Success"));
else
echo json_encode(array("Status" => "Error", "Error" => mysqli_error($con)));
break;
case 'RemPlayer':
$command = "DELETE FROM `players` WHERE `user_id`=" . safe($con, $Params['User-Id']) . " AND `server`='" . $headers['Job-Id'] . "'";
$query = mysqli_query($con, $command);
mysqli_query($con, "UPDATE `servers` SET `player_count`=" . safe($con, $Params['Player-Count']) . " WHERE `job_id`='" . $headers['Job-Id'] . "'");
if ($query)
echo json_encode(array("Status" => "Success"));
else
echo json_encode(array("Status" => "Error", "Error" => mysqli_error($con)));
break;
case 'Remove':
$command = "DELETE FROM `servers` WHERE `job_id`='" . $headers['Job-Id'] . "'";
$query = mysqli_query($con, $command);
if ($query)
echo json_encode(array("Status" => "Success"));
else
echo json_encode(array("Status" => "Error", "Error" => mysqli_error($con)));
break;
case 'SetMsgs':
if (isset($Params['ShutdownMessage'])) {
if (!$Params['ShutdownMessage'] == "") {
mysqli_query($con, "UPDATE `servers` SET `shutdown_msg`='" . safe($con, $Params['ShutdownMessage']) . "' WHERE `job_id`='" . safe($con, $Params['JobId']) . "'");
}
}
if (isset($Params['SystemMessage'])) {
if (!$Params['SystemMessage'] == "") {
mysqli_query($con, "UPDATE `servers` SET `send_msg`='" . safe($con, $Params['SystemMessage']) . "' WHERE `job_id`='" . safe($con, $Params['JobId']) . "'");
}
}
break;
}
} else {
$Params = array();
foreach ($_GET as $Key => $Value)
$Params[$Key] = $Value;
switch($Params['Action']) {
case 'ShutdownCheck': {
$Data = mysqli_query($con, "SELECT * FROM `servers` WHERE `job_id`='" . $headers['Job-Id'] . "'");
if(mysqli_num_rows($Data) > 0){
$Data = mysqli_fetch_assoc($Data);
mysqli_query($con, "UPDATE `servers` SET `send_msg`='' WHERE `job_id`='" . $headers['Job-Id'] . "'");
die(json_encode(array(
"System" => array(
"Message" => $Data['send_msg']
),
"Shutdown" => array(
"Status" => $Data['shutting_down'],
"Message" => $Data['shutdown_msg']
)
)));
}
die(json_encode(array("Status" => "Error: no data")));
break;
}
}
}
} else {
header("Location: /index.php");
}
?>