index.php 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  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. if ((!isset($_POST['token'])) || ($_SESSION['token'] != $_POST['token'])) {
  9. header('location: /login/');
  10. exit();
  11. }
  12. $domain = $_POST['domain'];
  13. $record = $_POST['record'];
  14. $action = $_POST['action'];
  15. if ($_SESSION['user'] == 'admin') {
  16. if (empty($record)) {
  17. switch ($action) {
  18. case 'delete': $cmd='v-delete-dns-domain';
  19. break;
  20. case 'suspend': $cmd='v-suspend-dns-domain';
  21. break;
  22. case 'unsuspend': $cmd='v-unsuspend-dns-domain';
  23. break;
  24. default: header("Location: /list/dns/"); exit;
  25. }
  26. } else {
  27. switch ($action) {
  28. case 'delete': $cmd='v-delete-dns-record';
  29. break;
  30. case 'suspend': $cmd='v-suspend-dns-record';
  31. break;
  32. case 'unsuspend': $cmd='v-unsuspend-dns-record';
  33. break;
  34. default: header("Location: /list/dns/?domain=".$domain); exit;
  35. }
  36. }
  37. } else {
  38. if (empty($record)) {
  39. switch ($action) {
  40. case 'delete': $cmd='v-delete-dns-domain';
  41. break;
  42. default: header("Location: /list/dns/"); exit;
  43. }
  44. } else {
  45. switch ($action) {
  46. case 'delete': $cmd='v-delete-dns-record';
  47. break;
  48. default: header("Location: /list/dns/?domain=".$domain); exit;
  49. }
  50. }
  51. }
  52. if (empty($record)) {
  53. foreach ($domain as $value) {
  54. // DNS
  55. $value = escapeshellarg($value);
  56. exec (VESTA_CMD.$cmd." ".$user." ".$value." no", $output, $return_var);
  57. $restart = 'yes';
  58. }
  59. } else {
  60. foreach ($record as $value) {
  61. // DNS Record
  62. $value = escapeshellarg($value);
  63. $dom = escapeshellarg($domain);
  64. exec (VESTA_CMD.$cmd." ".$user." ".$dom." ".$value." no", $output, $return_var);
  65. $restart = 'yes';
  66. }
  67. }
  68. if (!empty($restart)) {
  69. exec (VESTA_CMD."v-restart-dns", $output, $return_var);
  70. }
  71. if (empty($record)) {
  72. header("Location: /list/dns/");
  73. exit;
  74. } else {
  75. header("Location: /list/dns/?domain=".$domain);
  76. exit;
  77. }