Add support of bunkerweb part 2
This commit is contained in:
30
bin/v-bunkerweb-module
Normal file → Executable file
30
bin/v-bunkerweb-module
Normal file → Executable file
@@ -70,17 +70,16 @@ when :add
|
||||
begin
|
||||
api = HestiaBunkerWebApi.new("http://127.0.0.1:8888")
|
||||
existing_services = api.list_services()
|
||||
if existing_services.nil? || existing_services.strip.empty?
|
||||
if existing_services.nil?
|
||||
result_arr = []
|
||||
else
|
||||
services_data = JSON.parse(existing_services)
|
||||
if services_data["services"]
|
||||
if services_data["services"].any? { |s| s["id"] == v_domain }
|
||||
if existing_services["services"]
|
||||
if existing_services["services"].any? { |s| s["id"] == v_domain }
|
||||
hestia_print_error_message_to_cli "domain already exists"
|
||||
log_event E_EXISTS, $ARGUMENTS
|
||||
exit 1
|
||||
end
|
||||
result_arr = services_data["services"]
|
||||
result_arr = existing_services["services"]
|
||||
else
|
||||
result_arr = []
|
||||
end
|
||||
@@ -109,12 +108,11 @@ when :delete
|
||||
begin
|
||||
api = HestiaBunkerWebApi.new("http://127.0.0.1:8888")
|
||||
existing_services = api.list_services()
|
||||
if existing_services.nil? || existing_services.strip.empty?
|
||||
if existing_services.nil?
|
||||
result_arr = []
|
||||
else
|
||||
services_data = JSON.parse(existing_services)
|
||||
if services_data["services"]
|
||||
result_arr = services_data["services"]
|
||||
if existing_services["services"]
|
||||
result_arr = existing_services["services"]
|
||||
else
|
||||
result_arr = []
|
||||
end
|
||||
@@ -146,12 +144,11 @@ when :addssl, :updssl
|
||||
begin
|
||||
api = HestiaBunkerWebApi.new("http://127.0.0.1:8888")
|
||||
existing_services = api.list_services()
|
||||
if existing_services.nil? || existing_services.strip.empty?
|
||||
if existing_services.nil?
|
||||
result_arr = []
|
||||
else
|
||||
services_data = JSON.parse(existing_services)
|
||||
if services_data["services"]
|
||||
result_arr = services_data["services"]
|
||||
if existing_services["services"]
|
||||
result_arr = existing_services["services"]
|
||||
else
|
||||
result_arr = []
|
||||
end
|
||||
@@ -174,12 +171,11 @@ when :list
|
||||
begin
|
||||
api = HestiaBunkerWebApi.new("http://127.0.0.1:8888")
|
||||
existing_services = api.list_services()
|
||||
if existing_services.nil? || existing_services.strip.empty?
|
||||
if existing_services.nil?
|
||||
result_arr = []
|
||||
else
|
||||
services_data = JSON.parse(existing_services)
|
||||
if services_data["services"]
|
||||
result_arr = services_data["services"]
|
||||
if existing_services["services"]
|
||||
result_arr = existing_services["services"]
|
||||
else
|
||||
result_arr = []
|
||||
end
|
||||
|
||||
@@ -0,0 +1,64 @@
|
||||
<?php
|
||||
use function Hestiacp\quoteshellarg\quoteshellarg;
|
||||
|
||||
$TAB = "EXTMODULES";
|
||||
|
||||
// Main include
|
||||
include $_SERVER["DOCUMENT_ROOT"] . "/inc/main.php";
|
||||
|
||||
// Check user
|
||||
if ($_SESSION["userContext"] != "admin") {
|
||||
header("Location: /list/user");
|
||||
exit();
|
||||
}
|
||||
|
||||
exec(
|
||||
HESTIA_CMD . "v-ext-modules state bunkerweb_module json",
|
||||
$output,
|
||||
$return_var,
|
||||
);
|
||||
$check_passenger_enabled = json_decode(implode("", $output), true);
|
||||
if (
|
||||
$return_var != 0 ||
|
||||
empty($check_passenger_enabled) ||
|
||||
$check_passenger_enabled[0]["STATE"] != "enabled"
|
||||
) {
|
||||
header("Location: /list/extmodules/");
|
||||
exit();
|
||||
}
|
||||
unset($output);
|
||||
|
||||
$error_message = "";
|
||||
|
||||
// Data
|
||||
exec(
|
||||
HESTIA_CMD . "v-ext-modules-run bunkerweb_module list json",
|
||||
$output,
|
||||
$return_var,
|
||||
);
|
||||
$bunkerweb_list = [];
|
||||
if ($return_var == 0) {
|
||||
$bunkerweb_list = json_decode(implode("", $output), true);
|
||||
} else {
|
||||
$error_message = $output;
|
||||
}
|
||||
|
||||
unset($output);
|
||||
|
||||
//Get current ip
|
||||
exec(HESTIA_CMD . "v-list-sys-ips json", $output, $return_var);
|
||||
$server_ip = "127.0.0.1";
|
||||
if ($return_var == 0) {
|
||||
$server_ip_list = json_decode(implode("", $output), true);
|
||||
if (!empty($server_ip_list)) {
|
||||
$server_ip = array_key_first($server_ip_list);
|
||||
}
|
||||
}
|
||||
|
||||
unset($output);
|
||||
|
||||
// Render page
|
||||
render_page($user, $TAB, "extmodules/extmodules_bunkerweb_module");
|
||||
|
||||
// Back uri
|
||||
$_SESSION["back"] = $_SERVER["REQUEST_URI"];
|
||||
|
||||
@@ -0,0 +1,82 @@
|
||||
<!-- Begin toolbar -->
|
||||
<div class="toolbar">
|
||||
<div class="toolbar-inner">
|
||||
<div class="toolbar-buttons">
|
||||
<a class="button button-secondary button-back js-button-back" href="/list/extmodules/">
|
||||
<i class="fas fa-arrow-left icon-blue"></i><?= _("Back") ?>
|
||||
</a>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- End toolbar -->
|
||||
|
||||
<div class="container">
|
||||
|
||||
<?php if (!empty($error_message)) { ?>
|
||||
<div class="u-text-center inline-alert inline-alert-danger u-mb20" role="alert">
|
||||
<i class="fas fa-circle-exclamation"></i>
|
||||
<p><?= $error_message ?></p>
|
||||
</div>
|
||||
<?php } ?>
|
||||
|
||||
|
||||
<h1 class="u-text-center u-hide-desktop u-mt20 u-pr30 u-mb20 u-pl30"><?= _(
|
||||
"List of services in bunkerweb",
|
||||
) ?></h1>
|
||||
|
||||
<div class="units-table js-units-container">
|
||||
<div class="units-table-header">
|
||||
<div class="units-table-cell u-text-center"><?= _("ID") ?></div>
|
||||
<div class="units-table-cell u-text-center"><?= _("Method") ?></div>
|
||||
<div class="units-table-cell u-text-center"><?= _("Is draft") ?></div>
|
||||
<div class="units-table-cell u-text-center"><?= _("Creation date") ?></div>
|
||||
<div class="units-table-cell u-text-center"><?= _("Last update") ?></div>
|
||||
<div class="units-table-cell u-text-center"><?= _("Template") ?></div>
|
||||
<div class="units-table-cell u-text-center"><?= _("Security mode") ?></div>
|
||||
</div>
|
||||
|
||||
<?php foreach ($bunkerweb_list as $key => $value) { ?>
|
||||
<div class="units-table-row js-unit">
|
||||
<div class="units-table-cell u-text-center">
|
||||
<span class="u-hide-desktop"><?= _("ID") ?>:</span>
|
||||
<?php echo $bunkerweb_list[$key]["id"]; ?>
|
||||
</div>
|
||||
<div class="units-table-cell u-text-center">
|
||||
<span class="u-hide-desktop"><?= _("Method") ?>:</span>
|
||||
<?php echo $bunkerweb_list[$key]["method"]; ?>
|
||||
</div>
|
||||
<div class="units-table-cell u-text-center">
|
||||
<span class="u-hide-desktop"><?= _("Is draft") ?>:</span>
|
||||
<?php echo $bunkerweb_list[$key]["is_draft"]; ?>
|
||||
</div>
|
||||
<div class="units-table-cell u-text-center">
|
||||
<span class="u-hide-desktop"><?= _("Creation date") ?>:</span>
|
||||
<?php echo $bunkerweb_list[$key]["creation_date"]; ?>
|
||||
</div>
|
||||
<div class="units-table-cell u-text-center">
|
||||
<span class="u-hide-desktop"><?= _("Last update") ?>:</span>
|
||||
<?php echo $bunkerweb_list[$key]["last_update"]; ?>
|
||||
</div>
|
||||
<div class="units-table-cell u-text-center">
|
||||
<span class="u-hide-desktop"><?= _("Template") ?>:</span>
|
||||
<?php echo $bunkerweb_list[$key]["template"]; ?>
|
||||
</div>
|
||||
<div class="units-table-cell u-text-center">
|
||||
<span class="u-hide-desktop"><?= _("Security mode") ?>:</span>
|
||||
<?php echo $bunkerweb_list[$key]["security_mode"]; ?>
|
||||
</div>
|
||||
</div>
|
||||
<?php } ?>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
|
||||
<footer class="app-footer">
|
||||
<div class="container app-footer-inner">
|
||||
<p>
|
||||
<?= _("Bunkerweb service list") ?>.
|
||||
<?= _("For unning bunkwerweb service go to") ?>
|
||||
<a href="https://<?= $server_ip ?>/bw"><?= _("bunkerweb admin page") ?></a>
|
||||
</p>
|
||||
</div>
|
||||
</footer>
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
<div class="toolbar">
|
||||
<div class="toolbar-inner">
|
||||
<div class="toolbar-buttons">
|
||||
<a class="button button-secondary button-back js-button-back" href="/list/server/">
|
||||
<a class="button button-secondary button-back js-button-back" href="/list/extmodules/">
|
||||
<i class="fas fa-arrow-left icon-blue"></i><?= _("Back") ?>
|
||||
</a>
|
||||
</div>
|
||||
@@ -12,19 +12,17 @@
|
||||
|
||||
<div class="container">
|
||||
|
||||
<?php
|
||||
if (!empty($error_message)) {
|
||||
?>
|
||||
<?php if (!empty($error_message)) { ?>
|
||||
<div class="u-text-center inline-alert inline-alert-danger u-mb20" role="alert">
|
||||
<i class="fas fa-circle-exclamation"></i>
|
||||
<p><?= $error_message ?></p>
|
||||
</div>
|
||||
<?php
|
||||
}
|
||||
?>
|
||||
<?php } ?>
|
||||
|
||||
|
||||
<h1 class="u-text-center u-hide-desktop u-mt20 u-pr30 u-mb20 u-pl30"><?= _("Available PHP list") ?></h1>
|
||||
<h1 class="u-text-center u-hide-desktop u-mt20 u-pr30 u-mb20 u-pl30"><?= _(
|
||||
"Available PHP list",
|
||||
) ?></h1>
|
||||
|
||||
<div class="units-table js-units-container">
|
||||
<div class="units-table-header">
|
||||
@@ -32,18 +30,21 @@ if (!empty($error_message)) {
|
||||
<div class="units-table-cell u-text-center"><?= _("Action") ?></div>
|
||||
</div>
|
||||
|
||||
<?php
|
||||
foreach ($phps as $key => $value) {
|
||||
?>
|
||||
<?php foreach ($phps as $key => $value) { ?>
|
||||
<div class="units-table-row js-unit">
|
||||
<div class="units-table-cell u-text-center">
|
||||
<span class="u-hide-desktop"><?= _("PHP version") ?>:</span>
|
||||
<?php echo "PHP ".$phps[$key]["PHPVER"]; ?>
|
||||
<?php echo "PHP " . $phps[$key]["PHPVER"]; ?>
|
||||
</div>
|
||||
<div class="units-table-cell u-text-center-desktop">
|
||||
<span class="u-hide-desktop"><?= _("Action") ?>:</span>
|
||||
<?= _("Change modules list") ?>
|
||||
<a href="/extm/php_brepo_modules/edit/?ver=<?= urlencode($phps[$key]['PHPVER']) ?>" title="<?= _("Change modules list for PHP") ?><?= $phps[$key]['PHPVER'] ?>">
|
||||
<a href="/extm/php_brepo_modules/edit/?ver=<?= urlencode(
|
||||
$phps[$key]["PHPVER"],
|
||||
) ?>" title="<?=
|
||||
_("Change modules list for PHP")
|
||||
$phps[$key]["PHPVER"]
|
||||
?>">
|
||||
<i class="fa-solid fa-gear icon-purple"></i>
|
||||
</a>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user