Add list of singleton pamraeters to custom, refine letsencrypt json

This commit is contained in:
2024-11-04 17:08:38 +00:00
parent d5a771f6f3
commit f238fcfa70
27 changed files with 868 additions and 251 deletions

View File

@@ -1,5 +1,5 @@
#
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-18 19:00:38
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-04 16:03:10
#
#
# Routines to be edited by the developer to provide validation for parameters
@@ -36,8 +36,86 @@ our $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
return $ret;
}
sub validate_CHECKALLDOMAINS {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
return $ret;
}
sub validate_CHECKALLENABLEDDOMAINS {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
return $ret;
}
# Get singleton data for each panel
sub get_data_for_panel_LIST {
# Return a hash with the fields required which will be loaded into the shared data
my $c = shift;
my %ret = (
'Data1'=>'Data for LIST', #Example
# fields from Inputs in LIST $fields['LIST']
'InternalIP'=>'InternalIP contents',
'ExternalIP'=>'ExternalIP contents',
'InternetIP'=>'InternetIP contents',
'Issuer'=>'Issuer contents',
'Expiry'=>'Expiry contents',
'NotBefore'=>'NotBefore contents',
);
return %ret;
}
sub get_data_for_panel_PARAMS {
# Return a hash with the fields required which will be loaded into the shared data
my $c = shift;
my %ret = (
'Data1'=>'Data for PARAMS', #Example
# fields from Inputs in PARAMS $fields['PARAMS']
);
return %ret;
}
sub get_data_for_panel_CHECKALLDOMAINS {
# Return a hash with the fields required which will be loaded into the shared data
my $c = shift;
my %ret = (
'Data1'=>'Data for CHECKALLDOMAINS', #Example
# fields from Inputs in CHECKALLDOMAINS $fields['CHECKALLDOMAINS']
);
return %ret;
}
sub get_data_for_panel_CHECKALLENABLEDDOMAINS {
# Return a hash with the fields required which will be loaded into the shared data
my $c = shift;
my %ret = (
'Data1'=>'Data for CHECKALLENABLEDDOMAINS', #Example
# fields from Inputs in CHECKALLENABLEDDOMAINS $fields['CHECKALLENABLEDDOMAINS']
);
return %ret;
}
# Get control data for tables(s)
# Get control data for table(s)
sub get_DomainList {
# Return an array of hashes of the contents for each row and column for DomainList
@@ -70,6 +148,22 @@ our $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
return $ret;
}
sub get_selected_CHECKALLDOMAINS {
my $c = shift;
my $selected = shift; #Parameter is name of selected row.
my $is_new_record = shift; #Indicates new record required (defaults)
my %ret = {};
return $ret;
}
sub get_selected_CHECKALLENABLEDDOMAINS {
my $c = shift;
my $selected = shift; #Parameter is name of selected row.
my $is_new_record = shift; #Indicates new record required (defaults)
my %ret = {};
return $ret;
}
#after sucessful modify or create or whatever and submit then perfom (if the params validate)
@@ -87,6 +181,20 @@ our $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
return $ret;
}
sub perform_CHECKALLDOMAINS {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
return $ret;
}
sub perform_CHECKALLENABLEDDOMAINS {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
return $ret;
}
sub create_link{
# WIP

View File

@@ -1,11 +1,11 @@
package SrvMngr::Controller::Letsencrypt;
#
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-18 19:00:38
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-04 16:03:10
#
#----------------------------------------------------------------------
# heading : Miscellaneous
# description : letsencrypt
# navigation : 2000 400
# heading : Network
# description : Letsencrypt certificate
# navigation : 6000 6600
#
# name : letsencrypt, method : get, url : /letsencrypt, ctlact : Letsencrypt#main
# name : letsencryptu, method : post, url : /letsencryptu, ctlact : Letsencrypt#do_update
@@ -67,7 +67,7 @@ sub main {
$c->app->log->info( $c->log_req );
my %lets_data = ();
my $title = $c->l('lets_letsencrypt');
my $title = $c->l('lets_Letsencrypt_certificate');
my $modul = '';
$lets_data{'trt'} = 'LIST';
@@ -76,9 +76,19 @@ sub main {
# which DB - this only really works if the initial panel is a PARAMS type panel and not a TABLE
my $db = $cdb; #pickup local or global db or Default to config
#pickup any other contents needed and load them into hash shared with panel
my %returned_hash;
# subroutine returns a hash directly
%returned_hash = get_data_for_panel_LIST();
# Copy each key-value pair from the returned hash to the prefix data hash
while (my ($key, $value) = each %returned_hash) {
$lets_data{$key} = $value;
}
# and table control fields
$c->stash(DomainList=>$c->get_DomainList());
$c->stash(DomainList=>$c->get_DomainList());
$c->stash(
@@ -119,7 +129,7 @@ sub do_update {
$c->app->log->info($c->log_req);
my %lets_data = ();
my $title = $c->l('lets_letsencrypt');
my $title = $c->l('lets_Letsencrypt_certificate');
# Accessing all POST parameters
my %params = $c->req->params->to_hash;
@@ -151,6 +161,18 @@ sub do_update {
$thispanel = 'PARAMS';
}
if ($trt eq 'CHECKALLDOMAINS'){
#Validate form parameters for panel CHECKALLDOMAINS
$ret = $c->validate_CHECKALLDOMAINS(\%lets_data);
$thispanel = 'CHECKALLDOMAINS';
}
if ($trt eq 'CHECKALLENABLEDDOMAINS'){
#Validate form parameters for panel CHECKALLENABLEDDOMAINS
$ret = $c->validate_CHECKALLENABLEDDOMAINS(\%lets_data);
$thispanel = 'CHECKALLENABLEDDOMAINS';
}
if ($ret ne "ok") {
# return to the panel with error message
@@ -183,9 +205,33 @@ sub do_update {
}
}
if ($trt eq 'CHECKALLDOMAINS'){
#do whatever is required ...
$ret = $c->perform_CHECKALLDOMAINS(\%lets_data);
if ($ret ne "ok") {
# return to the panel with error message
$c->stash(error => $c->l($ret));
$c->render("letsencrypt");
} else {
$c->stash( success => $c->l('lets_CHECKALLDOMAINS_panel_action_was_successful')); #A bit bland - edit it in the lex file
}
}
if ($trt eq 'CHECKALLENABLEDDOMAINS'){
#do whatever is required ...
$ret = $c->perform_CHECKALLENABLEDDOMAINS(\%lets_data);
if ($ret ne "ok") {
# return to the panel with error message
$c->stash(error => $c->l($ret));
$c->render("letsencrypt");
} else {
$c->stash( success => $c->l('lets_CHECKALLENABLEDDOMAINS_panel_action_was_successful')); #A bit bland - edit it in the lex file
}
}
# and call any signal-events needed
# Setup shared data and call panel
$c->stash(
title => $title,
@@ -196,7 +242,7 @@ sub do_update {
} else {
$lets_data{'trt'} = 'none';
}
$c->render("letsencrypt");
$c->do_display()
}
}
@@ -216,7 +262,7 @@ sub do_display {
$c->app->log->info($c->log_req);
my %lets_data = ();
my $title = $c->l('lets_letsencrypt');
my $title = $c->l('lets_Letsencrypt_certificate');
# Accessing all parameters
my %params = $c->req->params->to_hash;
@@ -249,6 +295,16 @@ sub do_display {
%selectedrow = $c->get_selected_PARAMS($lets_data{'Selected'},$is_new_record);
}
if ($trt eq 'CHECKALLDOMAINS'){
#Validate form parameters for panel CHECKALLDOMAINS
%selectedrow = $c->get_selected_CHECKALLDOMAINS($lets_data{'Selected'},$is_new_record);
}
if ($trt eq 'CHECKALLENABLEDDOMAINS'){
#Validate form parameters for panel CHECKALLENABLEDDOMAINS
%selectedrow = $c->get_selected_CHECKALLENABLEDDOMAINS($lets_data{'Selected'},$is_new_record);
}
#Copy in the selected row params to the prefix_data hash to pass to the panel
while (my ($key, $value) = each %selectedrow){
@@ -257,6 +313,58 @@ sub do_display {
# Where to go now
$lets_data{'trt'} = $trt;
# Set up other shared data according to the panel to go to
if ($trt eq 'LIST'){
# pickup any other contents needed and load them into hash shared with panel
my %returned_hash;
# subroutine returns a hash directly
%returned_hash = get_data_for_panel_LIST();
# Copy each key-value pair from the returned hash to the prefix data hash
while (my ($key, $value) = each %returned_hash) {
$lets_data{$key} = $value;
}
}
if ($trt eq 'PARAMS'){
# pickup any other contents needed and load them into hash shared with panel
my %returned_hash;
# subroutine returns a hash directly
%returned_hash = get_data_for_panel_PARAMS();
# Copy each key-value pair from the returned hash to the prefix data hash
while (my ($key, $value) = each %returned_hash) {
$lets_data{$key} = $value;
}
}
if ($trt eq 'CHECKALLDOMAINS'){
# pickup any other contents needed and load them into hash shared with panel
my %returned_hash;
# subroutine returns a hash directly
%returned_hash = get_data_for_panel_CHECKALLDOMAINS();
# Copy each key-value pair from the returned hash to the prefix data hash
while (my ($key, $value) = each %returned_hash) {
$lets_data{$key} = $value;
}
}
if ($trt eq 'CHECKALLENABLEDDOMAINS'){
# pickup any other contents needed and load them into hash shared with panel
my %returned_hash;
# subroutine returns a hash directly
%returned_hash = get_data_for_panel_CHECKALLENABLEDDOMAINS();
# Copy each key-value pair from the returned hash to the prefix data hash
while (my ($key, $value) = each %returned_hash) {
$lets_data{$key} = $value;
}
}
# and table control fields
$c->stash(DomainList=>$c->get_DomainList());
# Data for panel
$c->stash(
title => $title,
@@ -264,4 +372,4 @@ sub do_display {
);
$c->render("letsencrypt");
}
1;
1;

View File

@@ -0,0 +1,34 @@
%#
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-04 16:03:10
%#
<div id="Letsencrypt-CHECKALLDOMAINS" class="partial Letsencrypt-CHECKALLDOMAINS">
<script>
window.onload = function() {
SelectInput();
};
</script>
% my $btn = l('lets_APPLY');
%= form_for "Letsencryptd" => (method => 'POST') => begin
% param 'trt' => $lets_data->{trt} unless param 'trt';
%= hidden_field 'trt' => $lets_data->{trt}
%# Inputs etc in here.
<h1 class='head'><%=l('lets_Check_all_domains')%></h1>
<h2 class='subh'><%=l('lets_Loop_through_checking_the_letsencrypt')%></h2>
<span class=label>
%=l('lets_All_domains_check_result')
</span><span class=data>
% param 'AllDomainsCheck' => $lets_data->{AllDomainsCheck} unless param 'AllDomainsCheck';
%= text_area 'AllDomainsCheck', cols=>40, rows=>10, Readonly=>True
</span><br>
<span class='data'>
%= submit_button l('lets_Back'), class => 'action subm2'
</span>
%# Probably finally by a submit.
%end
</div>

View File

@@ -0,0 +1,34 @@
%#
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-04 16:03:10
%#
<div id="Letsencrypt-CHECKALLENABLEDDOMAINS" class="partial Letsencrypt-CHECKALLENABLEDDOMAINS">
<script>
window.onload = function() {
SelectInput();
};
</script>
% my $btn = l('lets_APPLY');
%= form_for "Letsencryptd" => (method => 'POST') => begin
% param 'trt' => $lets_data->{trt} unless param 'trt';
%= hidden_field 'trt' => $lets_data->{trt}
%# Inputs etc in here.
<h1 class='head'><%=l('lets_Check_all_enabled_domains')%></h1>
<h2 class='subh'><%=l('lets_Loop_through_checking_the_letsencrypt')%></h2>
<span class=label>
%=l('lets_Enabled_domains_check_result')
</span><span class=data>
% param 'EnabledDomainsCheck' => $lets_data->{EnabledDomainsCheck} unless param 'EnabledDomainsCheck';
%= text_area 'EnabledDomainsCheck', cols=>40, rows=>10, Readonly=>True
</span><br>
<span class='data'>
%= submit_button l('lets_Back'), class => 'action subm2'
</span>
%# Probably finally by a submit.
%end
</div>

View File

@@ -1,5 +1,5 @@
%#
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-18 19:00:38
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-04 16:03:10
%#
<div id="Letsencrypt-LIST" class="partial Letsencrypt-LIST">
<script>
@@ -7,9 +7,6 @@
SelectInput();
};
</script>
<h2>
%= l('lets_Hello_LIST');
</h2>
% my $btn = l('lets_APPLY');
%= form_for "Letsencryptd" => (method => 'POST') => begin
@@ -17,9 +14,16 @@
%= hidden_field 'trt' => $lets_data->{trt}
%# Inputs etc in here.
<h1 class='head'><%=l('lets_List_of_Domains')%></h1>
%= link_to l('lets_CONFIG'), 'letsencrypt?page=0&page_stack=&Next=Next&wherenext=CONFIG_PAGE' , class=>'link link2'
<h2 class='subh'><%=l('lets_FORM_DESCRIPTION')%></h2>
%= link_to l('lets_CHECK_ALL_DOMAINS'), 'letsencrypt?page=0&page_stack=&Next=Next&wherenext=CHECK_DOMAINS_PAGE' , class=>'link link3'
%= link_to l('lets_CHECK_ENABLED_DOMAINS'), 'letsencrypt?page=0&page_stack=&Next=Next&wherenext=CHECK_ENABLED_DOMAINS_PAGE' , class=>'link link4'
<h2 class='subh2'><%=l('lets_IPs_for_this_Server')%></h2>
<p><span class=label>
%=l('lets_Internal_IP')
@@ -28,13 +32,45 @@
%= text_field 'InternalIP', size => '50', class => 'textinput InternalIP' , pattern=>'.*' , placeholder=>'InternalIP', Readonly=>'true'
<br></span></p>
<p><span class=label>
%=l('lets_External_Interface_IP')
</span><span class=data>
% param 'ExternalIP' => $lets_data->{ExternalIP} unless param 'ExternalIP';
%= text_field 'ExternalIP', size => '50', class => 'textinput ExternalIP' , pattern=>'.*' , placeholder=>'ExternalIP', Readonly=>'true'
<br></span></p>
<p><span class=label>
%=l('lets_Internet_IP')
</span><span class=data>
% param 'ObserverIP' => $lets_data->{ObserverIP} unless param 'ObserverIP';
%= text_field 'ObserverIP', size => '50', class => 'textinput ObserverIP' , pattern=>'.*' , placeholder=>'ObserverIP', Readonly=>'true'
% param 'InternetIP' => $lets_data->{InternetIP} unless param 'InternetIP';
%= text_field 'InternetIP', size => '50', class => 'textinput InternetIP' , pattern=>'.*' , placeholder=>'InternetIP', Readonly=>'true'
<br></span></p>
<h2 class='subh3'><%=l('lets_Current_certificate_details')%></h2>
<p><span class=label>
%=l('lets_Issuer')
</span><span class=data>
% param 'Issuer' => $lets_data->{Issuer} unless param 'Issuer';
%= text_field 'Issuer', size => '50', class => 'textinput Issuer' , pattern=>'.*' , placeholder=>'Issuer', Readonly=>'true'
<br></span></p>
<p><span class=label>
%=l('lets_Expiry')
</span><span class=data>
% param 'Expiry' => $lets_data->{Expiry} unless param 'Expiry';
%= text_field 'Expiry', size => '50', class => 'textinput Expiry' , pattern=>'.*' , placeholder=>'Expiry', Readonly=>'true'
<br></span></p>
<p><span class=label>
%=l('lets_Not_Before')
</span><span class=data>
% param 'NotBefore' => $lets_data->{NotBefore} unless param 'NotBefore';
%= text_field 'NotBefore', size => '50', class => 'textinput NotBefore' , pattern=>'.*' , placeholder=>'NotBefore', Readonly=>'true'
<br></span></p>
<h2 class='subh4'><%=l('lets_List_of_Domains_and_Hosts')%></h2>
<br /><table class="sme-border TableSort sme-table tabl1 ">
<thead class='tabl1'>
<tr table-head-row>
@@ -68,4 +104,4 @@
%# Probably finally by a submit.
%end
</div>
</div>

View File

@@ -1,5 +1,5 @@
%#
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-18 19:00:38
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-04 16:03:10
%#
<div id="Letsencrypt-PARAMS" class="partial Letsencrypt-PARAMS">
<script>
@@ -7,9 +7,6 @@
SelectInput();
};
</script>
<h2>
%= l('lets_Hello_PARAMS');
</h2>
% my $btn = l('lets_APPLY');
%= form_for "Letsencryptd" => (method => 'POST') => begin
@@ -28,7 +25,7 @@
<p><span class=label>
%=l('lets_SERVICE_STATUS')
</span><span class=data>
% my @status_options = [{'Value': 'disabled', 'Text': 'Disabled'}, {'Value': 'enabled', 'Text': 'Enabled'}, {'Value': 'test', 'Text': 'TEST'}];
% my @status_options = [['Disabled' => 'disabled'], ['Enabled' => 'enabled'], ['TEST' => 'test']];
% param 'status' => $lets_data->{status} unless param 'status';
%= select_field 'status' => @status_options, class => 'input'
<br></span> </p>
@@ -36,7 +33,7 @@
<p><span class=label>
%=l('lets_HOOKSCRIPT_STATUS')
</span><span class=data>
% my @hookScript_options = [{'Value': 'disabled', 'Text': 'Disabled'}, {'Value': 'enabled', 'Text': 'Enabled'}];
% my @hookScript_options = [['Disabled' => 'disabled'], ['Enabled' => 'enabled']];
% param 'hookScript' => $lets_data->{hookScript} unless param 'hookScript';
%= select_field 'hookScript' => @hookScript_options, class => 'input'
<br></span> </p>
@@ -44,7 +41,7 @@
<p><span class=label>
%=l('lets_HOSTOVERRIDE_STATUS')
</span><span class=data>
% my @hostOverride_options = [{'Value': 'disabled', 'Text': 'Disabled'}, {'Value': 'yes', 'Text': 'Yes'}];
% my @hostOverride_options = [['Disabled' => 'disabled'], ['Yes' => 'yes']];
% param 'hostOverride' => $lets_data->{hostOverride} unless param 'hostOverride';
%= select_field 'hostOverride' => @hostOverride_options, class => 'input'
<br></span> </p>
@@ -52,7 +49,7 @@
<p><span class=label>
%=l('lets_ACCEPT_TERMS_STATUS')
</span><span class=data>
% my @ACCEPT_TERMS_options = [{'Value': 'disabled', 'Text': 'Disabled'}, {'Value': 'yes', 'Text': 'Yes'}];
% my @ACCEPT_TERMS_options = [['Disabled' => 'disabled'], ['Yes' => 'yes']];
% param 'ACCEPT_TERMS' => $lets_data->{ACCEPT_TERMS} unless param 'ACCEPT_TERMS';
%= select_field 'ACCEPT_TERMS' => @ACCEPT_TERMS_options, class => 'input'
<br></span> </p>
@@ -60,7 +57,7 @@
<p><span class=label>
%=l('lets_API_STATUS')
</span><span class=data>
% my @API_options = [{'Value': '2', 'Text': '2'}];
% my @API_options = [['2' => '2']];
% param 'API' => $lets_data->{API} unless param 'API';
%= select_field 'API' => @API_options, class => 'input'
<br></span> </p>
@@ -68,7 +65,7 @@
<p><span class=label>
%=l('lets_KEYSIZE_STATUS')
</span><span class=data>
% my @keysize_options = [{'Value': '2048', 'Text': '2048'}, {'Value': '3072', 'Text': '3072'}, {'Value': '4096', 'Text': '4096'}];
% my @keysize_options = [['2048' => '2048'], ['3072' => '3072'], ['4096' => '4096']];
% param 'keysize' => $lets_data->{keysize} unless param 'keysize';
%= select_field 'keysize' => @keysize_options, class => 'input'
<br></span> </p>
@@ -76,18 +73,11 @@
<p><span class=label>
%=l('lets_CONFIGUREMODE_STATUS')
</span><span class=data>
% my @configure_options = [{'Value': 'all', 'Text': 'ALL'}, {'Value': 'domains', 'Text': 'Domains'}, {'Value': 'hosts', 'Text': 'HOSTS'}, {'Value': 'none', 'Text': 'NONE'}];
% my @configure_options = [['ALL' => 'all'], ['Domains' => 'domains'], ['HOSTS' => 'hosts'], ['NONE' => 'none']];
% param 'configure' => $lets_data->{configure} unless param 'configure';
%= select_field 'configure' => @configure_options, class => 'input'
<br></span> </p>
<p><span class=label>
%=l('lets_EMAIL')
</span><span class=data>
% param 'email' => $lets_data->{email} unless param 'email';
%= text_field 'email', size => '50', class => 'textinput email' , pattern=>'.*' , placeholder=>'email'
<br></span></p>
<span class='data'>
%= submit_button l('lets_Save'), class => 'action subm9'
</span>

View File

@@ -1,18 +1,10 @@
/*
Generated by SM2Gen version: SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-18 19:00:38
Generated by SM2Gen version: SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-04 16:03:10
*/
.Letsencrypt-panel {}
.name {}
.rout {}
.head {}
.subh {}
.para1 {}
.sele1 {}
.sele2 {}
.sele3 {}
.sele4 {}
.sele5 {}
.sele6 {}
.sele7 {}
.text8 {}
.subm9 {}
.text1 {}
.subm2 {}

View File

@@ -1,7 +1,7 @@
%#
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-18 19:00:38
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-04 16:03:10
%#
% layout 'default', title => "Sme server 2 - letsencrypt", share_dir => './';
% layout 'default', title => "Sme server 2 - Letsencrypt certificate", share_dir => './';
%# css specific to this panel:
% content_for 'module' => begin
%= stylesheet '/css/letsencrypt.css'
@@ -50,7 +50,15 @@
%= include 'partials/_lets_PARAMS'
%}
% if ($lets_data->{trt} eq "CHECKALLDOMAINS") {
%= include 'partials/_lets_CHECKALLDOMAINS'
%}
% if ($lets_data->{trt} eq "CHECKALLENABLEDDOMAINS") {
%= include 'partials/_lets_CHECKALLENABLEDDOMAINS'
%}
</div>
%end
%end

View File

@@ -1,33 +1,47 @@
#
# Generated by SM2Gen version: SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-18 19:00:38
# Generated by SM2Gen version: SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-04 16:03:10
#
'lets_LABEL_LECERT' => 'LABEL LECERT',
'lets_Hello_LIST' => 'Hello LIST',
'lets_Domain_name_/_HOSTNAME' => 'Domain name / HOSTNAME',
'lets_IS_IN_CERT' => 'IS IN CERT',
'lets_Internet_IP' => 'Internet IP',
'lets_HOOKSCRIPT_STATUS' => 'HOOKSCRIPT STATUS',
'lets_Save' => 'Save',
'lets_FORM_DESCRIPTION' => 'FORM DESCRIPTION',
'lets_EMAIL' => 'Email',
'lets_Hello_PARAMS' => 'Hello PARAMS',
'lets_HOSTOVERRIDE_STATUS' => 'HOSTOVERRIDE STATUS',
'lets_Brief_description' => 'Brief description',
'lets_Internal_IP' => 'Internal IP',
'lets_CONFIG_LETSENCRYPT' => 'CONFIG LETSENCRYPT',
'lets_KEYSIZE_STATUS' => 'KEYSIZE STATUS',
'lets_CONFIGUREMODE_STATUS' => 'CONFIGUREMODE STATUS',
'lets_List_of_Domains' => 'List of Domains',
'lets_SERVICE_STATUS' => 'SERVICE STATUS',
'lets_Configuration_for_Letsencrypt' => 'Configuration for Letsencrypt',
'lets_LABEL_POINT' => 'LABEL POINT',
'lets_API_STATUS' => 'API STATUS',
'lets_letsencrypt' => 'Letsencrypt',
'lets_LIST_panel_action_was_successful' => 'LIST panel action was successful',
'lets_CHECK' => 'Check',
'lets_IS_IN_CERT' => 'IS IN CERT',
'lets_IPs_for_this_Server' => 'Ips for this Server',
'lets_LABEL_LECERT' => 'LABEL LECERT',
'lets_LABEL_NAMESERVERS' => 'LABEL NAMESERVERS',
'lets_Content' => 'Content',
'lets_ACCEPT_TERMS_STATUS' => 'ACCEPT TERMS STATUS',
'lets_HOOKSCRIPT_STATUS' => 'HOOKSCRIPT STATUS',
'lets_Check_all_enabled_domains' => 'Check all enabled domains',
'lets_Loop_through_checking_the_letsencrypt' => 'Loop through checking the letsencrypt status for each configured domain wihch is enabled',
'lets_LABEL_POINT' => 'LABEL POINT',
'lets_Issuer' => 'Issuer',
'lets_CHECK_ALL_DOMAINS' => 'CHECK ALL DOMAINS',
'lets_Internet_IP' => 'Internet IP',
'lets_CHECK_ENABLED_DOMAINS' => 'CHECK ENABLED DOMAINS',
'lets_API_STATUS' => 'API STATUS',
'lets_Not_Before' => 'Not Before',
'lets_CONFIG_LETSENCRYPT' => 'CONFIG LETSENCRYPT',
'lets_Configuration_for_Letsencrypt' => 'Configuration for Letsencrypt',
'lets_PARAMS_panel_action_was_successful' => 'PARAMS panel action was successful',
'lets_CHECKALLDOMAINS_panel_action_was_successful' => 'CHECKALLDOMAINS panel action was successful',
'lets_Content' => 'Content',
'lets_KEYSIZE_STATUS' => 'KEYSIZE STATUS',
'lets_Back' => 'Back',
'lets_Domain_name_/_HOSTNAME' => 'Domain name / HOSTNAME',
'lets_Check_all_domains' => 'Check all domains',
'lets_Internal_IP' => 'Internal IP',
'lets_Save' => 'Save',
'lets_External_Interface_IP' => 'External Interface IP',
'lets_Expiry' => 'Expiry',
'lets_Brief_description' => 'Brief description',
'lets_Loop_through_checking_the_letsencrypt' => 'Loop through checking the letsencrypt status for each configured domain',
'lets_HOSTOVERRIDE_STATUS' => 'HOSTOVERRIDE STATUS',
'lets_Enabled_domains_check_result' => 'Enabled domains check result',
'lets_Letsencrypt_certificate' => 'Letsencrypt certificate',
'lets_CHECKALLENABLEDDOMAINS_panel_action_was_successful' => 'CHECKALLENABLEDDOMAINS panel action was successful',
'lets_List_of_Domains_and_Hosts' => 'List of Domains and Hosts',
'lets_Manage_letsencrypt-config_settings:' => 'Manage letsencrypt-config settings:',
'lets_Current_certificate_details' => 'Current certificate details',
'lets_CONFIG' => 'Config',
'lets_SERVICE_STATUS' => 'SERVICE STATUS',
'lets_APPLY' => 'Apply',
'lets_CHECK' => 'Check',
'lets_All_domains_check_result' => 'All domains check result',

View File

@@ -1,5 +1,5 @@
%#
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-19 18:55:51
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-20 16:12:38
%#
<div id="letsencrypt-config-PARAMS" class="partial letsencrypt-config-PARAMS">
<script>

View File

@@ -1,5 +1,5 @@
#
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-19 18:55:51
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-20 16:12:38
#
#
# Routines to be edited by the developer to provide validation for parameters

View File

@@ -1,5 +1,5 @@
/*
Generated by SM2Gen version: SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-19 18:55:51
Generated by SM2Gen version: SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-20 16:12:38
*/
.letsencrypt-config-panel {}
.name {}

View File

@@ -1,5 +1,5 @@
%#
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-19 18:55:51
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-20 16:12:38
%#
% layout 'default', title => "Sme server 2 - letsencrypt-config", share_dir => './';
%# css specific to this panel:

View File

@@ -1,6 +1,6 @@
package SrvMngr::Controller::letsencrypt-config;
#
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-19 18:55:51
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-20 16:12:38
#
#----------------------------------------------------------------------
# heading : Miscellaneous

View File

@@ -1,20 +1,20 @@
#
# Generated by SM2Gen version: SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-19 18:55:51
# Generated by SM2Gen version: SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-10-20 16:12:38
#
'lets_SERVICE_STATUS' => 'SERVICE STATUS',
'lets_ACCEPT_TERMS_STATUS' => 'ACCEPT TERMS STATUS',
'lets_FORM_TITLE' => 'FORM TITLE',
'lets_PARAMS_panel_action_was_successful' => 'PARAMS panel action was successful',
'lets_Manage_letsencrypt-config_settings:' => 'Manage letsencrypt-config settings:',
'lets_Hello_PARAMS' => 'Hello PARAMS',
'lets_CONFIG_LE' => 'CONFIG LE',
'lets_Save' => 'Save',
'lets_SERVICE_STATUS' => 'SERVICE STATUS',
'lets_SERVICE_STATUS' => 'SERVICE STATUS',
'lets_API_STATUS' => 'API STATUS',
'lets_APPLY' => 'Apply',
'lets_CONFIGUREMODE_STATUS' => 'CONFIGUREMODE STATUS',
'lets_API_STATUS' => 'API STATUS',
'lets_EMAIL' => 'Email',
'lets_KEYSIZE_STATUS' => 'KEYSIZE STATUS',
'lets_Hello_PARAMS' => 'Hello PARAMS',
'lets_HOOKSCRIPT_STATUS' => 'HOOKSCRIPT STATUS',
'lets_CONFIGUREMODE_STATUS' => 'CONFIGUREMODE STATUS',
'lets_Save' => 'Save',
'lets_letsencrypt-config' => 'Letsencrypt-config',
'lets_HOSTOVERRIDE_STATUS' => 'HOSTOVERRIDE STATUS',
'lets_ACCEPT_TERMS_STATUS' => 'ACCEPT TERMS STATUS',
'lets_KEYSIZE_STATUS' => 'KEYSIZE STATUS',
'lets_Manage_letsencrypt-config_settings:' => 'Manage letsencrypt-config settings:',
'lets_SERVICE_STATUS' => 'SERVICE STATUS',
'lets_CONFIG_LE' => 'CONFIG LE',
'lets_PARAMS_panel_action_was_successful' => 'PARAMS panel action was successful',