generated from smedev/Template-for-SMEServer-Core-Package
Compare commits
3 Commits
11_0-4_el8
...
11_0-7_el8
Author | SHA1 | Date | |
---|---|---|---|
fa30cb09be | |||
![]() |
2a99a49c7b | ||
3cc63a7890 |
@@ -7,20 +7,15 @@
|
||||
#
|
||||
use esmith::util;
|
||||
use esmith::util::network;
|
||||
use esmith::ConfigDB;
|
||||
use esmith::HostsDB;
|
||||
use esmith::AccountsDB;
|
||||
use esmith::NetworksDB;
|
||||
use esmith::DomainsDB;
|
||||
use esmith::ConfigDB::UTF8;
|
||||
use esmith::HostsDB::UTF8;
|
||||
use esmith::AccountsDB::UTF8;
|
||||
use esmith::NetworksDB::UTF8;
|
||||
use esmith::DomainsDB::UTF8;
|
||||
use constant FALSE => 0;
|
||||
use constant TRUE => 1;
|
||||
|
||||
#The most common ones
|
||||
#our $cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
|
||||
#our $adb = esmith::AccountsDB->open() || die("Couldn't open Accounts db");
|
||||
#our $ndb = esmith::NetworksDB->open() || die("Couldn't open Network db");
|
||||
#our $hdb = esmith::HostsDB->open() || die("Couldn't open Hosts db");
|
||||
#our $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
|
||||
our ($cdb,$adb,$ndb,$hdb,$ddb);
|
||||
|
||||
# Validation routines - parameters for each panel
|
||||
sub validate_LIST {
|
||||
@@ -161,7 +156,7 @@ sub validate_CHECKONEDOMAIN {
|
||||
# Get singleton data for each panel
|
||||
sub get_data_for_panel_LIST {
|
||||
|
||||
my $cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
|
||||
$cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
|
||||
# Return a hash with the fields required which will be loaded into the shared data
|
||||
my $c = shift;
|
||||
|
||||
@@ -186,7 +181,7 @@ 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 $cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
|
||||
$cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
|
||||
my %ret = (
|
||||
'Data1' => 'Data for PARAMS', #Example
|
||||
# fields from Inputs in PARAMS $fields['PARAMS']
|
||||
@@ -242,6 +237,7 @@ sub get_data_for_panel_CHECKONEDOMAIN {
|
||||
# Get control data for table(s)
|
||||
# Define a constant hash for field name mapping
|
||||
use constant DomainList_FIELD_MAPPING => (
|
||||
'Table1-TYPE' => 'Type',
|
||||
'Table1-Domain name / HOSTNAME' => 'Domain',
|
||||
'Table1-Brief description' => 'Description',
|
||||
'Table1-Content' => 'Content',
|
||||
@@ -251,6 +247,7 @@ use constant DomainList_FIELD_MAPPING => (
|
||||
'Table1-IS_IN_CERT' => 'isincert',
|
||||
'Table1-CHECK' => 'Check'
|
||||
|
||||
|
||||
#'target_field2' => 'source_field2',
|
||||
# Add more mappings as needed
|
||||
);
|
||||
@@ -274,8 +271,8 @@ sub actual_DomainList {
|
||||
# #print $element . "\n";
|
||||
# push @list, $element;
|
||||
# }
|
||||
my $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
|
||||
my $hdb = esmith::HostsDB->open() || die("Couldn't open Hosts db");
|
||||
$ddb = esmith::DomainsDB::UTF8->open() || die("Couldn't open Domains db");
|
||||
$hdb = esmith::HostsDB::UTF8->open() || die("Couldn't open Hosts db");
|
||||
my @data = ();
|
||||
my $check = $c->l('Check Domain');
|
||||
|
||||
@@ -285,14 +282,15 @@ sub actual_DomainList {
|
||||
my $dname = $_->key;
|
||||
my $isincert = "N";
|
||||
my $link = $c->create_link("letsencryptd", "CHECKONEDOMAIN", "");
|
||||
my $checklink = "<a href='" . $link . "&CHECKONEDOMAIN=" . $_->key . "'>" . $check . "</a>";
|
||||
my $checklink = $link . "&CHECKONEDOMAIN=" . $_->key;
|
||||
|
||||
#my $checklink = "<a href=''>check</a>";
|
||||
$isincert = "Y" if ($dname ~~ @list);
|
||||
$isincert = "Y" if (grep(/^$dname$/, @list));
|
||||
|
||||
# domain
|
||||
push @data,
|
||||
{
|
||||
Type => "Domain",
|
||||
Domain => $_->key,
|
||||
$_->props,
|
||||
letsencryptSSLcert => $le,
|
||||
@@ -303,13 +301,15 @@ sub actual_DomainList {
|
||||
|
||||
#and hosts
|
||||
for my $h ($hdb->get_hosts_by_domain($dname)) {
|
||||
next if $ddb->get($h->key);
|
||||
my $hname = $h->key;
|
||||
next if $ddb->get($hname);
|
||||
next unless ($h->prop('HostType') eq "Self" || $h->prop('HostType') eq "Local");
|
||||
$le = $h->prop('letsencryptSSLcert') || 'disabled'; #letsencrypt configure all
|
||||
$isincert = "N";
|
||||
$isincert = "Y" if ($h->key ~~ @list);
|
||||
$isincert = "Y" if (grep(/^$hname$/, @list));
|
||||
push @data, {
|
||||
Domain => "--> " . $h->key,
|
||||
Type => "Host",
|
||||
Domain => $hname,
|
||||
$h->props,
|
||||
Description => $h->prop('ExternalIP') || $h->prop('InternalIP') || "",
|
||||
Content => $h->prop('HostType'),
|
||||
@@ -444,7 +444,7 @@ sub perform_PARAMS {
|
||||
my $c = shift;
|
||||
my $prefix_data = shift; #Data hash as parameter
|
||||
my $ret = "";
|
||||
my $cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
|
||||
$cdb = esmith::ConfigDB::UTF8->open() || die("Couldn't open config db");
|
||||
my $db = $cdb; #maybe one of the others
|
||||
my $dbkey = 'letsencrypt';
|
||||
|
||||
@@ -485,7 +485,7 @@ sub perform_CHECKALLDOMAINS {
|
||||
my $c = shift;
|
||||
my $prefix_data = shift; #Data hash as parameter
|
||||
my $ret = "";
|
||||
my $cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
|
||||
$cdb = esmith::ConfigDB::UTF8->open() || die("Couldn't open config db");
|
||||
my $db = $cdb; #maybe one of the others
|
||||
my $dbkey = 'ChangeThis';
|
||||
|
||||
@@ -502,7 +502,7 @@ sub perform_CHECKALLENABLEDDOMAINS {
|
||||
my $c = shift;
|
||||
my $prefix_data = shift; #Data hash as parameter
|
||||
my $ret = "";
|
||||
my $cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
|
||||
$cdb = esmith::ConfigDB::UTF8->open() || die("Couldn't open config db");
|
||||
my $db = $cdb; #maybe one of the others
|
||||
my $dbkey = 'ChangeThis';
|
||||
|
||||
@@ -553,7 +553,7 @@ sub get_my_ip {
|
||||
|
||||
sub update_one_domain {
|
||||
my ($self, $domain) = @_;
|
||||
my $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
|
||||
$ddb = esmith::DomainsDB::UTF8->open() || die("Couldn't open Domains db");
|
||||
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 `;
|
||||
|
@@ -30,11 +30,11 @@ use SrvMngr qw(theme_list init_session);
|
||||
use Data::Dumper;
|
||||
use esmith::util;
|
||||
use esmith::util::network;
|
||||
use esmith::ConfigDB;
|
||||
use esmith::AccountsDB;
|
||||
use esmith::NetworksDB;
|
||||
use esmith::HostsDB;
|
||||
use esmith::DomainsDB;
|
||||
use esmith::ConfigDB::UTF8;
|
||||
use esmith::AccountsDB::UTF8;
|
||||
use esmith::NetworksDB::UTF8;
|
||||
use esmith::HostsDB::UTF8;
|
||||
use esmith::DomainsDB::UTF8;
|
||||
require
|
||||
'/usr/share/smanager/lib/SrvMngr/Controller/Letsencrypt-Custom.pm'; #The code that is to be added by the developer
|
||||
|
||||
@@ -53,11 +53,11 @@ sub main {
|
||||
$c->app->log->info($c->log_req);
|
||||
|
||||
#The most common ones
|
||||
my $cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
|
||||
my $adb = esmith::AccountsDB->open() || die("Couldn't open Accounts db");
|
||||
my $ndb = esmith::NetworksDB->open() || die("Couldn't open Network db");
|
||||
my $hdb = esmith::HostsDB->open() || die("Couldn't open Hosts db");
|
||||
my $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
|
||||
my $cdb = esmith::ConfigDB::UTF8->open() || die("Couldn't open config db");
|
||||
my $adb = esmith::AccountsDB::UTF8->open() || die("Couldn't open Accounts db");
|
||||
my $ndb = esmith::NetworksDB::UTF8->open() || die("Couldn't open Network db");
|
||||
my $hdb = esmith::HostsDB::UTF8->open() || die("Couldn't open Hosts db");
|
||||
my $ddb = esmith::DomainsDB::UTF8->open() || die("Couldn't open Domains db");
|
||||
my %lets_data = ();
|
||||
my $title = $c->l('lets_Letsencrypt_certificate');
|
||||
my $modul = '';
|
||||
@@ -98,11 +98,11 @@ sub do_update {
|
||||
my $modul = '';
|
||||
|
||||
#The most common ones - you might want to comment out any not used.
|
||||
my $cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
|
||||
my $adb = esmith::AccountsDB->open() || die("Couldn't open Accounts db");
|
||||
my $ndb = esmith::NetworksDB->open() || die("Couldn't open Network db");
|
||||
my $hdb = esmith::HostsDB->open() || die("Couldn't open Hosts db");
|
||||
my $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
|
||||
my $cdb = esmith::ConfigDB::UTF8->open() || die("Couldn't open config db");
|
||||
my $adb = esmith::AccountsDB::UTF8->open() || die("Couldn't open Accounts db");
|
||||
my $ndb = esmith::NetworksDB::UTF8->open() || die("Couldn't open Network db");
|
||||
my $hdb = esmith::HostsDB::UTF8->open() || die("Couldn't open Hosts db");
|
||||
my $ddb = esmith::DomainsDB::UTF8->open() || die("Couldn't open Domains db");
|
||||
my %lets_data = ();
|
||||
my $title = $c->l('lets_Letsencrypt_certificate');
|
||||
|
||||
@@ -295,11 +295,11 @@ sub do_display {
|
||||
$c->app->log->info($c->log_req);
|
||||
|
||||
#The most common ones - you might want to comment out any not used.
|
||||
my $cdb = esmith::ConfigDB->open() || die("Couldn't open config db");
|
||||
my $adb = esmith::AccountsDB->open() || die("Couldn't open Accounts db");
|
||||
my $ndb = esmith::NetworksDB->open() || die("Couldn't open Network db");
|
||||
my $hdb = esmith::HostsDB->open() || die("Couldn't open Hosts db");
|
||||
my $ddb = esmith::DomainsDB->open() || die("Couldn't open Domains db");
|
||||
my $cdb = esmith::ConfigDB::UTF8->open() || die("Couldn't open config db");
|
||||
my $adb = esmith::AccountsDB::UTF8->open() || die("Couldn't open Accounts db");
|
||||
my $ndb = esmith::NetworksDB::UTF8->open() || die("Couldn't open Network db");
|
||||
my $hdb = esmith::HostsDB::UTF8->open() || die("Couldn't open Hosts db");
|
||||
my $ddb = esmith::DomainsDB::UTF8->open() || die("Couldn't open Domains db");
|
||||
my %lets_data = ();
|
||||
my $title = $c->l('lets_Letsencrypt_certificate');
|
||||
my $modul = "";
|
||||
@@ -445,4 +445,4 @@ sub do_display {
|
||||
);
|
||||
$c->render(template => "letsencrypt");
|
||||
} ## end sub do_display
|
||||
1;
|
||||
1;
|
||||
|
@@ -89,6 +89,8 @@
|
||||
<br></span></p>
|
||||
|
||||
<h2 class='subh4'><%=l('lets_List_of_Domains_and_Hosts')%></h2>
|
||||
|
||||
% my $linkbtn = l 'lets_CHECK';
|
||||
|
||||
<br /><table class="sme-border TableSort sme-table tabl1 ">
|
||||
<thead class='tabl1'>
|
||||
@@ -106,6 +108,7 @@
|
||||
<tbody class='tabl1'>
|
||||
% my $control_data = $c->stash('DomainList');
|
||||
% foreach my $row (@$control_data) {
|
||||
% my $link = $c->render_to_string(inline=>$row->{'Table1-CHECK'});
|
||||
<tr class='table-row'>
|
||||
<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>
|
||||
@@ -114,7 +117,11 @@
|
||||
<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>
|
||||
% if ($link ne "") {
|
||||
<td><a href= "<%= $link %>" class="btn btn-outline-primary btn-sm" role="button" > <%= $linkbtn %></a></td>
|
||||
% } else {
|
||||
<td> </td>
|
||||
% }
|
||||
</tr>
|
||||
%}
|
||||
</tbody>
|
||||
|
@@ -1,6 +1,6 @@
|
||||
%define name smeserver-certificates
|
||||
%define version 11.0
|
||||
%define release 4
|
||||
%define release 7
|
||||
Summary: This is what smeserver-certificates does.
|
||||
Name: %{name}
|
||||
Version: %{version}
|
||||
@@ -25,6 +25,17 @@ AutoReqProv: no
|
||||
|
||||
|
||||
%changelog
|
||||
* Fri Jun 27 2025 Brian Read <brianr@koozali.org> 11.0-7.sme
|
||||
- Bring default theme into line with changes made for AdminLTE theme [SME: 13049]
|
||||
|
||||
* Tue Jun 17 2025 John Crisp <jcrisp@safeandsoundit.co.uk> 11.0-6.sme
|
||||
- Remove formatting from controller file [SME: 13045]
|
||||
- Add Domain/Host as Types for template checking [SME: 13045]
|
||||
|
||||
* Wed Jun 11 2025 Jean-Philippe Pialasse <jpp@koozali.org> 11.0-5.sme
|
||||
- open esmith using UTF8 [SME: 13036]
|
||||
rewrite smartmatches to grep
|
||||
|
||||
* Thu Feb 20 2025 Brian Read <brianr@koozali.org> 11.0-4.sme
|
||||
- Add local open DB in check on domain sub [SME: 12932]
|
||||
|
||||
|
Reference in New Issue
Block a user