--- rpms/smeserver-manager/sme10/smeserver-manager-0.1.4-Re-organise-menus.patch 2024/02/20 13:47:07 1.2 +++ rpms/smeserver-manager/sme10/smeserver-manager-0.1.4-Re-organise-menus.patch 2024/02/21 08:54:10 1.4 @@ -1,6 +1,6 @@ diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Backup.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Backup.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Backup.pm 2024-02-18 11:04:27.013707139 +0000 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Backup.pm 2024-02-20 08:47:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Backup.pm 2024-02-20 20:20:00.000000000 +0000 @@ -1,9 +1,9 @@ package SrvMngr::Controller::Backup; @@ -9,13 +9,13 @@ diff -urN smeserver-manager-0.1.4.old/ro +# heading : System # description : Backup or restore -# navigation : 4000 4200 -+# navigation : 5000 200 ++# navigation : 4000 200 # Copyright (C) 2002 Mitel Networks Corporation #---------------------------------------------------------------------- # routes : end diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Bugreport.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Bugreport.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Bugreport.pm 2021-06-21 10:25:10.000000000 +0100 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Bugreport.pm 2024-02-20 10:02:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Bugreport.pm 2024-02-20 20:21:00.000000000 +0000 @@ -1,9 +1,9 @@ package SrvMngr::Controller::Bugreport; @@ -24,13 +24,13 @@ diff -urN smeserver-manager-0.1.4.old/ro +# heading : Investigation # description : Report a bug -# navigation : 7000 7300 -+# navigation : 6000 500 ++# navigation : 7000 500 # routes : end #------------------------------ diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Clamav.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Clamav.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Clamav.pm 2020-11-19 07:53:26.000000000 +0000 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Clamav.pm 2024-02-20 08:47:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Clamav.pm 2024-02-20 20:20:00.000000000 +0000 @@ -1,9 +1,9 @@ package SrvMngr::Controller::Clamav; @@ -39,13 +39,13 @@ diff -urN smeserver-manager-0.1.4.old/ro +# heading : System # description : Antivirus (ClamAV) -# navigation : 6000 6720 -+# navigation : 5000 600 ++# navigation : 4000 600 # # routes : end #------------------------------ diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Datetime.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Datetime.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Datetime.pm 2024-02-18 11:04:27.057708453 +0000 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Datetime.pm 2024-02-20 08:47:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Datetime.pm 2024-02-20 20:20:00.000000000 +0000 @@ -1,9 +1,9 @@ package SrvMngr::Controller::Datetime; @@ -54,7 +54,7 @@ diff -urN smeserver-manager-0.1.4.old/ro +# heading : System # description : Date and time -# navigation : 6000 6100 -+# navigation : 5000 400 ++# navigation : 4000 400 # routes : end #------------------------------ @@ -91,7 +91,7 @@ diff -urN smeserver-manager-0.1.4.old/ro #---------------------------------------------------------------------- diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Emailsettings.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Emailsettings.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Emailsettings.pm 2021-06-21 10:25:10.000000000 +0100 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Emailsettings.pm 2024-02-20 08:47:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Emailsettings.pm 2024-02-20 20:20:00.000000000 +0000 @@ -1,9 +1,9 @@ package SrvMngr::Controller::Emailsettings; @@ -100,7 +100,7 @@ diff -urN smeserver-manager-0.1.4.old/ro +# heading : System # description : E-mail -# navigation : 6000 6700 -+# navigation : 5000 500 ++# navigation : 4000 500 # # # routes : end @@ -136,7 +136,7 @@ diff -urN smeserver-manager-0.1.4.old/ro # routes : end diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Ibays.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Ibays.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Ibays.pm 2020-11-19 07:53:26.000000000 +0000 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Ibays.pm 2024-02-20 10:07:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Ibays.pm 2024-02-20 16:49:00.000000000 +0000 @@ -1,9 +1,9 @@ package SrvMngr::Controller::Ibays; @@ -150,6 +150,80 @@ diff -urN smeserver-manager-0.1.4.old/ro # # # routes : end +@@ -52,7 +52,7 @@ + my $c = shift; + + my $rt = $c->current_route; +- my $trt = ($c->param('trt') || 'ADD'); ++ my $trt = ($c->param('trt') || 'LIST'); + my $ibay = $c->param('ibay') || ''; + + #$trt = 'DEL' if ( $ibay ); +@@ -78,42 +78,42 @@ + + if ( $trt eq 'UPD' ) { + +- my $rec = $adb->get($ibay); +- if ($rec and $rec->prop('type') eq 'ibay') { +- $iba_datas{ibay} = $ibay; +- $iba_datas{description} = $rec->prop('Name') || ''; +- $iba_datas{group} = $rec->prop('Group') || ''; +- $iba_datas{userAccess} = $rec->prop('UserAccess') || ''; +- $iba_datas{publicAccess} = $rec->prop('PublicAccess') || ''; +- $iba_datas{CgiBin} = $rec->prop('CgiBin') || 'disabled'; +- $iba_datas{SSL} = $rec->prop('SSL') || 'disabled'; +- +- } ++ my $rec = $adb->get($ibay); ++ if ($rec and $rec->prop('type') eq 'ibay') { ++ $iba_datas{ibay} = $ibay; ++ $iba_datas{description} = $rec->prop('Name') || ''; ++ $iba_datas{group} = $rec->prop('Group') || ''; ++ $iba_datas{userAccess} = $rec->prop('UserAccess') || ''; ++ $iba_datas{publicAccess} = $rec->prop('PublicAccess') || ''; ++ $iba_datas{CgiBin} = $rec->prop('CgiBin') || 'disabled'; ++ $iba_datas{SSL} = $rec->prop('SSL') || 'disabled'; ++ } + } + + if ( $trt eq 'DEL' ) { + +- my $rec = $adb->get($ibay); +- if ($rec and $rec->prop('type') eq 'ibay') { +- $iba_datas{ibay} = $ibay; +- $iba_datas{description} = $rec->prop('Name') || ''; +- $modul .= print_vhost_message( $c, $ibay ); +- } ++ my $rec = $adb->get($ibay); ++ if ($rec and $rec->prop('type') eq 'ibay') { ++ $iba_datas{ibay} = $ibay; ++ $iba_datas{description} = $rec->prop('Name') || ''; ++ $modul .= print_vhost_message( $c, $ibay ); ++ } + + } + + if ( $trt eq 'PWD' ) { + +- my $rec = $adb->get($ibay); +- if ($rec and $rec->prop('type') eq 'ibay') { +- $iba_datas{ibay} = $ibay; +- $iba_datas{description} = $rec->prop('Name') || ''; +- } ++ my $rec = $adb->get($ibay); ++ if ($rec and $rec->prop('type') eq 'ibay') { ++ $iba_datas{ibay} = $ibay; ++ $iba_datas{description} = $rec->prop('Name') || ''; ++ } + + } + + if ( $trt eq 'LIST' ) { + my @ibays; ++ $adb = esmith::AccountsDB->open || die "Couldn't open accounts db"; + if ($adb) + { + @ibays = $adb->ibays(); diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Initial.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Initial.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Initial.pm 2020-11-19 07:53:26.000000000 +0000 +++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Initial.pm 2024-02-20 12:05:00.000000000 +0000 @@ -248,7 +322,7 @@ diff -urN smeserver-manager-0.1.4.old/ro #---------------------------------------------------------------------- diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Printers.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Printers.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Printers.pm 2024-02-18 11:04:27.081709170 +0000 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Printers.pm 2024-02-20 08:47:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Printers.pm 2024-02-20 20:20:00.000000000 +0000 @@ -1,9 +1,9 @@ package SrvMngr::Controller::Printers; @@ -257,13 +331,13 @@ diff -urN smeserver-manager-0.1.4.old/ro +# heading : System # description : Printers -# navigation : 6000 6400 -+# navigation : 5000 800 ++# navigation : 4000 800 # # # routes : end diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Proxy.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Proxy.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Proxy.pm 2020-11-19 07:53:26.000000000 +0000 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Proxy.pm 2024-02-20 08:47:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Proxy.pm 2024-02-20 20:20:00.000000000 +0000 @@ -1,9 +1,9 @@ package SrvMngr::Controller::Proxy; @@ -272,7 +346,7 @@ diff -urN smeserver-manager-0.1.4.old/ro +# heading : System # description : Proxy settings -# navigation : 5000 5500 -+# navigation : 5000 700 ++# navigation : 4000 700 #---------------------------------------------------------------------- # # routes : end @@ -293,7 +367,7 @@ diff -urN smeserver-manager-0.1.4.old/ro # routes : end diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Qmailanalog.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Qmailanalog.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Qmailanalog.pm 2020-11-19 07:53:26.000000000 +0000 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Qmailanalog.pm 2024-02-20 10:02:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Qmailanalog.pm 2024-02-20 20:21:00.000000000 +0000 @@ -1,9 +1,9 @@ package SrvMngr::Controller::Qmailanalog; @@ -302,7 +376,7 @@ diff -urN smeserver-manager-0.1.4.old/ro +# heading : Investigation # description : Mail log file analysis -# navigation : 4000 4500 -+# navigation : 6000 200 ++# navigation : 7000 200 # # routes : end #---------------------------------------------------------------------- @@ -330,7 +404,7 @@ diff -urN smeserver-manager-0.1.4.old/ro +1 diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Reboot.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Reboot.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Reboot.pm 2021-06-21 10:25:10.000000000 +0100 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Reboot.pm 2024-02-20 10:07:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Reboot.pm 2024-02-20 20:29:43.962492004 +0000 @@ -1,9 +1,9 @@ package SrvMngr::Controller::Reboot; @@ -339,7 +413,7 @@ diff -urN smeserver-manager-0.1.4.old/ro +# heading : System # description : Reboot or shutdown -# navigation : 4000 4700 -+# navigation : 6000 700 ++# navigation : 4000 700 # # routes : end #---------------------------------------------------------------------- @@ -360,7 +434,7 @@ diff -urN smeserver-manager-0.1.4.old/ro # routes : end diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Review.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Review.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Review.pm 2024-02-18 11:04:27.007706960 +0000 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Review.pm 2024-02-20 10:02:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Review.pm 2024-02-20 20:21:00.000000000 +0000 @@ -1,11 +1,10 @@ package SrvMngr::Controller::Review; @@ -369,7 +443,7 @@ diff -urN smeserver-manager-0.1.4.old/ro +# heading : Investigation # description : Review configuration -# navigation : 1000 1200 -+# navigation : 6000 400 ++# navigation : 7000 400 # -# menu : U # @@ -401,425 +475,41 @@ diff -urN smeserver-manager-0.1.4.old/ro +1; diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Useraccounts.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Useraccounts.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Useraccounts.pm 2020-11-19 07:53:26.000000000 +0000 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Useraccounts.pm 2024-02-18 10:39:00.000000000 +0000 -@@ -1,7 +1,7 @@ ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Useraccounts.pm 2024-02-20 08:47:00.000000000 +0000 +@@ -1,9 +1,9 @@ package SrvMngr::Controller::Useraccounts; #---------------------------------------------------------------------- -# heading : Collaboration +# heading : User management # description : Users - # navigation : 2000 2100 +-# navigation : 2000 2100 ++# navigation : 2000 100 #---------------------------------------------------------------------- + # + # routes : end diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Userpassword.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Userpassword.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Userpassword.pm 2024-02-18 11:04:27.048708184 +0000 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Userpassword.pm 2024-02-19 16:14:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Userpassword.pm 2024-02-20 08:47:00.000000000 +0000 @@ -1,11 +1,10 @@ package SrvMngr::Controller::Userpassword; #---------------------------------------------------------------------- -# heading : None -# description : User password -+# heading : Current User -+# description : Change password - # navigation : 1000 1250 +-# navigation : 1000 1250 -# menu : U - ++# heading : Current User ++# description : Change password ++# navigation : 1000 250 +# # routes : end #---------------------------------------------------------------------- -diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Uservacations.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Uservacations.pm ---- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Uservacations.pm 1970-01-01 01:00:00.000000000 +0100 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Uservacations.pm 2024-02-20 10:02:00.000000000 +0000 -@@ -0,0 +1,384 @@ -+package SrvMngr::Controller::Uservacations; -+#---------------------------------------------------------------------- -+# heading : User management -+# description : User vacations -+# navigation : 6000 150 -+# -+# name : Uservacationsget, method : get, url : /uservacations, ctlact : Uservacations#main -+# name : Uservacationspost,method : post, url : /Uservacations, ctlact : Uservacations#do_display -+# name : Uservacations1, method : get, url : /Uservacations1, ctlact : Uservacations#do_display -+# name : Uservacations2, method : post, url : /Uservacations2, ctlact : Uservacations#do_display -+# routes : end -+#---------------------------------------------------------------------- -+ -+use strict; -+use warnings; -+use Mojo::Base 'Mojolicious::Controller'; -+ -+#use DateTime; #Not part of SME10 mix -+use POSIX; -+ -+use Locale::gettext; -+use SrvMngr::I18N; -+use SrvMngr qw(theme_list init_session); -+ -+use Data::Dumper; -+use esmith::util; -+use esmith::HostsDB; -+use esmith::AccountsDB; -+ -+our $db = esmith::ConfigDB->open(); -+our $adb = esmith::AccountsDB->open(); -+ -+our $PanelUser = $ENV{'REMOTE_USER'} ||''; -+$PanelUser = $1 if ($PanelUser =~ /^([a-z][\.\-a-z0-9]*)$/); -+ -+our %delegatedVacations; -+ -+use constant FALSE => 0; -+use constant TRUE => 1; -+ -+sub main { -+ -+ my $c = shift; -+ $c->app->log->info( $c->log_req ); -+ -+ my %vac_datas = (); -+ my $title = $c->l('vac_FORM_TITLE'); -+ my $modul = ''; -+ -+ $vac_datas{trt} = 'LIST'; -+ -+ my @vacations = get_vacation_table($c); -+ my $empty = (scalar @vacations == 0); -+ -+ $vac_datas{"first"} = 'vac_MODIFY_DESCRIPTION'; -+ -+ $c->stash( -+ title => $title, -+ modul => $modul, -+ vac_datas => \%vac_datas, -+ vacations =>\@vacations, -+ empty => $empty -+ ); -+ $c->render( template => 'uservacations' ); -+} -+ -+sub do_display { -+ -+ my $c = shift; -+ $c->app->log->info( $c->log_req ); -+ -+ my $rt = $c->current_route; -+ my $trt = ( $c->param('trt') || 'LIST' ); -+ -+ $trt = 'ADD' if ( $rt eq 'Uservacations1' ); -+ $trt = 'ADD1' if ( $rt eq 'Uservacations2' ); -+ -+ my %vac_datas = (); -+ my $title = $c->l('vac_FORM_TITLE'); -+ my $modul = ''; -+ -+ -+ if ( $trt eq 'ADD' ) { -+ # Add or change a vacation message - called from the list panel -+ # Get the data and pass it across. -+ my $account = $c->param("account"); -+ my $user = $adb->get($account); -+ my $username = $user->prop("FirstName")." ".$user->prop("LastName"); -+ my $EmailVacation = $user->prop('EmailVacation') || ''; -+ my $EmailVacationFrom = $user->prop('EmailVacationFrom') || ''; -+ my $EmailVacationTo = $user->prop('EmailVacationTo') || ''; -+ my $VacText = get_vacation_text($c); -+ $c->stash(account=>$account, -+ username=>$username, -+ EmailVacation=>$EmailVacation, -+ EmailVacationFrom=>$EmailVacationFrom, -+ EmailVacationTo=>$EmailVacationTo, -+ VacText=>$VacText -+ ); -+ } -+ -+ if ( $trt eq 'ADD1' ) { -+ #Add or edit vacation message. -+ my $ret = add_vac_message($c); -+ #Return to list page if success -+ if ($ret eq "OK") { -+ $trt = "LIST"; -+ $vac_datas{success} = "vac_SUCCESS"; -+ -+ } else { -+ my $account = $c->param("account"); -+ my $user = $adb->get($account); -+ my $username = $user->prop("FirstName")." ".$user->prop("LastName"); -+ my $EmailVacationFrom = $c->param('EmailVacationFrom') || ''; -+ my $EmailVacationTo = $c->param('EmailVacationTo') || ''; -+ my $EmailVacation = $c->param('EmailVacation') || ''; -+ my $VacText = $c->param("VacText"); -+ $c->stash(account=>$account, -+ username=>$username, -+ EmailVacation=>$EmailVacation, -+ EmailVacationFrom=>$EmailVacationFrom, -+ EmailVacationTo=>$EmailVacationTo, -+ VacText=>$VacText -+ ); -+ #Error - return to Add page -+ $trt = "ADD"; -+ $vac_datas{error} = $ret; -+ } -+ } -+ -+ if ( $trt eq 'LIST' ) { -+ -+ #List all the users and vacation message details. -+ my @vacations = get_vacation_table($c); -+ my $empty = (scalar @vacations == 0); -+ $c->stash( -+ empty => $empty, -+ vacations =>\@vacations -+ ); -+ } -+ -+ -+ $vac_datas{'trt'} = $trt; -+ $c->stash( title => $title, modul => $modul, vac_datas => \%vac_datas ); -+ $c->render( template => 'uservacations' ); -+} -+ -+sub user_accounts_exist -+{ -+ my $q = shift; -+ #return scalar $adb->users; -+ if (scalar $adb->users) -+ { return $q->l('vac_DESCRIPTION'); } -+} -+ -+sub get_vacation_table -+{ -+ my $self = shift; -+ -+#We want to retrieve granted group from DB, and retrieve users of groups -+ my $record = $adb->get($PanelUser); -+ my $dg; -+ if ($record) {$dg=$record->prop('delegatedVacations')||'';} -+ else {$dg = '';} -+ $dg =~ s/ //g; -+ my @g = split(/,/, $dg); -+ my @visiblemembers = (); -+ -+ foreach my $g (@g) { -+ my $members = $adb->get_prop("$g",'Members'); -+ next unless defined $members; -+ $members =~ s/ //g; -+ my @members = split(/,/, $members); -+ push @visiblemembers , @members ; -+ } -+ -+ foreach my $k ( @visiblemembers ) -+ { -+ $delegatedVacations{$k}=1; -+ } -+ -+ -+ my @users = $adb->users; -+ return () if (@users == 0); ##$self->l("ACCOUNT_USER_NONE") -+ return () if (@visiblemembers == 0 && $dg ne '');#; #$self->l("NO_USERS_IN_GRANTED_GROUPS") -+ -+ my @data = (); -+ -+ for my $user (@users) -+ { -+ next if %delegatedVacations and not $delegatedVacations{$user->key}; -+ # make it clearer which uses have vacation -+ my $EmailVacation = $user->prop('EmailVacation') || ''; -+ my $EmailVacationFrom = $user->prop('EmailVacationFrom') || ''; -+ my $EmailVacationTo = $user->prop('EmailVacationTo') || ''; -+ my $status = $user->prop('EmailVacation') || ''; -+ if ($status eq 'yes') { $status = 'YES'; } else { $status = ''; } -+ -+ push @data, -+ { User => $user->key, -+ FullName => $user->prop('FirstName') . " " .$user->prop('LastName'), -+ status => $self->l($status), -+ EmailVacation => $EmailVacation, -+ EmailVacationFrom => showDate($EmailVacationFrom), -+ EmailVacationTo => showDate($EmailVacationTo), -+ Modify => $self->l('vac_MODIFY'), -+ } -+ } -+ return @data; -+} -+ -+sub showDate -+{ -+ my $strDate = shift; -+ my ($Year,$Month,$Day) = ($strDate =~ /(\d{4})(\d{2})(\d{2})/); -+ #my $Unix = mktime(0,0,0,$Day,$Month,$Year); -+ return "$Year-$Month-$Day"; -+} -+ -+ -+sub modify_link -+{ -+ my ($data_item, $row, $field) = @_; -+ -+ return "uservacations?" . -+ join("&", -+ "page=0", -+ "page_stack=", -+ "Next=Next", -+ "User=" . $row->{User}, -+ "FullName=" . $row->{FullName}, -+ "EmailVacation=" . $row->{EmailVacation}, -+ "EmailVacationFrom=" . $row->{EmailVacationFrom}, -+ "EmailVacationTo=" . $row->{EmailVacationTo}, -+ "wherenext=VACATION_PAGE_MODIFY"); -+} -+ -+# this formats the text to display on screen -+sub get_vacation_text -+{ -+ my $q = shift; -+ my $domain = $db->get_value('DomainName'); -+ my $user = $q->param('account'); -+ -+ my $fullname = $adb->get_prop($user, "FirstName") . " " . -+ $adb->get_prop($user, "LastName"); -+ -+ my $vfile = "/home/e-smith/files/users/$user/.vacation.msg"; -+ -+ my $from = $q->l('vac_FROM'); -+ my $Subject = $q->l('vac_SUBJECT'); -+ my $away = $q->l('vac_AWAY_FROM_MAIL'); -+ my $return = $q->l('vac_ANSWER_TO_OBJECT_SENDER'); -+ -+ #my $ExistingMessage = "$from $fullname <\;$user\@$domain>\;\n"."$Subject $return\n". -+ # "\n$away\n"."\n--\n$fullname"; -+ -+ my $ExistingMessage = "$from $fullname \<$user\@$domain\>\n"."$Subject $return\n". -+ "\n$away\n"."\n--\n$fullname"; -+ -+ -+ # if exists and is not empty -+ if (( -e $vfile ) && (! -z $vfile )) -+ { -+ open (VACATION, "<$vfile") -+ or die "Error: Could not open file: $vfile\n"; -+ my @vacationTemp; -+ -+ #reformat so email address isn't hidden inside < > -+ while () -+ { -+ $_ =~ s//>\;/; -+ push (@vacationTemp, $_); -+ } -+ -+ $ExistingMessage = join ("", @vacationTemp); -+ -+ close VACATION; -+ } -+ return $ExistingMessage; -+} -+ -+# saves the text to .vacation.msg -+sub add_vac_message -+{ -+ my $q = shift; -+ -+ my $domain = $db->get_value('DomainName'); -+ my $user = $q->param('account'); -+ -+ my $EmailVacation = $q->param('EmailVacation')||"no"; -+ #die($EmailVacation); -+ #if ($EmailVacation eq "yes") {$EmailVacation = "yes";} else {$EmailVacation = "no";} -+ -+ #Decode To and FROM to standard format - comes over in html5 iso format yyyy-mm-dd -+ my $EmailVacationFrom = trim($q->param('EmailVacationFrom')); -+ my ($fromYear,$fromMonth,$fromDay) = ($EmailVacationFrom =~ /(\d{4})-(\d{2})-(\d{2})/); -+ $EmailVacationFrom = $fromYear.$fromMonth.$fromDay; -+ if ($EmailVacationFrom !~ m/^2[0-9]{3}[0|1][0-9][0-3][0-9]$/ and $EmailVacationFrom ne "") {return "vac_FROM_DATE_INCORRECT";} -+ my $EmailVacationTo = trim($q->param('EmailVacationTo')); -+ my ($toYear,$toMonth,$toDay) = ($EmailVacationTo =~ /(\d{4})-(\d{2})-(\d{2})/); -+ $EmailVacationTo = $toYear.$toMonth.$toDay; -+# $EmailVacationTo =~ s/-//g; #Just take out "-". -+ if ($EmailVacationTo !~ m/^2[0-9]{3}[0|1][0-9][0-3][0-9]$/ and $EmailVacationFrom ne "") {return "vac_TO_DATE_INCORRECT";} -+ #Check not the same or From follows To. -+ if ($EmailVacationTo ne "" and $EmailVacationTo eq $EmailVacationFrom) {return "vac_DATES_THE_SAME";} -+ my $UnixFrom = mktime(0,0,0,$fromDay,$fromMonth,$fromYear); -+ my $UnixTo = mktime(0,0,0,$toDay,$toMonth,$toYear); -+ if ($UnixTo < $UnixFrom) {return "vac_TO_DATE_MUST_BE_LATER";} -+ -+ -+ my $new_message = $q->param('VacText'); -+ my $vfile = "/home/e-smith/files/users/$user/.vacation.msg"; -+ -+ my $fullname = $adb->get_prop($user, "FirstName") . " " . -+ $adb->get_prop($user, "LastName"); -+ -+ my $from = 'From:'; -+ my $away = $q->l('vac_AWAY_FROM_MAIL'); -+ my $return = $q->l('vac_ANSWER_TO_OBJECT_SENDER'); -+ -+ my $vacation_text = "$from $fullname \<$user\@$domain\>\n"."Subject: $return\n". -+ "\n$away \n"."\n--\n$fullname"; -+ -+ my $reset = $vacation_text; -+ -+ # if exists and is not empty -+ if (( -e $vfile ) && (! -z $vfile )) -+ { -+ open (VACATION, "<$vfile") -+ or die "Error: Could not open file: $vfile\n"; -+ my @vacationTemp = ; -+ $vacation_text = join ("", @vacationTemp); -+ -+ close VACATION; -+ } -+ -+ chomp $new_message; -+ -+ # reset msg to default, -+ if ($new_message =~ /reset/) -+ { $vacation_text = $reset; } -+ else -+ { -+ #or save new_message -+ unless ($new_message eq "") -+ { $vacation_text = $new_message; } -+ } -+ -+ # Strip out DOS Carriage Returns (CR) -+ $vacation_text =~ s/\r//g; -+ -+ unlink $vfile; -+ open (VACATION, ">$vfile") -+ or die ("Error opening vacation message.\n"); -+ -+ print VACATION "$vacation_text"; -+ close VACATION; -+ -+ esmith::util::chownFile($user, $user, -+ "/home/e-smith/files/users/$user/.vacation.msg"); -+ -+ $adb->set_prop($user, 'EmailVacation', $EmailVacation); -+ $adb->set_prop($user, 'EmailVacationFrom', $EmailVacationFrom); -+ $adb->set_prop($user, 'EmailVacationTo', $EmailVacationTo); -+ -+ #the first is more correct but is slower -+ #system ("/sbin/e-smith/signal-event", "email-update", $user) == 0 -+ system ("/etc/e-smith/events/actions/qmail-update-user event $user") == 0 -+ or die ("Error occurred updating .qmail\n"); -+ -+ if (($EmailVacation eq 'no') && ( -e "/home/e-smith/files/users/$user/.vacation")) -+ { -+ system ("/bin/rm /home/e-smith/files/users/$user/.vacation") == 0 -+ or die ("Error resetting vacation db.\n"); -+ } -+ -+ return "OK"; -+} -+ -+sub trim { my $s = shift; $s =~ s/^\s+|\s+$//g; return $s }; -+ -+1; diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Viewlogfiles.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Viewlogfiles.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Viewlogfiles.pm 2021-06-21 10:25:10.000000000 +0100 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Viewlogfiles.pm 2024-02-20 10:02:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Viewlogfiles.pm 2024-02-20 20:21:00.000000000 +0000 @@ -1,9 +1,9 @@ package SrvMngr::Controller::Viewlogfiles; @@ -828,7 +518,7 @@ diff -urN smeserver-manager-0.1.4.old/ro +# heading : Investigation # description : View log files -# navigation : 4000 4400 -+# navigation : 6000 100 ++# navigation : 7000 100 # # # routes : end @@ -850,7 +540,7 @@ diff -urN smeserver-manager-0.1.4.old/ro #---------------------------------------------------------------------- diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Yum.pm smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Yum.pm --- smeserver-manager-0.1.4.old/root/usr/share/smanager/lib/SrvMngr/Controller/Yum.pm 2024-02-18 11:04:27.067708751 +0000 -+++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Yum.pm 2024-02-19 16:34:00.000000000 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/lib/SrvMngr/Controller/Yum.pm 2024-02-21 08:28:18.980905785 +0000 @@ -1,9 +1,9 @@ package SrvMngr::Controller::Yum; @@ -859,10 +549,93 @@ diff -urN smeserver-manager-0.1.4.old/ro +# heading : System # description : Software installer -# navigation : 4000 4200 -+# navigation : 5000 5300 ++# navigation : 4000 300 # # routes : end #---------------------------------------------------------------------- +diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/themes/default/templates/layouts/default.html.ep smeserver-manager-0.1.4/root/usr/share/smanager/themes/default/templates/layouts/default.html.ep +--- smeserver-manager-0.1.4.old/root/usr/share/smanager/themes/default/templates/layouts/default.html.ep 2024-02-18 11:04:27.117710244 +0000 ++++ smeserver-manager-0.1.4/root/usr/share/smanager/themes/default/templates/layouts/default.html.ep 2024-02-21 08:43:00.000000000 +0000 +@@ -31,6 +31,22 @@ + %= stylesheet '/js/buttons.print.min.js' + + %= stylesheet '/css/sme-jquery-overrides.css' ++ ++ ++ ++ ++ ++ ++ ++ ++ --> ++ ++ ++ ++ + + + +@@ -60,7 +76,6 @@ + %= include 'partials/_navig2' + % } + +- +
+ + %= include 'partials/_info' +@@ -91,48 +106,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 +- + + + diff -urN smeserver-manager-0.1.4.old/root/usr/share/smanager/themes/default/templates/partials/_navig2.html.ep smeserver-manager-0.1.4/root/usr/share/smanager/themes/default/templates/partials/_navig2.html.ep --- smeserver-manager-0.1.4.old/root/usr/share/smanager/themes/default/templates/partials/_navig2.html.ep 2024-02-18 11:04:27.023707438 +0000 +++ smeserver-manager-0.1.4/root/usr/share/smanager/themes/default/templates/partials/_navig2.html.ep 2024-02-20 12:01:00.000000000 +0000