You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
hestiacp/web/logout/index.php

40 lines
1.0 KiB

1 year ago
<?php
use function Hestiacp\quoteshellarg\quoteshellarg;
// Main include
include $_SERVER["DOCUMENT_ROOT"] . "/inc/main.php";
// Check token
verify_csrf($_GET);
if (!empty($_SESSION["look"])) {
$v_user = quoteshellarg($_SESSION["look"]);
$v_impersonator = quoteshellarg($_SESSION["user"]);
exec(
HESTIA_CMD .
"v-log-action system 'Warning' 'Security' 'User impersonation session ended (User: $v_user, Administrator: $v_impersonator)'",
$output,
$return_var,
);
unset($_SESSION["look"]);
# Remove current path for filemanager
unset($_SESSION["_sf2_attributes"]);
unset($_SESSION["_sf2_meta"]);
header("Location: /");
} else {
if ($_SESSION["token"] && $_SESSION["user"]) {
unset($_SESSION["userTheme"]);
$v_user = quoteshellarg($_SESSION["user"]);
$v_session_id = quoteshellarg($_SESSION["token"]);
exec(
HESTIA_CMD . "v-log-user-logout " . $v_user . " " . $v_session_id,
$output,
$return_var,
);
}
unset($_SESSION);
session_unset();
session_destroy();
header("Location: /login/");
}
exit();