index.php 1.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. <?php
  2. ob_start();
  3. include($_SERVER['DOCUMENT_ROOT']."/inc/main.php");
  4. // Check token
  5. verify_csrf($_GET);
  6. if (($_SESSION['userContext'] === 'admin') && (!empty($_GET['user']))) {
  7. $user = escapeshellarg($_GET['user']);
  8. $user_plain = $_GET['user'];
  9. }
  10. // Checks if API access is enabled
  11. $api_status = (!empty($_SESSION['API_SYSTEM']) && is_numeric($_SESSION['API_SYSTEM'])) ? $_SESSION['API_SYSTEM'] : 0;
  12. if (($user_plain == 'admin' && $api_status < 1) || ($user_plain != 'admin' && $api_status < 2)) {
  13. header("Location: /edit/user/");
  14. exit;
  15. }
  16. if (!empty($_GET['key'])) {
  17. $v_key = escapeshellarg(trim($_GET['key']));
  18. // Key data
  19. exec(HESTIA_CMD."v-list-access-key ".$v_key." json", $output, $return_var);
  20. $key_data = json_decode(implode('', $output), true);
  21. unset($output);
  22. if (empty($key_data) || $key_data['USER'] != $user_plain) {
  23. header("Location: /list/access-key/");
  24. exit;
  25. }
  26. exec(HESTIA_CMD."v-delete-access-key ".$v_key, $output, $return_var);
  27. check_return_code($return_var, $output);
  28. unset($output);
  29. }
  30. $back = $_SESSION['back'];
  31. if (!empty($back)) {
  32. header("Location: ".$back);
  33. exit;
  34. }
  35. header("Location: /list/key/");
  36. exit;