$value){ if (!preg_match("/(\d\d)-.+/i", $value)){ $mod_name = quoteshellarg($value); $chg = true; exec(HESTIA_CMD . "v-ext-modules-run php_brepo_modules php_enable " . $ver_quoted . " " . $mod_name, $output, $return_var); unset($output); } } foreach ($phps_modules as $key => $value){ if ($value["STATE"]!="disabled"){ $fnd = false; foreach ($new_modules as $ikey => $ivalue){ if ($ivalue==$value["STATE"]){ $fnd = true; break; } } if (!$fnd){ $chg = true; $mod_name = quoteshellarg($phps_modules[$key]["MODNAME"]); exec(HESTIA_CMD . "v-ext-modules-run php_brepo_modules php_disable " . $ver_quoted . " " . $mod_name, $output, $return_var); unset($output); } } } exec(HESTIA_CMD . "v-ext-modules-run php_brepo_modules php_modules " . $ver_quoted . " json", $output, $return_var); $phps_modules = []; if ($return_var == 0) { $phps_modules = json_decode(implode("", $output), true); } else { $error_message = $output; } unset($output); if ($chg){ exec(HESTIA_CMD . "v-restart-web-backend", $output, $return_var); } } // Render page render_page($user, $TAB, "extmodules/extmodules_php_brepo_modules_list"); } else { // Data exec(HESTIA_CMD . "v-ext-modules-run php_brepo_modules php_list json", $output, $return_var); $phps = []; if ($return_var == 0) { $phps = json_decode(implode("", $output), true); ksort($phps); } else { $error_message = $output; } unset($output); // Render page render_page($user, $TAB, "extmodules/extmodules_php_brepo_modules"); } // Back uri $_SESSION["back"] = $_SERVER["REQUEST_URI"];