Compare commits
6 Commits
11_0_0-3_e
...
11_0_0-9_e
Author | SHA1 | Date | |
---|---|---|---|
a428e91c92 | |||
03955eecea | |||
891fc73ce3 | |||
e7d7b6afb8 | |||
1837bc9a18 | |||
a580a79ab5 |
@@ -47,6 +47,9 @@ for my $event ( qw( smeserver-manager-update smanager-refresh bootstrap-console-
|
||||
|
||||
event_link('systemd-default', "smeserver-manager-update", '88');
|
||||
event_link('systemd-reload', "smeserver-manager-update", '89');
|
||||
templates2events("/etc/rsyslog.conf", "smeserver-manager-update");
|
||||
safe_symlink("restart",
|
||||
"root/etc/e-smith/events/smeserver-manager-update/services2adjust/rsyslog");
|
||||
|
||||
use esmith::Build::Backup qw(:all);
|
||||
backup_includes("smeserver-manager", qw(
|
||||
|
4
root/etc/e-smith/templates/etc/rsyslog.conf/32smanager
Normal file
4
root/etc/e-smith/templates/etc/rsyslog.conf/32smanager
Normal file
@@ -0,0 +1,4 @@
|
||||
#smanager
|
||||
:programname, isequal, "smanager" /var/log/smanager/smanager.log
|
||||
& stop
|
||||
|
@@ -1,4 +1,6 @@
|
||||
/usr/share/smanager/log/production.log {
|
||||
/var/log/smanager/smanager.log {
|
||||
su root root
|
||||
create 600 root root
|
||||
weekly
|
||||
copytruncate
|
||||
rotate 12
|
||||
|
@@ -7,7 +7,7 @@ After=network.target
|
||||
Type=simple
|
||||
SyslogIdentifier=smanager
|
||||
WorkingDirectory=/usr/share/smanager/script
|
||||
PIDFile=/var/run/smanager.pid
|
||||
PIDFile=/run/smanager.pid
|
||||
ExecStartPre=/sbin/e-smith/service-status smanager
|
||||
ExecStart=/usr/bin/hypnotoad srvmngr -f
|
||||
ExecStop=/usr/bin/hypnotoad -s srvmngr
|
||||
|
@@ -535,7 +535,7 @@ sub getNavigation {
|
||||
# Determine the directory where the functions are kept
|
||||
#-----------------------------------------------------
|
||||
my $navigation_ctlr_ignore =
|
||||
"(\.\.?|Swttheme\.pm|Login\.pm|Request\.pm|Modules\.pm(-.*)?)";
|
||||
"(\.\.?|Swttheme\.pm|Login\.pm|Request\.pm|Modules\.pm|Legacypanel\.pm(-.*)?)";
|
||||
# "(\.\.?|Initial\.pm|Manual\.pm|Swttheme\.pm|Request\.pm|Modules\.pm(-.*)?)";
|
||||
my $navigation_cgi_ignore =
|
||||
"(\.\.?|navigation|noframes|online-manual|(internal|pleasewait)(-.*)?)";
|
||||
@@ -624,7 +624,7 @@ sub getNavigation {
|
||||
{
|
||||
$heading = $rec->prop('Heading');
|
||||
$description = $rec->prop('Description');
|
||||
$headingWeight = $rec->prop('HeadingWeight');
|
||||
$headingWeight = $rec->prop('HeadingWeight') || 99999; #Stop noise in logs if file in dir does not have nav header.
|
||||
$descriptionWeight = $rec->prop('DescriptionWeight');
|
||||
$urlpath = $rec->prop('UrlPath') || '';
|
||||
$menucat = $rec->prop('MenuCat') || 'A'; # admin menu (default)
|
||||
|
@@ -37,6 +37,8 @@ use esmith::BackupHistoryDB;
|
||||
use esmith::util;
|
||||
use esmith::lockfile;
|
||||
|
||||
use esmith::BlockDevices;
|
||||
|
||||
use constant DEBUG => $ENV{MOJO_SMANAGER_DEBUG} || 0;
|
||||
|
||||
our $cdb = esmith::ConfigDB->open || die "Couldn't open config db";
|
||||
@@ -1576,19 +1578,33 @@ sub get_BackupwkDest_options {
|
||||
my @usbdisks = ();
|
||||
|
||||
if ( $VFSType eq 'usb' ) {
|
||||
foreach my $udi (qx(hal-find-by-property --key volume.fsusage --string filesystem)) {
|
||||
$udi =~ m/^(\S+)/;
|
||||
my $devices = esmith::BlockDevices->new ('allowmount' => 'disabled');
|
||||
my ($valid, $invalid) = $devices->checkBackupDrives(0);
|
||||
|
||||
my $is_mounted = qx(hal-get-property --udi $1 --key volume.is_mounted);
|
||||
|
||||
if ($is_mounted eq "false\n") {
|
||||
my $vollbl = qx(hal-get-property --udi $1 --key volume.label);
|
||||
$vollbl =~ m/^(\S+)/;
|
||||
if ($vollbl =~ /^\s/) {$vollbl = 'nolabel';}
|
||||
chomp $vollbl;
|
||||
push @usbdisks, $vollbl;
|
||||
if ( ${$valid}[0] ) {
|
||||
foreach ( @{$valid} ) {
|
||||
push @usbdisks, $devices->label($_);
|
||||
}
|
||||
}
|
||||
|
||||
if (!$usbdisks[0]){
|
||||
push (@usbdisks,$c->l('bac_No suitable local devices found'));
|
||||
}
|
||||
$devices->destroy;
|
||||
|
||||
#foreach my $udi (qx(hal-find-by-property --key volume.fsusage --string filesystem)) {
|
||||
#$udi =~ m/^(\S+)/;
|
||||
|
||||
#my $is_mounted = qx(hal-get-property --udi $1 --key volume.is_mounted);
|
||||
|
||||
#if ($is_mounted eq "false\n") {
|
||||
#my $vollbl = qx(hal-get-property --udi $1 --key volume.label);
|
||||
#$vollbl =~ m/^(\S+)/;
|
||||
#if ($vollbl =~ /^\s/) {$vollbl = 'nolabel';}
|
||||
#chomp $vollbl;
|
||||
#push @usbdisks, $vollbl;
|
||||
#}
|
||||
#}
|
||||
# return undef unless ($usbdisks[0]);
|
||||
}
|
||||
|
||||
@@ -1985,31 +2001,50 @@ sub dmount {
|
||||
return ( qx(/bin/mount -t nfs -o nolock "$host:/$share" $mountdir 2>&1) );
|
||||
}
|
||||
elsif ($VFSType eq 'usb') {
|
||||
my $device = "";
|
||||
my $blkdev = "";
|
||||
my $device = "";
|
||||
my $vollbl = "";
|
||||
foreach my $udi (qx(hal-find-by-property --key volume.fsusage --string filesystem)) {
|
||||
$udi =~ m/^(\S+)/;
|
||||
my $is_mounted = qx(hal-get-property --udi $1 --key volume.is_mounted);
|
||||
|
||||
if ($is_mounted eq "false\n") {
|
||||
$blkdev = qx(hal-get-property --udi $1 --key block.device);
|
||||
if ($blkdev =~ m/^(\S+)/) {$blkdev = $1;}
|
||||
}
|
||||
if ($is_mounted eq "false\n") {
|
||||
$vollbl = qx(hal-get-property --udi $1 --key volume.label);
|
||||
$vollbl =~ m/^(\S+)/;
|
||||
if ($vollbl =~ /^\s/) {$vollbl = 'nolabel';}
|
||||
}
|
||||
my $devices = esmith::BlockDevices->new ('allowmount' => 'disabled');
|
||||
my ($valid, $invalid) = $devices->checkBackupDrives(0);
|
||||
|
||||
chomp $vollbl;
|
||||
chomp $blkdev;
|
||||
$vollbl = "media/$vollbl";
|
||||
if ($vollbl eq $share) {
|
||||
$device = $blkdev;
|
||||
}
|
||||
if ( ${$valid}[0] ) {
|
||||
foreach ( @{$valid} ) {
|
||||
$vollbl = $devices->label($_);
|
||||
if ( $share eq "media/$vollbl" ) {
|
||||
$device = "/dev/$_";
|
||||
}
|
||||
}
|
||||
}
|
||||
return ( qx(/bin/mount $device "/$share" 2>&1) );
|
||||
$devices->destroy;
|
||||
return ( qx (mount $device /$share 2>&1) );
|
||||
|
||||
#-------------------------------------------------------------------------------------------------------
|
||||
#my $device = "";
|
||||
#my $blkdev = "";
|
||||
#my $vollbl = "";
|
||||
#foreach my $udi (qx(hal-find-by-property --key volume.fsusage --string filesystem)) {
|
||||
#$udi =~ m/^(\S+)/;
|
||||
#my $is_mounted = qx(hal-get-property --udi $1 --key volume.is_mounted);
|
||||
|
||||
#if ($is_mounted eq "false\n") {
|
||||
#$blkdev = qx(hal-get-property --udi $1 --key block.device);
|
||||
#if ($blkdev =~ m/^(\S+)/) {$blkdev = $1;}
|
||||
#}
|
||||
#if ($is_mounted eq "false\n") {
|
||||
#$vollbl = qx(hal-get-property --udi $1 --key volume.label);
|
||||
#$vollbl =~ m/^(\S+)/;
|
||||
#if ($vollbl =~ /^\s/) {$vollbl = 'nolabel';}
|
||||
#}
|
||||
|
||||
#chomp $vollbl;
|
||||
#chomp $blkdev;
|
||||
#$vollbl = "media/$vollbl";
|
||||
#if ($vollbl eq $share) {
|
||||
#$device = $blkdev;
|
||||
#}
|
||||
#}
|
||||
#return ( qx(/bin/mount $device "/$share" 2>&1) );
|
||||
#-------------------------------------------------------------------------------------------------------
|
||||
} else {
|
||||
return ("Error while mounting $host/$share : $VFSType not supported.\n");
|
||||
}
|
||||
|
@@ -1,5 +1,10 @@
|
||||
package SrvMngr::Controller::Legacypanel;
|
||||
|
||||
#----------------------------------------------------------------------
|
||||
# heading : Legacy
|
||||
# description : Legacy panel
|
||||
# navigation : 99999 9999
|
||||
#----------------------------------------------------------------------
|
||||
#----------------------------------------------------------------------
|
||||
# name : legacypanel, method : get, url : /legacypanel, ctlact : Legacypanel#main
|
||||
#
|
||||
|
@@ -1,3 +1,4 @@
|
||||
'bac_No suitable local devices found' => 'No suitable local devices found',
|
||||
'bac_BACKUP_TITLE' => 'Backup or restore server data',
|
||||
'bac_BACKUP_DESC' => '<P>The server provides two ways to back up and restore
|
||||
your server: using your local desktop or a tape drive.</P>
|
||||
|
Binary file not shown.
After Width: | Height: | Size: 10 KiB |
@@ -19,16 +19,18 @@
|
||||
%= content_for 'refresh'
|
||||
|
||||
%= stylesheet '/js/datatables.min.css'
|
||||
|
||||
%= javascript '/js/datatables.min.js'
|
||||
|
||||
%= stylesheet '/js/jquery-ui.min.css'
|
||||
|
||||
%= javascript '/js/jquery-ui.min.js'
|
||||
|
||||
%= stylesheet '/js/dataTables.buttons.min.js'
|
||||
%= stylesheet '/js/jszip.min.js'
|
||||
%= stylesheet '/js/pdfmake.min.js'
|
||||
%= stylesheet '/js/vfs_fonts.js'
|
||||
%= stylesheet '/js/buttons.html5.min.js'
|
||||
%= stylesheet '/js/buttons.print.min.js'
|
||||
%= javascript '/js/dataTables.buttons.min.js'
|
||||
%= javascript '/js/jszip.min.js'
|
||||
%= javascript '/js/pdfmake.min.js'
|
||||
%= javascript '/js/vfs_fonts.js'
|
||||
%= javascript '/js/buttons.html5.min.js'
|
||||
%= javascript '/js/buttons.print.min.js'
|
||||
|
||||
%= stylesheet '/css/sme-jquery-overrides.css'
|
||||
|
||||
@@ -90,47 +92,6 @@
|
||||
% }
|
||||
|
||||
%= javascript '/js/sme-dataTable-setup.js'
|
||||
|
||||
%= javascript begin
|
||||
//Set menu to initial condition based on localStorage
|
||||
$(document).ready(function() {
|
||||
let menunavflag = window.localStorage.getItem('menunav');
|
||||
if (menunavflag != "false"){
|
||||
$('#menunav').toggle(true);
|
||||
} else {
|
||||
$('#menunav').toggle(false);
|
||||
}
|
||||
|
||||
let menuadmflag = window.localStorage.getItem('menuadm');
|
||||
if (menuadmflag != "false"){
|
||||
$('#menuadm').toggle(true);
|
||||
} else {
|
||||
$('#menuadm').toggle(false);
|
||||
}
|
||||
|
||||
let menuuserflag = window.localStorage.getItem('menuuser');
|
||||
if (menuuserflag != "false"){
|
||||
$('#menuuser').toggle(true);
|
||||
} else {
|
||||
$('#menuuser').toggle(false);
|
||||
}
|
||||
|
||||
var sections = document.getElementsByClassName("section-title");
|
||||
for (var i = 0, len = sections.length; i < len; i++) {
|
||||
var jqObj = $(sections[i]);
|
||||
var $section = jqObj.parent().next('div');
|
||||
if(!$section.length){
|
||||
return false;
|
||||
}
|
||||
let localStorageTag = "admSection-"+sections[i].innerHTML;
|
||||
if (window.localStorage.getItem(localStorageTag) != "false"){
|
||||
$section.toggle(true);
|
||||
} else {
|
||||
$section.toggle(false);
|
||||
}
|
||||
}
|
||||
})
|
||||
%end
|
||||
|
||||
</body>
|
||||
</html>
|
||||
|
@@ -1,5 +1,6 @@
|
||||
<div id="footer">
|
||||
<div id="footer" width=100%>
|
||||
<HR class="sme-copyrightbar">
|
||||
<a href="https://mojolicious.org" target="_blank"><img src="images/sme-mojo-logo-white.png" style="position:relative;"></a>
|
||||
<font class="sme-copyright">
|
||||
% if ( $c->is_logged_in ) {
|
||||
SME Server <%= session 'releaseVersion' %> - Manager <%= $c->app->VERSION %>
|
||||
|
@@ -9,6 +9,7 @@
|
||||
<br>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</p>
|
||||
%= hidden_field 'trt' => 'ADD';
|
||||
|
||||
% end
|
||||
|
||||
@@ -71,9 +72,7 @@
|
||||
% }
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
<%} %>
|
||||
|
||||
%= hidden_field 'trt' => $iba_datas->{trt}
|
||||
|
||||
</div>
|
||||
|
@@ -60,9 +60,10 @@
|
||||
<span class=data>
|
||||
%=text_field 'networkRouter'
|
||||
</span><br><br>
|
||||
<div class='center'>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</div>
|
||||
<p>
|
||||
<br>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</p>
|
||||
%end
|
||||
|
||||
</div>
|
||||
|
@@ -49,9 +49,11 @@
|
||||
</span><br><br>
|
||||
%}
|
||||
%= hidden_field localnetwork=>$localnetwork
|
||||
<div class='center'>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</div>
|
||||
<p>
|
||||
<br>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</p>
|
||||
|
||||
%end
|
||||
|
||||
</div>
|
||||
|
@@ -37,10 +37,12 @@
|
||||
%= $c->render_to_string(inline => l($ret{ret},$var1,$var2,$var3,$var4,$var5,$var6,$var7));
|
||||
</div>
|
||||
%}
|
||||
<br><br>
|
||||
<div class='center'>
|
||||
|
||||
<p>
|
||||
<br>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</div>
|
||||
</p>
|
||||
|
||||
% end
|
||||
|
||||
<br>
|
||||
|
@@ -77,9 +77,11 @@
|
||||
<span class=data>
|
||||
%=text_field 'cmmnt'
|
||||
</span><br><br>
|
||||
<div class='center'>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</div>
|
||||
<p>
|
||||
<br>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</p>
|
||||
|
||||
%end
|
||||
|
||||
</div>
|
||||
|
@@ -57,9 +57,10 @@
|
||||
%#}
|
||||
%= hidden_field sport=>$sport
|
||||
%= hidden_field proto=>$proto
|
||||
<div class='center'>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</div>
|
||||
<br>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</p>
|
||||
|
||||
%end
|
||||
|
||||
</div>
|
||||
|
@@ -18,8 +18,6 @@
|
||||
% my $var5 = @vars[4];
|
||||
% my $var6 = @vars[5];
|
||||
|
||||
|
||||
|
||||
%if ($ret{ret} eq "") {
|
||||
%= $c->render_to_string(inline => l('pf_FIRST_PAGE_DESCRIPTION'));
|
||||
%} elsif (index($ret{ret},"SUCCESS") != -1) {
|
||||
@@ -33,21 +31,22 @@
|
||||
%= $c->l($ret{ret},$var1,$var2,$var3,$var4,$var5,$var6);
|
||||
</div>
|
||||
%}
|
||||
<br><br>
|
||||
<div class='center'>
|
||||
|
||||
<p>
|
||||
<br>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</div>
|
||||
</p>
|
||||
|
||||
|
||||
% end
|
||||
|
||||
<br>
|
||||
|
||||
% if ($empty){
|
||||
<br>
|
||||
%=l 'pf_NO_FORWARDS'
|
||||
% } else {
|
||||
<br>
|
||||
%=l 'pf_SHOW_FORWARDS'
|
||||
<br>
|
||||
<br><br />
|
||||
<table class="sme-border TableSort"><thead>
|
||||
<tr>
|
||||
<th class='sme-border'>
|
||||
|
@@ -213,10 +213,10 @@
|
||||
</p>
|
||||
%}
|
||||
|
||||
|
||||
<div class='center'>
|
||||
<p>
|
||||
<br>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</div>
|
||||
</p>
|
||||
|
||||
% end
|
||||
|
||||
|
@@ -66,9 +66,10 @@
|
||||
</span>
|
||||
<br><br></p>
|
||||
|
||||
<div class='center'>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</div>
|
||||
<p>
|
||||
<br>
|
||||
%= submit_button "$btn", class => 'action'
|
||||
</p>
|
||||
|
||||
% end
|
||||
|
||||
|
0
root/var/log/smanager/.gitignore
vendored
Normal file
0
root/var/log/smanager/.gitignore
vendored
Normal file
@@ -2,7 +2,7 @@ Summary: Sme server navigation module : manager 2
|
||||
%define name smeserver-manager
|
||||
Name: %{name}
|
||||
%define version 11.0.0
|
||||
%define release 3
|
||||
%define release 9
|
||||
Version: %{version}
|
||||
Release: %{release}%{?dist}
|
||||
License: GPL
|
||||
@@ -108,6 +108,26 @@ true
|
||||
%defattr(-,root,root)
|
||||
|
||||
%changelog
|
||||
* Thu May 09 2024 Brian Read <brianr@koozali.org> 11.0.0-9.sme
|
||||
- Add mojo logo to footer [SME: 12679]
|
||||
- Fix default for HeaderWeight to avoid noise in logs if no Nav header in file
|
||||
- Align buttons consistently [SME: 12680]
|
||||
|
||||
* Tue Apr 30 2024 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-8.sme
|
||||
- create dedicated log files and logrotate [SME: 12664]
|
||||
|
||||
* Tue Apr 30 2024 Brian Read <brianr@koozali.org> 11.0.0-7.sme
|
||||
- Remove use of hel command and replace by call to BlockDevices lib [SME: 12644]
|
||||
|
||||
* Mon Apr 29 2024 Brian Read <brianr@koozali.org> 11.0.0-6.sme
|
||||
- Update layout for table extras [SME: 12656]
|
||||
|
||||
* Sun Apr 28 2024 Brian Read <brianr@koozali.org> 11.0.0-5.sme
|
||||
- Ibay create not getting into panel [SME: 12652]
|
||||
|
||||
* Tue Apr 23 2024 Brian Read <brianr@koozali.org> 11.0.0-4.sme
|
||||
- add in Nav numbers for Legacypanels.pm and ignore it when generating nav menu [SME:12643]
|
||||
|
||||
* Thu Apr 04 2024 Brian Read <brianr@koozali.org> 11.0.0-3.sme
|
||||
- Set license file to GPL2.0 [SME: 12577]
|
||||
|
||||
|
Reference in New Issue
Block a user