* Mon Sep 23 2024 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-20.sme

- webmail switch panel to use roundcube [SME: 12742]
- prevent browser from caching [SME: 12695]
This commit is contained in:
Jean-Philippe Pialasse 2024-09-23 10:07:08 -04:00
parent 127ea74a8b
commit 785ebcfaaf
3 changed files with 26 additions and 31 deletions

View File

@ -40,5 +40,10 @@
$OUT .= " Require ip $localAccess $externalSSLAccess\n"; $OUT .= " Require ip $localAccess $externalSSLAccess\n";
} }
$OUT .= " </Location>\n"; $OUT .= " </Location>\n";
# prevent caching of manager files in browser
$OUT .= " <LocationMatch \"/$place/.+\.(html|cgi)\$\">\n";
$OUT .= " Header set Cache-Control no-store\n";
$OUT .= " </LocationMatch>\n";
} }
} }

View File

@ -395,19 +395,16 @@ sub get_current_webmail_status {
# determine status of webmail # determine status of webmail
my $WebmailStatus = "disabled"; my $WebmailStatus = "disabled";
my $IMPStatus = $cdb->get_prop('imp', 'status') || 'disabled'; my $RoundcubeStatus = $cdb->get_prop('roundcube', 'status') || 'disabled';
my $HordeStatus = $cdb->get_prop('horde', 'status') || 'disabled';
my $MysqlStatus = $cdb->get_prop('mariadb', 'status') || 'disabled'; my $MysqlStatus = $cdb->get_prop('mariadb', 'status') || 'disabled';
my $PHPStatus = $cdb->get_prop('php', 'status') || 'disabled'; my $PHPStatus = $cdb->get_prop('php81', 'status') || 'disabled';
my $Networkaccess = $cdb->get_prop('horde','access') || 'disabled'; my $Networkaccess = $cdb->get_prop('roundcube','access') || 'disabled';
# all four components must be on for webmail to be working # all 3 components must be on for webmail to be working
if ( ( $IMPStatus eq "enabled" ) if ( ( $RoundcubeStatus eq "enabled" )
&& ( $HordeStatus eq "enabled" )
&& ( $MysqlStatus eq "enabled" ) && ( $MysqlStatus eq "enabled" )
&& ( $PHPStatus eq "enabled" ) && ( $PHPStatus eq "enabled" )
&& ( $Networkaccess eq "public")) && ( $Networkaccess eq "public"))
@ -415,8 +412,7 @@ sub get_current_webmail_status {
$WebmailStatus = "enabledSSL"; $WebmailStatus = "enabledSSL";
} }
elsif ( ( $IMPStatus eq "enabled" ) elsif ( ( $RoundcubeStatus eq "enabled" )
&& ( $HordeStatus eq "enabled" )
&& ( $MysqlStatus eq "enabled" ) && ( $MysqlStatus eq "enabled" )
&& ( $PHPStatus eq "enabled" ) && ( $PHPStatus eq "enabled" )
&& ( $Networkaccess eq "private" )) && ( $Networkaccess eq "private" ))
@ -803,37 +799,27 @@ sub change_settings_access {
my $webmail = ($c->param('WebMail') || 'disabled'); my $webmail = ($c->param('WebMail') || 'disabled');
if ( $webmail eq "enabled" ) { if ( $webmail eq "enabled" ) {
$cdb->set_prop('php', "status", $webmail ); $cdb->set_prop('php81', "status", $webmail );
$cdb->set_prop('mariadb',"status", $webmail ); $cdb->set_prop('mariadb',"status", $webmail );
$cdb->set_prop('imp',"status", $webmail ); $cdb->set_prop('roundcube',"status", $webmail );
$cdb->set_prop('horde', "status", $webmail ); $cdb->set_prop('roundcube',"access", "public" );
$cdb->set_prop('imp',"access", "full" );
$cdb->set_prop('horde',"access", "public" );
$cdb->set_prop('horde',"HttpsOnly", "no" );
} }
elsif ( $webmail eq "enabledSSL" ) { elsif ( $webmail eq "enabledSSL" ) {
$cdb->set_prop('php',"status", "enabled" ); $cdb->set_prop('php81',"status", "enabled" );
$cdb->set_prop('mariadb',"status", "enabled" ); $cdb->set_prop('mariadb',"status", "enabled" );
$cdb->set_prop('imp',"status", 'enabled' ); $cdb->set_prop('roundcube',"status", 'enabled' );
$cdb->set_prop('horde',"status", 'enabled' ); $cdb->set_prop('roundcube',"access", "public" );
$cdb->set_prop('imp',"access", "SSL" );
$cdb->set_prop('horde',"access", "public" );
$cdb->set_prop('horde',"HttpsOnly", "yes" );
} }
elsif ( $webmail eq "localnetworkSSL" ) { elsif ( $webmail eq "localnetworkSSL" ) {
$cdb->set_prop('php',"status", "enabled" ); $cdb->set_prop('php81',"status", "enabled" );
$cdb->set_prop('mariadb',"status", "enabled" ); $cdb->set_prop('mariadb',"status", "enabled" );
$cdb->set_prop('imp',"status", 'enabled' ); $cdb->set_prop('roundcube',"status", 'enabled' );
$cdb->set_prop('horde',"status", 'enabled' ); $cdb->set_prop('roundcube',"access", "private" );
$cdb->set_prop('imp',"access", "SSL" );
$cdb->set_prop('horde',"access", "private" );
$cdb->set_prop('horde',"HttpsOnly", "yes" );
} }
else { else {
$cdb->set_prop('imp',"status", 'disabled' ); $cdb->set_prop('roundcube',"status", 'disabled' );
$cdb->set_prop('horde',"status", 'disabled' );
} }
unless ( system( "/sbin/e-smith/signal-event", "email-update" ) == 0 ) { unless ( system( "/sbin/e-smith/signal-event", "email-update" ) == 0 ) {

View File

@ -2,7 +2,7 @@ Summary: Sme server navigation module : manager 2
%define name smeserver-manager %define name smeserver-manager
Name: %{name} Name: %{name}
%define version 11.0.0 %define version 11.0.0
%define release 19 %define release 20
Version: %{version} Version: %{version}
Release: %{release}%{?dist} Release: %{release}%{?dist}
License: GPL License: GPL
@ -108,6 +108,10 @@ true
%defattr(-,root,root) %defattr(-,root,root)
%changelog %changelog
* Mon Sep 23 2024 Jean-Philippe Pialasse <jpp@koozali.org> 11.0.0-20.sme
- webmail switch panel to use roundcube [SME: 12742]
- prevent browser from caching [SME: 12695]
* Thu Sep 05 2024 Brian Read <brianr@koozali.org> 11.0.0-19.sme * Thu Sep 05 2024 Brian Read <brianr@koozali.org> 11.0.0-19.sme
- Add in mojo plugin WithoutCache [SME: 12695] - Add in mojo plugin WithoutCache [SME: 12695]