-
Notifications
You must be signed in to change notification settings - Fork 0
/
sklad.php
48 lines (35 loc) · 985 Bytes
/
sklad.php
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
<?
ob_start();
include 'prolog.php';
$token_body = [
"sub" => 'robokassa-1.robokassa',
"iat" => time(),
"exp" => time() + 300,
"jti" => bin2hex(random_bytes(32))
];
$jwt = JWT::encode($token_body, $cfg['app']['secret']);
header("Content-Type: application/json");
header("Authorization: Bearer ".$jwt);
$log_fname = 'logs/sklad.txt';
include 'grabber.php';
$request = $_SERVER['REQUEST_URI'];
$input = json_decode(file_get_contents('php://input'), true);
switch($input['cause']) {
case 'Install':
$sklad = new Sklad();
$sklad->add_account($input, $request, false);
$ret['status'] = 'Activated';
break;
case 'Uninstall':
$sklad = new Sklad();
$sklad->drop_account($input);
$ret = '';
break;
default:
$ret['status'] = 'Activated';
}
$stdout = ob_get_contents();
ob_end_clean();
if (!empty($stdout))
file_put_contents('logs/stdout_sklad.txt', $stdout, FILE_APPEND);
echo json_encode($ret);