index.php 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. <?php
  2. // Init
  3. error_reporting(null);
  4. ob_start();
  5. session_start();
  6. include($_SERVER['DOCUMENT_ROOT']."/inc/main.php");
  7. // Check token
  8. verify_csrf($_POST);
  9. $user = $_POST['user'];
  10. $action = $_POST['action'];
  11. if ($_SESSION['userContext'] === 'admin') {
  12. switch ($action) {
  13. case 'delete': $cmd='v-delete-user'; $restart = 'no';
  14. break;
  15. case 'suspend': $cmd='v-suspend-user'; $restart = 'no';
  16. break;
  17. case 'unsuspend': $cmd='v-unsuspend-user'; $restart = 'no';
  18. break;
  19. case 'update counters': $cmd='v-update-user-counters';
  20. break;
  21. case 'rebuild': $cmd='v-rebuild-all'; $restart = 'no';
  22. break;
  23. case 'rebuild user': $cmd='v-rebuild-user'; $restart = 'no';
  24. break;
  25. case 'rebuild web': $cmd='v-rebuild-web-domains'; $restart = 'no';
  26. break;
  27. case 'rebuild dns': $cmd='v-rebuild-dns-domains'; $restart = 'no';
  28. break;
  29. case 'rebuild mail': $cmd='v-rebuild-mail-domains';
  30. break;
  31. case 'rebuild db': $cmd='v-rebuild-databases';
  32. break;
  33. case 'rebuild cron': $cmd='v-rebuild-cron-jobs';
  34. break;
  35. default: header("Location: /list/user/"); exit;
  36. }
  37. } else {
  38. switch ($action) {
  39. case 'update counters': $cmd='v-update-user-counters';
  40. break;
  41. default: header("Location: /list/user/"); exit;
  42. }
  43. }
  44. foreach ($user as $value) {
  45. $value = escapeshellarg($value);
  46. exec(HESTIA_CMD.$cmd." ".$value." ".$restart, $output, $return_var);
  47. $changes = 'yes';
  48. }
  49. header("Location: /list/user/");