From d3f7451c9bd737ae1092779113d1a51cc2bbf286 Mon Sep 17 00:00:00 2001 From: Alexey Berezhok Date: Sun, 15 Dec 2024 23:47:27 +0300 Subject: [PATCH] Added passeneg manager. Part 4 --- func_ruby/ext-modules/passenger_manager.mod | 2 +- web/edit/web/index.php | 27 ++++++++++++++++++++- web/templates/pages/edit_web.php | 9 +++++-- 3 files changed, 34 insertions(+), 4 deletions(-) diff --git a/func_ruby/ext-modules/passenger_manager.mod b/func_ruby/ext-modules/passenger_manager.mod index ad85949..8b52313 100644 --- a/func_ruby/ext-modules/passenger_manager.mod +++ b/func_ruby/ext-modules/passenger_manager.mod @@ -142,7 +142,7 @@ class PassengerWorker < Kernel::ModuleCoreWorker hestia_save_file_key_pair(dom_file, domain, ruby_ver) ACTION_OK else - log_return("Ruby path doesn't exists. #{ruby_ver}") + log_return("Ruby path doesn't exists. #{ruby_ver}. Args #{args}") end end when "disable_user" diff --git a/web/edit/web/index.php b/web/edit/web/index.php index 6c5badf..414101d 100644 --- a/web/edit/web/index.php +++ b/web/edit/web/index.php @@ -205,7 +205,6 @@ if (($return_var == 0) && (!empty($check_passenger_enabled)) && ($check_passenge } } } -unset($output); // Check POST request if (!empty($_POST["save"])) { @@ -220,6 +219,32 @@ if (!empty($_POST["save"])) { $v_newip = ""; $v_newip_public = ""; + $changed_ruby = false; + + // Save ruby setting for domain + if (!empty($_POST["v_passenger_enabled"])){ + $v_ruby_path = $_POST["v_ruby_path"]; + if ($v_ruby_path != $domain_ruby["RUBY"]){ + exec(HESTIA_CMD . "v-ext-modules-run passenger_manager set_user_ruby " . quoteshellarg($v_domain) . " ". quoteshellarg($v_ruby_path), $output, $return_var); + check_return_code($return_var, $output); + $restart_web = "yes"; + $restart_proxy = "yes"; + unset($output); + $changed_ruby = true; + } + } else { + if ($passenger_state == "enabled"){ + if ($domain_ruby["RUBY"] != ""){ + exec(HESTIA_CMD . "v-ext-modules-run passenger_manager disable_user " . quoteshellarg($v_domain), $output, $return_var); + check_return_code($return_var, $output); + $restart_web = "yes"; + $restart_proxy = "yes"; + unset($output); + $changed_ruby = true; + } + } + } + if (!empty($_POST["v_ip"])) { $v_newip = $_POST["v_ip"]; $v_newip_public = empty($ips[$v_newip]["NAT"]) ? $v_newip : $ips[$v_newip]["NAT"]; diff --git a/web/templates/pages/edit_web.php b/web/templates/pages/edit_web.php index 2d3214d..c4f8a84 100644 --- a/web/templates/pages/edit_web.php +++ b/web/templates/pages/edit_web.php @@ -475,7 +475,12 @@ if ($passenger_state == "enabled") {
- + > @@ -488,7 +493,7 @@ if ($passenger_state == "enabled") { $value) { echo "\t\t\t\t\n";