Finally got Table column names in comment for table control custom procedure

This commit is contained in:
2024-11-15 17:23:49 +00:00
parent a52983cc13
commit c00230a998
7 changed files with 308 additions and 116 deletions

View File

@@ -1,8 +1,8 @@
#
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-04 16:03:10
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-14 11:31:47
#
#
# Routines to be edited by the developer to provide validation for parameters
# Routines to be edited by the developer to provide content and validation for parameters
# and provison of the control data for table(s)
#
use esmith::util;
@@ -12,7 +12,9 @@ use esmith::AccountsDB;
use esmith::NetworksDB;
use esmith::DomainsDB;
#use Net::SSLeay;
use constant FALSE => 0;
use constant TRUE => 1;
#The most common ones
our $cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
@@ -26,28 +28,104 @@ our $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
sub validate_LIST {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
# Validation for each field
my $ret = "";
if (! TRUE) #validate $c->param('InternalIP')
{$ret .= 'Validation for InternalIP failed';}
if (! TRUE) #validate $c->param('ExternalIP')
{$ret .= 'Validation for ExternalIP failed';}
if (! TRUE) #validate $c->param('InternetIP')
{$ret .= 'Validation for InternetIP failed';}
if (! TRUE) #validate $c->param('Issuer')
{$ret .= 'Validation for Issuer failed';}
if (! TRUE) #validate $c->param('Expiry')
{$ret .= 'Validation for Expiry failed';}
if (! TRUE) #validate $c->param('NotBefore')
{$ret .= 'Validation for NotBefore failed';}
if ($ret eq "") {$ret = 'ok';}
return $ret;
}
sub validate_PARAMS {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
# Validation for each field
my $ret = "";
if (! TRUE) #validate $c->param('status')
{$ret .= 'Validation for status failed';}
if (! TRUE) #validate $c->param('hookScript')
{$ret .= 'Validation for hookScript failed';}
if (! TRUE) #validate $c->param('hostOverride')
{$ret .= 'Validation for hostOverride failed';}
if (! TRUE) #validate $c->param('ACCEPT_TERMS')
{$ret .= 'Validation for ACCEPT_TERMS failed';}
if (! TRUE) #validate $c->param('API')
{$ret .= 'Validation for API failed';}
if (! TRUE) #validate $c->param('keysize')
{$ret .= 'Validation for keysize failed';}
if (! TRUE) #validate $c->param('configure')
{$ret .= 'Validation for configure failed';}
if (! TRUE) #validate $c->param('Email')
{$ret .= 'Validation for Email failed';}
if ($ret eq "") {$ret = 'ok';}
return $ret;
}
sub validate_CHECKALLDOMAINS {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
# Validation for each field
my $ret = "";
if (! TRUE) #validate $c->param('AllDomainsCheck')
{$ret .= 'Validation for AllDomainsCheck failed';}
if ($ret eq "") {$ret = 'ok';}
return $ret;
}
sub validate_CHECKALLENABLEDDOMAINS {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
# Validation for each field
my $ret = "";
if (! TRUE) #validate $c->param('EnabledDomainsCheck')
{$ret .= 'Validation for EnabledDomainsCheck failed';}
if ($ret eq "") {$ret = 'ok';}
return $ret;
}
sub validate_CHECKONEDOMAIN {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
# Validation for each field
my $ret = "";
if (! TRUE) #validate $c->param('OneDomainToCheck')
{$ret .= 'Validation for OneDomainToCheck failed';}
if (! TRUE) #validate $c->param('OneDomainsCheck')
{$ret .= 'Validation for OneDomainsCheck failed';}
if ($ret eq "") {$ret = 'ok';}
return $ret;
}
@@ -122,7 +200,7 @@ our $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
}
sub get_data_for_panel_CHECKONEDDOMAINS {
sub get_data_for_panel_CHECKONEDOMAIN {
# Return a hash with the fields required which will be loaded into the shared data
my $c = shift;
my %ret = (
@@ -139,7 +217,6 @@ our $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
}
# Get control data for table(s)
@@ -237,7 +314,7 @@ our $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
return $ret;
}
sub get_selected_CHECKONEDDOMAINS {
sub get_selected_CHECKONEDOMAIN {
my $c = shift;
my $selected = shift; #Parameter is name of selected row.
my $is_new_record = shift; #Indicates new record required (defaults)
@@ -251,42 +328,106 @@ our $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
sub perform_LIST {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
my $ret = "";
if (! TRUE) #copy or perform with value: InternalIP e.g. $c->setprop(dbentry,dbkey,$c->param('InternalIP')
{$ret .= 'Perform failed for InternalIP failed';}
if (! TRUE) #copy or perform with value: ExternalIP e.g. $c->setprop(dbentry,dbkey,$c->param('ExternalIP')
{$ret .= 'Perform failed for ExternalIP failed';}
if (! TRUE) #copy or perform with value: InternetIP e.g. $c->setprop(dbentry,dbkey,$c->param('InternetIP')
{$ret .= 'Perform failed for InternetIP failed';}
if (! TRUE) #copy or perform with value: Issuer e.g. $c->setprop(dbentry,dbkey,$c->param('Issuer')
{$ret .= 'Perform failed for Issuer failed';}
if (! TRUE) #copy or perform with value: Expiry e.g. $c->setprop(dbentry,dbkey,$c->param('Expiry')
{$ret .= 'Perform failed for Expiry failed';}
if (! TRUE) #copy or perform with value: NotBefore e.g. $c->setprop(dbentry,dbkey,$c->param('NotBefore')
{$ret .= 'Perform failed for NotBefore failed';}
if ($ret eq "") {$ret = 'ok';}
return $ret;
}
sub perform_PARAMS {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
my $ret = "";
if (! TRUE) #copy or perform with value: status e.g. $c->setprop(dbentry,dbkey,$c->param('status')
{$ret .= 'Perform failed for status failed';}
if (! TRUE) #copy or perform with value: hookScript e.g. $c->setprop(dbentry,dbkey,$c->param('hookScript')
{$ret .= 'Perform failed for hookScript failed';}
if (! TRUE) #copy or perform with value: hostOverride e.g. $c->setprop(dbentry,dbkey,$c->param('hostOverride')
{$ret .= 'Perform failed for hostOverride failed';}
if (! TRUE) #copy or perform with value: ACCEPT_TERMS e.g. $c->setprop(dbentry,dbkey,$c->param('ACCEPT_TERMS')
{$ret .= 'Perform failed for ACCEPT_TERMS failed';}
if (! TRUE) #copy or perform with value: API e.g. $c->setprop(dbentry,dbkey,$c->param('API')
{$ret .= 'Perform failed for API failed';}
if (! TRUE) #copy or perform with value: keysize e.g. $c->setprop(dbentry,dbkey,$c->param('keysize')
{$ret .= 'Perform failed for keysize failed';}
if (! TRUE) #copy or perform with value: configure e.g. $c->setprop(dbentry,dbkey,$c->param('configure')
{$ret .= 'Perform failed for configure failed';}
if (! TRUE) #copy or perform with value: Email e.g. $c->setprop(dbentry,dbkey,$c->param('Email')
{$ret .= 'Perform failed for Email failed';}
if ($ret eq "") {$ret = 'ok';}
return $ret;
}
sub perform_CHECKALLDOMAINS {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
my $ret = "";
if (! TRUE) #copy or perform with value: AllDomainsCheck e.g. $c->setprop(dbentry,dbkey,$c->param('AllDomainsCheck')
{$ret .= 'Perform failed for AllDomainsCheck failed';}
if ($ret eq "") {$ret = 'ok';}
return $ret;
}
sub perform_CHECKALLENABLEDDOMAINS {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
my $ret = "";
if (! TRUE) #copy or perform with value: EnabledDomainsCheck e.g. $c->setprop(dbentry,dbkey,$c->param('EnabledDomainsCheck')
{$ret .= 'Perform failed for EnabledDomainsCheck failed';}
if ($ret eq "") {$ret = 'ok';}
return $ret;
}
sub perform_CHECKONEDDOMAINS {
sub perform_CHECKONEDOMAIN {
my $c = shift;
my $prefix_data = shift; #Data hash as parameter
my $ret = 'ok';
my $ret = "";
if (! TRUE) #copy or perform with value: OneDomainToCheck e.g. $c->setprop(dbentry,dbkey,$c->param('OneDomainToCheck')
{$ret .= 'Perform failed for OneDomainToCheck failed';}
if (! TRUE) #copy or perform with value: OneDomainsCheck e.g. $c->setprop(dbentry,dbkey,$c->param('OneDomainsCheck')
{$ret .= 'Perform failed for OneDomainsCheck failed';}
if ($ret eq "") {$ret = 'ok';}
return $ret;
}
sub create_link{
# WIP
my ($c,$route, $panel, $index) = @_;
my ($c,$route, $panel, $index) = shift;
my $link = "$route?trt=$panel&Selected=$index";
return $link;
}

View File

@@ -1,33 +1,33 @@
%#
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-04 16:03:10
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-14 12:01:28
%#
<div id="Letsencrypt-LIST" class="partial Letsencrypt-LIST">
<script>
window.onload = function() {
SelectInput();
};
</script>
<script>
window.onload = function() {
SelectInput();
};
</script>
% if ($config->{debug} == 1) {
<pre>
%= dumper $lets_data
</pre>
% }
% my $btn = l('lets_APPLY');
%= form_for "letsencryptd" => (method => 'GET') => begin
% param 'trt' => $lets_data->{trt} unless param 'trt';
% my $btn = l('lets_APPLY');
%= form_for "letsencryptu" => (method => 'POST') => begin
% param 'trt' => $lets_data->{trt} unless param 'trt';
%= hidden_field 'trt' => $lets_data->{trt}
%# Inputs etc in here.
<div class="inline-buttons">
%= link_to l('lets_CONFIG'), 'letsencryptd?trt=PARAMS' , class=>'link link2'
<a href="letsencryptd?trt=PARAMS" class=link link2><%= l('lets_CONFIG') %></a>
%= link_to l('lets_CHECK_ALL_DOMAINS'), 'letsencryptd?trt=CHECKALLDOMAINS' , class=>'link link3'
%= link_to l('lets_CHECK_ENABLED_DOMAINS'), 'letsencryptd?trt=CHECKALLENABLEDDOMAINS' , class=>'link link4'
</div>
%= link_to l('lets_CONFIG'), 'letsencryptd?trt=PARAMS' , class=>'link link2'
<h2 class='subh2'><%=l('lets_IPs_for_this_Server')%></h2>
%= link_to l('lets_CHECK_ALL_DOMAINS'), 'letsencryptd?trt=CHECKALLDOMAINS' , class=>'link link3'
%= link_to l('lets_CHECK_ENABLED_DOMAINS'), 'letsencryptd?trt=CHECKENABLEDDOMAINS' , class=>'link link4'
<h2 class='subh2'><%=l('lets_For_this_Server:')%></h2>
<p><span class=label>
%=l('lets_Internal_IP')
@@ -50,7 +50,7 @@
%= 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>
<h2 class='subh3'><%=l('lets_Current_certificate_details:')%></h2>
<p><span class=label>
%=l('lets_Issuer')
@@ -73,7 +73,7 @@
%= 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>
<h2 class='subh4'><%=l('lets_List_of_Domains_and_Hosts:')%></h2>
<br /><table class="sme-border TableSort sme-table tabl1 ">
<thead class='tabl1'>
@@ -89,17 +89,17 @@
</tr>
</thead>
<tbody class='tabl1'>
% my $control_data = $c->stash('DomainList');
% my $control_data = $self->stash('DomainList');
% foreach my $row (@$control_data) {
<tr class='table-row'>
<td class='sme-border table-col table-col-Table1-Domain name / HOSTNAME'><%=$c->render_to_string(inline=>$row->{'Domain'})%></td>
<td class='sme-border table-col table-col-Table1-Brief description'><%=$c->render_to_string(inline=>$row->{'Description'})%></td>
<td class='sme-border table-col table-col-Table1-Content'><%=$c->render_to_string(inline=>$row->{'Content'})%></td>
<td class='sme-border table-col table-col-Table1-LABEL_NAMESERVERS'><%=$c->render_to_string(inline=>$row->{'Nameservers'})%></td>
<td class='sme-border table-col table-col-Table1-LABEL_POINT'><%=$c->render_to_string(inline=>$row->{'letsencryptMYIP'})%></td>
<td class='sme-border table-col table-col-Table1-LABEL_LECERT'><%=$c->render_to_string(inline=>$row->{'letsencryptSSLcert'})%></td>
<td class='sme-border table-col table-col-Table1-IS_IN_CERT'><%=$c->render_to_string(inline=>$row->{'isincert'})%></td>
<td class='sme-border table-col table-col-Table1-CHECK'><%=$c->render_to_string(inline=>$row->{'Check'})%></td>
<td class='sme-border table-col table-col-Table1-Domain name / HOSTNAME'><%=$c->render_to_string(inline=>$row->{'Table1-Domain name / HOSTNAME'})%></td>
<td class='sme-border table-col table-col-Table1-Brief description'><%=$c->render_to_string(inline=>$row->{'Table1-Brief description'})%></td>
<td class='sme-border table-col table-col-Table1-Content'><%=$c->render_to_string(inline=>$row->{'Table1-Content'})%></td>
<td class='sme-border table-col table-col-Table1-LABEL_NAMESERVERS'><%=$c->render_to_string(inline=>$row->{'Table1-LABEL_NAMESERVERS'})%></td>
<td class='sme-border table-col table-col-Table1-LABEL_POINT'><%=$c->render_to_string(inline=>$row->{'Table1-LABEL_POINT'})%></td>
<td class='sme-border table-col table-col-Table1-LABEL_LECERT'><%=$c->render_to_string(inline=>$row->{'Table1-LABEL_LECERT'})%></td>
<td class='sme-border table-col table-col-Table1-IS_IN_CERT'><%=$c->render_to_string(inline=>$row->{'Table1-IS_IN_CERT'})%></td>
<td class='sme-border table-col table-col-Table1-CHECK'><%=$c->render_to_string(inline=>$row->{'Table1-CHECK'})%></td>
</tr>
%}
</tbody>

View File

@@ -1,47 +1,52 @@
#
# Generated by SM2Gen version: SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-05 13:20:33
# Generated by SM2Gen version: SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-14 12:01:28
#
'lets_Issuer' => 'Issuer',
'lets_CHECKALLENABLEDDOMAINS_panel_action_was_successful' => 'CHECKALLENABLEDDOMAINS panel action was successful',
'lets_Domain_name_/_HOSTNAME' => 'Domain name / HOSTNAME',
'lets_Letsencrypt_certificate' => 'Letsencrypt certificate',
'lets_Brief_description' => 'Brief description',
'lets_Content' => 'Content',
'lets_Check_all_enabled_domains' => 'Check all enabled domains',
'lets_Back' => 'Back',
'lets_IPs_for_this_Server' => 'is for this Server',
'lets_Save' => 'Save',
'lets_Manage_letsencrypt-config_settings:' => 'Manage letsencrypt-config settings',
'lets_External_Interface_IP' => 'External Interface IP',
'lets_All_domains_check_result' => 'All domains check result',
'lets_Loop_through_checking_the_letsencrypt' => 'Loop through checking the letsencrypt status for each configured domain which is enabled',
'lets_Not_Before' => 'Not Before',
'lets_CONFIG' => 'Config',
'lets_IS_IN_CERT' => 'Is In cart',
'lets_Check_all_domains' => 'Check all domains',
'lets_ACCEPT_TERMS_STATUS' => 'Accept Terms Status',
'lets_HOSTOVERRIDE_STATUS' => 'Hostoverride Status',
'lets_CONFIG_LETSENCRYPT' => 'confirm Letsencrypt',
'lets_Internet_IP' => 'Internet IP',
'lets_LABEL_POINT' => 'Label Point',
'lets_CHECKALLDOMAINS_panel_action_was_successful' => 'CHECKALLDOMAINS panel action was successful',
'lets_List_of_Domains_and_Hosts' => 'List of Domains and Hosts',
'lets_PARAMS_panel_action_was_successful' => 'PARAMS panel action was successful',
'lets_Expiry' => 'Expiry',
'lets_API_STATUS' => 'ape Status',
'lets_Internal_IP' => 'Internal IP',
'lets_SERVICE_STATUS' => 'Service Status',
'lets_LABEL_LECERT' => 'Label secret',
'lets_LIST_panel_action_was_successful' => 'LIST panel action was successful',
'lets_HOOKSCRIPT_STATUS' => 'Hookscript Status',
'lets_CONFIGUREMODE_STATUS' => 'Configuremode Status',
'lets_CHECK' => 'Check',
'lets_KEYSIZE_STATUS' => 'Keysize Status',
'lets_Current_certificate_details' => 'Current certificate details',
'lets_CHECK_ENABLED_DOMAINS' => 'Check Enabled Domains',
'lets_Loop_through_checking_the_letsencrypt' => 'Loop through checking the letsencrypt status for each configured domain',
'lets_APPLY' => 'Apply',
'lets_LABEL_NAMESERVERS' => 'Label timeservers',
'lets_Configuration_for_Letsencrypt' => 'Configuration for Letsencrypt',
'lets_CHECK_ALL_DOMAINS' => 'Check All Domains',
'lets_Save' => 'Save',
'lets_Back' => 'Back',
'lets_LABEL_LECERT' => 'Label secret',
'lets_Loop_through_checking_the_letsencrypt' => 'Loop through checking the letsencrypt status for a specific domain',
'lets_Content' => 'Content',
'lets_Enabled_domains_check_result' => 'Enabled domains check result',
'lets_For_this_Server:' => 'For this server',
'lets_CHECK_ENABLED_DOMAINS' => 'Check Enabled Domains',
'lets_EMAIL' => 'Email',
'lets_CHECKALLDOMAINS_panel_action_was_successful' => 'CHECKALLDOMAINS panel action was successful',
'lets_CONFIG' => 'Config',
'lets_CHECKONEDOMAIN_panel_action_was_successful' => 'CHECKONEDOMAIN panel action was successful',
'lets_Domains_name' => 'Domains name',
'lets_Expiry' => 'Expiry',
'lets_Internet_IP' => 'Internet IP',
'lets_List_of_Domains_and_Hosts:' => 'List of Domains and hosts',
'lets_CHECKALLENABLEDDOMAINS_panel_action_was_successful' => 'CHECKALLENABLEDDOMAINS panel action was successful',
'lets_One_domain_check_result' => 'One domain check result',
'lets_Check_all_enabled_domains' => 'Check all enabled domains',
'lets_APPLY' => 'Apply',
'lets_All_domains_check_result' => 'All domains check result',
'lets_KEYSIZE_STATUS' => 'Keysize Status',
'lets_SERVICE_STATUS' => 'Service Status',
'lets_CHECK_ALL_DOMAINS' => 'Check All Domains',
'lets_Internal_IP' => 'Internal IP',
'lets_LABEL_NAMESERVERS' => 'Label timeservers',
'lets_CHECK' => 'Check',
'lets_Loop_through_checking_the_letsencrypt' => 'Loop through checking the letsencrypt status for each configured domain which is enabled',
'lets_CONFIGUREMODE_STATUS' => 'Configuremode Status',
'lets_External_Interface_IP' => 'External Interface IP',
'lets_Manage_letsencrypt-config_settings:' => 'Manage letsencrypt-config settings',
'lets_Not_Before' => 'Not Before',
'lets_Current_certificate_details:' => 'Current certificate details',
'lets_Letsencrypt_certificate' => 'Letsencrypt certificate',
'lets_HOOKSCRIPT_STATUS' => 'Hookscript Status',
'lets_CONFIG_LETSENCRYPT' => 'confirm Letsencrypt',
'lets_HOSTOVERRIDE_STATUS' => 'Hostoverride Status',
'lets_Brief_description' => 'Brief description',
'lets_IS_IN_CERT' => 'Is In cart',
'lets_LIST_panel_action_was_successful' => 'LIST panel action was successful',
'lets_LABEL_POINT' => 'Label Point',
'lets_ACCEPT_TERMS_STATUS' => 'Accept Terms Status',
'lets_Domain_name_/_HOSTNAME' => 'Domain name / HOSTNAME',
'lets_Check_just_one_domain' => 'Check just one domain',
'lets_Issuer' => 'Issuer',
'lets_PARAMS_panel_action_was_successful' => 'PARAMS panel action was successful',