Update letsencrypt and take out spurious chars in html cxontrols
This commit is contained in:
parent
edb245df07
commit
1c275912e3
@ -52,8 +52,7 @@ our $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
|
|||||||
my $c = shift;
|
my $c = shift;
|
||||||
my $prefix_data = shift; #Data hash as parameter
|
my $prefix_data = shift; #Data hash as parameter
|
||||||
# Validation for each field
|
# Validation for each field
|
||||||
my $ret = "";
|
my $ret = "Error from params";
|
||||||
|
|
||||||
if (! TRUE) #validate $c->param('status')
|
if (! TRUE) #validate $c->param('status')
|
||||||
{$ret .= 'Validation for status failed';}
|
{$ret .= 'Validation for status failed';}
|
||||||
if (! TRUE) #validate $c->param('hookScript')
|
if (! TRUE) #validate $c->param('hookScript')
|
||||||
@ -435,33 +434,4 @@ sub get_my_ip
|
|||||||
my $output = `/usr/sbin/e-smith/getmyip`;
|
my $output = `/usr/sbin/e-smith/getmyip`;
|
||||||
return $output || "IP";
|
return $output || "IP";
|
||||||
}
|
}
|
||||||
|
|
||||||
sub update_one_domain
|
|
||||||
{
|
|
||||||
my $self = shift;
|
|
||||||
my $q = $self->{cgi};
|
|
||||||
my $domain = $q->param('Domain');
|
|
||||||
return "$domain not domain" unless ($ddb->get($domain) || $hdb->get($domain));
|
|
||||||
($domain) = ($domain =~ /([\w\p{L}.]+)/);
|
|
||||||
my $output = `/etc/e-smith/events/actions/letsencrypt-setdomains " " $domain `;
|
|
||||||
return $output || "-empty-";
|
|
||||||
}
|
|
||||||
|
|
||||||
sub update_all_domains
|
|
||||||
{
|
|
||||||
my $self = shift;
|
|
||||||
my $q = $self->{cgi};
|
|
||||||
my $output = `/etc/e-smith/events/actions/letsencrypt-setdomains "" "" all `;
|
|
||||||
return $output || "-empty-";
|
|
||||||
}
|
|
||||||
|
|
||||||
sub update_enabled_domains
|
|
||||||
{
|
|
||||||
my $self = shift;
|
|
||||||
my $q = $self->{cgi};
|
|
||||||
my $output = `/etc/e-smith/events/actions/letsencrypt-setdomains "" "" enabled `;
|
|
||||||
return $output || "-empty-";
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
1;
|
1;
|
@ -1,6 +1,6 @@
|
|||||||
package SrvMngr::Controller::Letsencrypt;
|
package SrvMngr::Controller::Letsencrypt;
|
||||||
#
|
#
|
||||||
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-17 14:48:52
|
# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-27 16:15:50
|
||||||
#
|
#
|
||||||
#----------------------------------------------------------------------
|
#----------------------------------------------------------------------
|
||||||
# heading : Network
|
# heading : Network
|
||||||
@ -127,6 +127,7 @@ sub do_update {
|
|||||||
|
|
||||||
my $c = shift;
|
my $c = shift;
|
||||||
$c->app->log->info($c->log_req);
|
$c->app->log->info($c->log_req);
|
||||||
|
my $modul = '';
|
||||||
|
|
||||||
my %lets_data = ();
|
my %lets_data = ();
|
||||||
my $title = $c->l('lets_Letsencrypt_certificate');
|
my $title = $c->l('lets_Letsencrypt_certificate');
|
||||||
@ -181,9 +182,15 @@ sub do_update {
|
|||||||
|
|
||||||
|
|
||||||
if ($ret ne "ok"){
|
if ($ret ne "ok"){
|
||||||
# return to the panel with error message
|
# lets_data{'trt'} = $thispanel;
|
||||||
$c->stash(error => $c->l($ret));
|
# $c->stash(error => $c->l($ret));
|
||||||
$c->render("letsencrypt");
|
# $c->stash(
|
||||||
|
# title => $title,
|
||||||
|
# modul => $modul,
|
||||||
|
# lets_data => \%lets_data
|
||||||
|
# );
|
||||||
|
# $c->render( template => "letsencrypt" );
|
||||||
|
$c->do_display($thispanel);
|
||||||
} else {
|
} else {
|
||||||
#Do whatever is needed, including writing values to the DB
|
#Do whatever is needed, including writing values to the DB
|
||||||
|
|
||||||
@ -193,7 +200,12 @@ sub do_update {
|
|||||||
if ($ret ne "ok") {
|
if ($ret ne "ok") {
|
||||||
# return to the panel with error message
|
# return to the panel with error message
|
||||||
$c->stash(error => $c->l($ret));
|
$c->stash(error => $c->l($ret));
|
||||||
$c->render("letsencrypt");
|
$c->stash(
|
||||||
|
title => $title,
|
||||||
|
modul => $modul,
|
||||||
|
lets_data => \%lets_data
|
||||||
|
);
|
||||||
|
$c->render(template => "letsencrypt");
|
||||||
} else {
|
} else {
|
||||||
$c->stash( success => $c->l('lets_LIST_panel_action_was_successful')); #A bit bland - edit it in the lex file
|
$c->stash( success => $c->l('lets_LIST_panel_action_was_successful')); #A bit bland - edit it in the lex file
|
||||||
}
|
}
|
||||||
@ -205,7 +217,12 @@ sub do_update {
|
|||||||
if ($ret ne "ok") {
|
if ($ret ne "ok") {
|
||||||
# return to the panel with error message
|
# return to the panel with error message
|
||||||
$c->stash(error => $c->l($ret));
|
$c->stash(error => $c->l($ret));
|
||||||
$c->render("letsencrypt");
|
$c->stash(
|
||||||
|
title => $title,
|
||||||
|
modul => $modul,
|
||||||
|
lets_data => \%lets_data
|
||||||
|
);
|
||||||
|
$c->render(template => "letsencrypt");
|
||||||
} else {
|
} else {
|
||||||
$c->stash( success => $c->l('lets_PARAMS_panel_action_was_successful')); #A bit bland - edit it in the lex file
|
$c->stash( success => $c->l('lets_PARAMS_panel_action_was_successful')); #A bit bland - edit it in the lex file
|
||||||
}
|
}
|
||||||
@ -217,7 +234,12 @@ sub do_update {
|
|||||||
if ($ret ne "ok") {
|
if ($ret ne "ok") {
|
||||||
# return to the panel with error message
|
# return to the panel with error message
|
||||||
$c->stash(error => $c->l($ret));
|
$c->stash(error => $c->l($ret));
|
||||||
$c->render("letsencrypt");
|
$c->stash(
|
||||||
|
title => $title,
|
||||||
|
modul => $modul,
|
||||||
|
lets_data => \%lets_data
|
||||||
|
);
|
||||||
|
$c->render(template => "letsencrypt");
|
||||||
} else {
|
} else {
|
||||||
$c->stash( success => $c->l('lets_CHECKALLDOMAINS_panel_action_was_successful')); #A bit bland - edit it in the lex file
|
$c->stash( success => $c->l('lets_CHECKALLDOMAINS_panel_action_was_successful')); #A bit bland - edit it in the lex file
|
||||||
}
|
}
|
||||||
@ -229,7 +251,12 @@ sub do_update {
|
|||||||
if ($ret ne "ok") {
|
if ($ret ne "ok") {
|
||||||
# return to the panel with error message
|
# return to the panel with error message
|
||||||
$c->stash(error => $c->l($ret));
|
$c->stash(error => $c->l($ret));
|
||||||
$c->render("letsencrypt");
|
$c->stash(
|
||||||
|
title => $title,
|
||||||
|
modul => $modul,
|
||||||
|
lets_data => \%lets_data
|
||||||
|
);
|
||||||
|
$c->render(template => "letsencrypt");
|
||||||
} else {
|
} else {
|
||||||
$c->stash( success => $c->l('lets_CHECKALLENABLEDDOMAINS_panel_action_was_successful')); #A bit bland - edit it in the lex file
|
$c->stash( success => $c->l('lets_CHECKALLENABLEDDOMAINS_panel_action_was_successful')); #A bit bland - edit it in the lex file
|
||||||
}
|
}
|
||||||
@ -241,26 +268,31 @@ sub do_update {
|
|||||||
if ($ret ne "ok") {
|
if ($ret ne "ok") {
|
||||||
# return to the panel with error message
|
# return to the panel with error message
|
||||||
$c->stash(error => $c->l($ret));
|
$c->stash(error => $c->l($ret));
|
||||||
$c->render("letsencrypt");
|
$c->stash(
|
||||||
|
title => $title,
|
||||||
|
modul => $modul,
|
||||||
|
lets_data => \%lets_data
|
||||||
|
);
|
||||||
|
$c->render(template => "letsencrypt");
|
||||||
} else {
|
} else {
|
||||||
$c->stash( success => $c->l('lets_CHECKONEDOMAIN_panel_action_was_successful')); #A bit bland - edit it in the lex file
|
$c->stash( success => $c->l('lets_CHECKONEDOMAIN_panel_action_was_successful')); #A bit bland - edit it in the lex file
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
# and call any signal-events needed
|
# and call any signal-events needed
|
||||||
|
#TBD
|
||||||
|
|
||||||
# Setup shared data and call panel
|
# Setup shared data and call panel
|
||||||
$c->stash(
|
|
||||||
title => $title,
|
|
||||||
lets_data => \%lets_data
|
|
||||||
);
|
|
||||||
if ('none' eq 'none') {
|
if ('none' eq 'none') {
|
||||||
$lets_data{'trt'} = 'LIST';
|
$lets_data{'trt'} = 'LIST';
|
||||||
} else {
|
} else {
|
||||||
$lets_data{'trt'} = 'none';
|
$lets_data{'trt'} = 'none';
|
||||||
}
|
}
|
||||||
$c->do_display()
|
$c->stash(
|
||||||
|
title => $title,
|
||||||
|
modul => $modul,
|
||||||
|
lets_data => \%lets_data
|
||||||
|
);
|
||||||
|
$c->render( template => "letsencrypt" );
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -276,11 +308,12 @@ sub do_display {
|
|||||||
#load up returned hash into prefix_data
|
#load up returned hash into prefix_data
|
||||||
#render - to called panel
|
#render - to called panel
|
||||||
|
|
||||||
my $c = shift;
|
my ($c,$trt) = @_;
|
||||||
$c->app->log->info($c->log_req);
|
$c->app->log->info($c->log_req);
|
||||||
|
|
||||||
my %lets_data = ();
|
my %lets_data = ();
|
||||||
my $title = $c->l('lets_Letsencrypt_certificate');
|
my $title = $c->l('lets_Letsencrypt_certificate');
|
||||||
|
my $modul = "";
|
||||||
|
|
||||||
# Accessing all parameters
|
# Accessing all parameters
|
||||||
my %params = $c->req->params->to_hash;
|
my %params = $c->req->params->to_hash;
|
||||||
@ -297,34 +330,36 @@ sub do_display {
|
|||||||
#}
|
#}
|
||||||
|
|
||||||
# the value of trt will tell you which panel has returned
|
# the value of trt will tell you which panel has returned
|
||||||
|
if (! $trt){
|
||||||
my $trt = $c->param('trt') || 'LIST'; #Indicates where to go now
|
my $trt = $c->param('trt') || 'LIST'; #Indicates where to go now
|
||||||
|
}
|
||||||
|
|
||||||
# Now add in the params from the selected row from the table
|
# Now add in the params from the selected row from the table
|
||||||
|
|
||||||
my %selectedrow;
|
my %selectedrow;
|
||||||
|
|
||||||
if ($trt eq 'LIST'){
|
if ($trt eq 'LIST'){
|
||||||
#Validate form parameters for panel LIST
|
#Validate Get selected row (if applicable) LIST
|
||||||
%selectedrow = $c->get_selected_LIST($lets_data{'Selected'},$is_new_record);
|
%selectedrow = $c->get_selected_LIST($lets_data{'Selected'},$is_new_record);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($trt eq 'PARAMS'){
|
if ($trt eq 'PARAMS'){
|
||||||
#Validate form parameters for panel PARAMS
|
#Validate Get selected row (if applicable) PARAMS
|
||||||
%selectedrow = $c->get_selected_PARAMS($lets_data{'Selected'},$is_new_record);
|
%selectedrow = $c->get_selected_PARAMS($lets_data{'Selected'},$is_new_record);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($trt eq 'CHECKALLDOMAINS'){
|
if ($trt eq 'CHECKALLDOMAINS'){
|
||||||
#Validate form parameters for panel CHECKALLDOMAINS
|
#Validate Get selected row (if applicable) CHECKALLDOMAINS
|
||||||
%selectedrow = $c->get_selected_CHECKALLDOMAINS($lets_data{'Selected'},$is_new_record);
|
%selectedrow = $c->get_selected_CHECKALLDOMAINS($lets_data{'Selected'},$is_new_record);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($trt eq 'CHECKALLENABLEDDOMAINS'){
|
if ($trt eq 'CHECKALLENABLEDDOMAINS'){
|
||||||
#Validate form parameters for panel CHECKALLENABLEDDOMAINS
|
#Validate Get selected row (if applicable) CHECKALLENABLEDDOMAINS
|
||||||
%selectedrow = $c->get_selected_CHECKALLENABLEDDOMAINS($lets_data{'Selected'},$is_new_record);
|
%selectedrow = $c->get_selected_CHECKALLENABLEDDOMAINS($lets_data{'Selected'},$is_new_record);
|
||||||
}
|
}
|
||||||
|
|
||||||
if ($trt eq 'CHECKONEDOMAIN'){
|
if ($trt eq 'CHECKONEDOMAIN'){
|
||||||
#Validate form parameters for panel CHECKONEDOMAIN
|
#Validate Get selected row (if applicable) CHECKONEDOMAIN
|
||||||
%selectedrow = $c->get_selected_CHECKONEDOMAIN($lets_data{'Selected'},$is_new_record);
|
%selectedrow = $c->get_selected_CHECKONEDOMAIN($lets_data{'Selected'},$is_new_record);
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -401,8 +436,9 @@ sub do_display {
|
|||||||
# Data for panel
|
# Data for panel
|
||||||
$c->stash(
|
$c->stash(
|
||||||
title => $title,
|
title => $title,
|
||||||
|
modul => $modul,
|
||||||
lets_data => \%lets_data
|
lets_data => \%lets_data
|
||||||
);
|
);
|
||||||
$c->render("letsencrypt");
|
$c->render(template => "letsencrypt");
|
||||||
}
|
}
|
||||||
1;
|
1;
|
@ -1,5 +1,5 @@
|
|||||||
%#
|
%#
|
||||||
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-17 14:48:52
|
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-27 16:15:50
|
||||||
%#
|
%#
|
||||||
<div id="Letsencrypt-CHECKALLDOMAINS" class="partial Letsencrypt-CHECKALLDOMAINS">
|
<div id="Letsencrypt-CHECKALLDOMAINS" class="partial Letsencrypt-CHECKALLDOMAINS">
|
||||||
<script>
|
<script>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
%#
|
%#
|
||||||
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-17 14:48:52
|
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-27 16:15:50
|
||||||
%#
|
%#
|
||||||
<div id="Letsencrypt-CHECKALLENABLEDDOMAINS" class="partial Letsencrypt-CHECKALLENABLEDDOMAINS">
|
<div id="Letsencrypt-CHECKALLENABLEDDOMAINS" class="partial Letsencrypt-CHECKALLENABLEDDOMAINS">
|
||||||
<script>
|
<script>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
%#
|
%#
|
||||||
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-17 14:48:52
|
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-27 16:15:50
|
||||||
%#
|
%#
|
||||||
<div id="Letsencrypt-CHECKONEDOMAIN" class="partial Letsencrypt-CHECKONEDOMAIN">
|
<div id="Letsencrypt-CHECKONEDOMAIN" class="partial Letsencrypt-CHECKONEDOMAIN">
|
||||||
<script>
|
<script>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
%#
|
%#
|
||||||
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-17 14:48:52
|
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-27 16:15:50
|
||||||
%#
|
%#
|
||||||
<div id="Letsencrypt-LIST" class="partial Letsencrypt-LIST">
|
<div id="Letsencrypt-LIST" class="partial Letsencrypt-LIST">
|
||||||
<script>
|
<script>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
%#
|
%#
|
||||||
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-17 14:48:52
|
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-27 16:15:50
|
||||||
%#
|
%#
|
||||||
<div id="Letsencrypt-PARAMS" class="partial Letsencrypt-PARAMS">
|
<div id="Letsencrypt-PARAMS" class="partial Letsencrypt-PARAMS">
|
||||||
<script>
|
<script>
|
||||||
@ -85,7 +85,7 @@
|
|||||||
</span><span class=data>
|
</span><span class=data>
|
||||||
% param 'Email' => $lets_data->{Email} unless param 'Email';
|
% param 'Email' => $lets_data->{Email} unless param 'Email';
|
||||||
%=email_field 'Email', class => 'emai8'
|
%=email_field 'Email', class => 'emai8'
|
||||||
</span>span></p>
|
</span></p>
|
||||||
|
|
||||||
|
|
||||||
<span class='data'>
|
<span class='data'>
|
||||||
|
@ -1,5 +1,5 @@
|
|||||||
%#
|
%#
|
||||||
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-17 14:48:52
|
%# Generated by SM2Gen version:0.8 Chameleon version:4.5.4 On Python:3.12.3 at 2024-11-27 16:15:50
|
||||||
%#
|
%#
|
||||||
% layout 'default', title => "Sme server 2 - Letsencrypt certificate", share_dir => './';
|
% layout 'default', title => "Sme server 2 - Letsencrypt certificate", share_dir => './';
|
||||||
%# css specific to this panel:
|
%# css specific to this panel:
|
||||||
@ -10,7 +10,7 @@
|
|||||||
% if ($config->{debug} == 1) {
|
% if ($config->{debug} == 1) {
|
||||||
<pre>
|
<pre>
|
||||||
%= dumper $c->current_route
|
%= dumper $c->current_route
|
||||||
%# dumper $lets_data->{trt}
|
%= dumper $lets_data->{trt}
|
||||||
</pre>
|
</pre>
|
||||||
% }
|
% }
|
||||||
|
|
||||||
@ -20,22 +20,22 @@
|
|||||||
%= $c->render_to_string(inline => stash('modul') );
|
%= $c->render_to_string(inline => stash('modul') );
|
||||||
% }
|
% }
|
||||||
|
|
||||||
%if ($lets_data->{first}) {
|
%if ($c->stash('first')) {
|
||||||
<br><p>
|
<br><p>
|
||||||
%=$c->render_to_string(inline =>$c->l($lets_data->{first}))
|
%=$c->render_to_string(inline =>$c->l($c->stash('first')))
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
%} elsif ($lets_data->{success}) {
|
%} elsif ($c->stash('success')) {
|
||||||
<div class='sme-border'>
|
<div class='sme-border'>
|
||||||
<h2> Operation Status Report</h2><p>
|
<h2><%=$c->l('lets_Status_Report') %></h2><p>
|
||||||
%= $c->l($lets_data->{success});
|
%= $c->l($c->stash('success'));
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
%} elsif ($lets_data->{error}) {
|
%} elsif ($c->stash('error')) {
|
||||||
<div class='sme-error'>
|
<div class='sme-error'>
|
||||||
<h2> Operation Status Report - error</h2><p>
|
<h2><%=$c->l('lets_Error_Status_Report') %></h2><p>
|
||||||
%= $c->l($lets_data->{error});
|
%= $c->l($c->stash('error'));
|
||||||
</p>
|
</p>
|
||||||
</div>
|
</div>
|
||||||
%}
|
%}
|
||||||
|
@ -160,14 +160,15 @@ sub do_update {
|
|||||||
</tal:block>
|
</tal:block>
|
||||||
|
|
||||||
if ($ret ne "ok"){
|
if ($ret ne "ok"){
|
||||||
${prefix}_data{'trt'} = $thispanel;
|
# ${prefix}_data{'trt'} = $thispanel;
|
||||||
$c->stash(error => $c->l($ret));
|
# $c->stash(error => $c->l($ret));
|
||||||
$c->stash(
|
# $c->stash(
|
||||||
title => $title,
|
# title => $title,
|
||||||
modul => $modul,
|
# modul => $modul,
|
||||||
${prefix}_data => \%${prefix}_data
|
# ${prefix}_data => \%${prefix}_data
|
||||||
);
|
# );
|
||||||
$c->render( template => "${lcPackageName}" );
|
# $c->render( template => "${lcPackageName}" );
|
||||||
|
$c->do_display($thispanel);
|
||||||
} else {
|
} else {
|
||||||
#Do whatever is needed, including writing values to the DB
|
#Do whatever is needed, including writing values to the DB
|
||||||
<tal:block tal:repeat="panel panels">
|
<tal:block tal:repeat="panel panels">
|
||||||
@ -217,11 +218,12 @@ sub do_display {
|
|||||||
#load up returned hash into prefix_data
|
#load up returned hash into prefix_data
|
||||||
#render - to called panel
|
#render - to called panel
|
||||||
|
|
||||||
my $c = shift;
|
my ($c,$trt) = @_;
|
||||||
$c->app->log->info($c->log_req);
|
$c->app->log->info($c->log_req);
|
||||||
|
|
||||||
my %${prefix}_data = ();
|
my %${prefix}_data = ();
|
||||||
my $title = $c->l('${prefix}_${MenuDescription}');
|
my $title = $c->l('${prefix}_${MenuDescription}');
|
||||||
|
my $modul = "";
|
||||||
|
|
||||||
# Accessing all parameters
|
# Accessing all parameters
|
||||||
my %params = $c->req->params->to_hash;
|
my %params = $c->req->params->to_hash;
|
||||||
@ -238,14 +240,16 @@ sub do_display {
|
|||||||
#}
|
#}
|
||||||
|
|
||||||
# the value of trt will tell you which panel has returned
|
# the value of trt will tell you which panel has returned
|
||||||
|
if (! $trt){
|
||||||
my $trt = $c->param('trt') || '${firstPanel}'; #Indicates where to go now
|
my $trt = $c->param('trt') || '${firstPanel}'; #Indicates where to go now
|
||||||
|
}
|
||||||
|
|
||||||
# Now add in the params from the selected row from the table
|
# Now add in the params from the selected row from the table
|
||||||
|
|
||||||
my %selectedrow;
|
my %selectedrow;
|
||||||
<tal:block tal:repeat="panel panels">
|
<tal:block tal:repeat="panel panels">
|
||||||
if ($trt eq '${panel}'){
|
if ($trt eq '${panel}'){
|
||||||
#Validate form parameters for panel ${panel}
|
#Validate Get selected row (if applicable) ${panel}
|
||||||
%selectedrow = $c->get_selected_${panel}($$${prefix}_data{'Selected'},$is_new_record);
|
%selectedrow = $c->get_selected_${panel}($$${prefix}_data{'Selected'},$is_new_record);
|
||||||
}
|
}
|
||||||
</tal:block>
|
</tal:block>
|
||||||
@ -278,6 +282,7 @@ sub do_display {
|
|||||||
# Data for panel
|
# Data for panel
|
||||||
$c->stash(
|
$c->stash(
|
||||||
title => $title,
|
title => $title,
|
||||||
|
modul => $modul,
|
||||||
${prefix}_data => \%${prefix}_data
|
${prefix}_data => \%${prefix}_data
|
||||||
);
|
);
|
||||||
$c->render(template => "${lcPackageName}");
|
$c->render(template => "${lcPackageName}");
|
||||||
|
Loading…
Reference in New Issue
Block a user