forked from hestiacp/hestiacp
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.php
More file actions
42 lines (35 loc) · 932 Bytes
/
index.php
File metadata and controls
42 lines (35 loc) · 932 Bytes
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
<?php
use function Hestiacp\quoteshellarg\quoteshellarg;
ob_start();
include $_SERVER["DOCUMENT_ROOT"] . "/inc/main.php";
if (empty($_POST["backup"])) {
header("Location: /list/backup/incremental/");
exit();
}
if (empty($_POST["action"])) {
header("Location: /list/backup/incremental/");
exit();
}
$backup = $_POST["backup"];
$action = $_POST["action"];
// Check token
verify_csrf($_POST);
switch ($action) {
case "delete":
$cmd = "v-delete-user-backup-restic";
break;
default:
header("Location: /list/backup/");
exit();
}
foreach ($backup as $value) {
$value = quoteshellarg($value);
exec(HESTIA_CMD . $cmd . " " . $user . " " . $value, $output, $return_var);
if ($return_var != 0) {
$_SESSION["error_msg"] = implode("<br>", $output);
if (empty($_SESSION["error_msg"])) {
$_SESSION["error_msg"] = _("Error: Hestia did not return any output.");
}
}
}
header("Location: /list/backup/incremental/");