index.php 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. <?php
  2. use function Hestiacp\quoteshellarg\quoteshellarg;
  3. $TAB = "SERVER";
  4. // Main include
  5. include $_SERVER["DOCUMENT_ROOT"] . "/inc/main.php";
  6. // Check user
  7. if ($_SESSION["userContext"] != "admin") {
  8. header("Location: /list/user");
  9. exit();
  10. }
  11. if (!empty($_POST)) {
  12. if (!empty($_POST["v_app_name"]) && $_SESSION["APP_NAME"] != $_POST["v_app_name"]) {
  13. exec(
  14. HESTIA_CMD .
  15. "v-change-sys-config-value APP_NAME " .
  16. quoteshellarg($_POST["v_app_name"]),
  17. $output,
  18. $return_var,
  19. );
  20. }
  21. if (!empty($_POST["v_title"]) && $_SESSION["TITLE"] != $_POST["v_title"]) {
  22. exec(
  23. HESTIA_CMD . "v-change-sys-config-value TITLE " . quoteshellarg($_POST["v_title"]),
  24. $output,
  25. $return_var,
  26. );
  27. }
  28. if (
  29. !empty($_POST["v_subject_email"]) &&
  30. $_SESSION["SUBJECT_EMAIL"] != $_POST["v_subject_email"]
  31. ) {
  32. exec(
  33. HESTIA_CMD .
  34. "v-change-sys-config-value SUBJECT_EMAIL " .
  35. quoteshellarg($_POST["v_subject_email"]),
  36. $output,
  37. $return_var,
  38. );
  39. }
  40. if (!empty($_POST["v_hide_docs"]) && $_SESSION["HIDE_DOCS"] != $_POST["v_hide_docs"]) {
  41. exec(
  42. HESTIA_CMD .
  43. "v-change-sys-config-value HIDE_DOCS " .
  44. quoteshellarg($_POST["v_hide_docs"]),
  45. $output,
  46. $return_var,
  47. );
  48. }
  49. if (!empty($_POST["v_from_name"]) && $_SESSION["FROM_NAME"] != $_POST["v_from_name"]) {
  50. exec(
  51. HESTIA_CMD .
  52. "v-change-sys-config-value FROM_NAME " .
  53. quoteshellarg($_POST["v_from_name"]),
  54. $output,
  55. $return_var,
  56. );
  57. }
  58. if (!empty($_POST["v_from_email"]) && $_SESSION["FROM_EMAIL"] != $_POST["v_from_email"]) {
  59. exec(
  60. HESTIA_CMD .
  61. "v-change-sys-config-value FROM_EMAIL " .
  62. quoteshellarg($_POST["v_from_email"]),
  63. $output,
  64. $return_var,
  65. );
  66. }
  67. if (!empty($_POST["v_hide_docs"]) && $_SESSION["HIDE_DOCS"] != $_POST["v_hide_docs"]) {
  68. exec(
  69. HESTIA_CMD .
  70. "v-change-sys-config-value HIDE_DOCS " .
  71. quoteshellarg($_POST["v_hide_docs"]),
  72. $output,
  73. $return_var,
  74. );
  75. }
  76. if (!empty($_POST["v_update_logo"])) {
  77. exec(HESTIA_CMD . "v-update-white-label-logo");
  78. }
  79. if (!empty($_POST["v_reset_logo"])) {
  80. exec(HESTIA_CMD . "v-update-white-label-logo yes yes");
  81. }
  82. }
  83. // Check system configuration
  84. exec(HESTIA_CMD . "v-list-sys-config json", $output, $return_var);
  85. $data = json_decode(implode("", $output), true);
  86. unset($output);
  87. $sys_arr = $data["config"];
  88. foreach ($sys_arr as $key => $value) {
  89. $_SESSION[$key] = $value;
  90. }
  91. $v_title = $_SESSION["TITLE"];
  92. $v_app_name = $_SESSION["APP_NAME"];
  93. $v_hide_docs = $_SESSION["HIDE_DOCS"];
  94. $v_from_name = $_SESSION["FROM_NAME"];
  95. $v_from_email = $_SESSION["FROM_EMAIL"];
  96. $v_subject_email = $_SESSION["SUBJECT_EMAIL"];
  97. // Render page
  98. render_page($user, $TAB, "edit_whitelabel");
  99. // Flush session messages
  100. unset($_SESSION["error_msg"]);
  101. unset($_SESSION["ok_msg"]);