Compare commits
	
		
			4 Commits
		
	
	
		
			11_0_0-95_
			...
			11_0_0-99_
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| 21255abf46 | |||
| 8ada3f36e0 | |||
| ab42f986e8 | |||
| 803bfd1cec | 
@@ -39,6 +39,7 @@ sub main {
 | 
			
		||||
sub do_update {
 | 
			
		||||
    my $c = shift;
 | 
			
		||||
    $c->app->log->info($c->log_req);
 | 
			
		||||
    $db = esmith::ConfigDB::UTF8->open() || die "Couldn't open config db";
 | 
			
		||||
    my $access      = $c->param('access');
 | 
			
		||||
    my $department  = $c->param('department');
 | 
			
		||||
    my $company     = $c->param('company');
 | 
			
		||||
@@ -84,7 +85,7 @@ sub get_ldap_base {
 | 
			
		||||
sub get_value {
 | 
			
		||||
    my $fm = shift;
 | 
			
		||||
    my $item = shift;
 | 
			
		||||
 | 
			
		||||
    $db = esmith::ConfigDB::UTF8->open() || die "Couldn't open config db";
 | 
			
		||||
    my $record = $db->get($item);
 | 
			
		||||
    if ($record) {
 | 
			
		||||
        return $record->value();
 | 
			
		||||
@@ -93,4 +94,4 @@ sub get_value {
 | 
			
		||||
        return '';
 | 
			
		||||
    }
 | 
			
		||||
}
 | 
			
		||||
1;
 | 
			
		||||
1;
 | 
			
		||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							@@ -1,6 +1,5 @@
 | 
			
		||||
 | 
			
		||||
'mai_FORM_TITLE' => 'E-mail settings',
 | 
			
		||||
'E-mail' => 'E-mail',
 | 
			
		||||
'mai_E-Mail' => 'E-mail',
 | 
			
		||||
'mai_SUCCESS' => 'The new e-mail settings have been saved.',
 | 
			
		||||
'mai_NEVER' => 'not at all',
 | 
			
		||||
'mai_EVERY5MIN' => 'Every 5 minutes',
 | 
			
		||||
@@ -20,7 +19,7 @@ for dialup connections), or multi-drop (for dialup connections if
 | 
			
		||||
ETRN is not supported by your Internet provider). Note that
 | 
			
		||||
multi-drop mode is the only option available when the server is
 | 
			
		||||
configured in private server and gateway mode.',
 | 
			
		||||
'mai_LABEL_DELEGATE' => 'Address of internal mail server',
 | 
			
		||||
'mai_LABEL_DELEGATE' => 'IP Address of internal mail server',
 | 
			
		||||
'mai_TITLE_DELEGATE' => 'Delegate mail servers',
 | 
			
		||||
'mai_DESC_DELEGATE' => 'Your server includes a complete, full-featured e-mail server. However,
 | 
			
		||||
if for some reason you wish to delegate e-mail processing to
 | 
			
		||||
@@ -79,10 +78,9 @@ destination (recommended in most cases) or can deliver them via
 | 
			
		||||
your Internet provider\'s SMTP server (recommended if you have an
 | 
			
		||||
unreliable Internet connection or are using a residential Internet
 | 
			
		||||
service). If using your Internet provider\'s SMTP server, specify
 | 
			
		||||
its hostname or IP address below. Otherwise leave this field
 | 
			
		||||
blank.',
 | 
			
		||||
'mai_INVALID_SMARTHOST' => 'The smarthost name you entered is not a valid internet domain name
 | 
			
		||||
and is not blank',
 | 
			
		||||
its hostname or IP address below. Otherwise leave this field blank.',
 | 
			
		||||
'mai_INVALID_SMARTHOST' => 'The smarthost name you entered is not a valid internet domain name and is not blank',
 | 
			
		||||
'mai_INVALID_DELEGATE' => 'The delegate host name you entered is not a valid IP Address and is not blank',
 | 
			
		||||
'mai_DESC_POP_ACCESS_CONTROL' => 'You can control POP3 server access. The setting \'Allow access
 | 
			
		||||
only from local networks\' allows POP3 access only from your
 | 
			
		||||
local network(s). The POP3S setting can be used to provide
 | 
			
		||||
@@ -150,5 +148,9 @@ The value for this tag can be defined below.',
 | 
			
		||||
'mai_LABEL_SMARTHOST_SMTPAUTH_STATUS' => 'SMTP Authentication for Internet provider',
 | 
			
		||||
'mai_LABEL_SMARTHOST_SMTPAUTH_USERID' => 'Mail server user id',
 | 
			
		||||
'mai_LABEL_SMARTHOST_SMTPAUTH_PASSWD' => 'Mail server password',
 | 
			
		||||
'mai_VALIDATION_SMTPAUTH_NONBLANK' => 'This field cannot be left blank if SMTP Authentication is
 | 
			
		||||
'mai_VALIDATION_SMTPAUTH_NONBLANK' => 'The user id and password fields cannot be left blank if SMTP Authentication is
 | 
			
		||||
enabled.',
 | 
			
		||||
'mai_ACC_panel_action_was_successful' => 'Email access settings saved sucessfully',
 | 
			
		||||
'mai_DEL_panel_action_was_successful' => 'Email delivery settings saved sucessfully',
 | 
			
		||||
'mai_FIL_panel_action_was_successful' => 'Email filtering settings saved sucessfully',
 | 
			
		||||
'mai_REC_panel_action_was_successful' => 'Email receive settings saved sucessfully',
 | 
			
		||||
@@ -0,0 +1,14 @@
 | 
			
		||||
/*
 | 
			
		||||
Generated by: SM2Gen version:0.9(20Jan2025) Chameleon version:4.5.4 On Python:3.12.3 at 2025-06-29 08:53:20
 | 
			
		||||
*/
 | 
			
		||||
.Emailsettings-panel {}
 | 
			
		||||
.name {}
 | 
			
		||||
.rout {}
 | 
			
		||||
.name {}
 | 
			
		||||
.rout {}
 | 
			
		||||
.name {}
 | 
			
		||||
.rout {}
 | 
			
		||||
.name {}
 | 
			
		||||
.rout {}
 | 
			
		||||
.name {}
 | 
			
		||||
.rout {}
 | 
			
		||||
@@ -0,0 +1,5 @@
 | 
			
		||||
//
 | 
			
		||||
//Generated by: SM2Gen version:0.9(20Jan2025) Chameleon version:4.5.4 On Python:3.12.3 at 2025-06-29 08:53:20
 | 
			
		||||
//
 | 
			
		||||
$(document).ready(function() {
 | 
			
		||||
});
 | 
			
		||||
@@ -1,57 +0,0 @@
 | 
			
		||||
% layout 'default', title => "Sme server 2 - emailaccess";
 | 
			
		||||
 | 
			
		||||
% content_for 'module' => begin
 | 
			
		||||
<div id='module' class='module emailaccess-panel'>
 | 
			
		||||
 | 
			
		||||
    % if (config->{debug} == 1) {
 | 
			
		||||
	<p>
 | 
			
		||||
	%= dumper $c->current_route
 | 
			
		||||
	%= dumper $mai_datas
 | 
			
		||||
	</p>
 | 
			
		||||
    % }
 | 
			
		||||
    
 | 
			
		||||
    % if ( stash 'error' ) {
 | 
			
		||||
    	<br><div class=sme-error>
 | 
			
		||||
    	%= $c->render_to_string(inline => stash 'error') 
 | 
			
		||||
	</div>
 | 
			
		||||
    %}
 | 
			
		||||
 | 
			
		||||
    <h1><%= $title%></h1>
 | 
			
		||||
 | 
			
		||||
    %= form_for '/emailsettingd' => (method => 'POST') => begin
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_POP_ACCESS_CONTROL'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_POP_ACCESS_CONTROL'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'POPAccess' => $c->get_current_pop3_access() unless param 'POPAccess';
 | 
			
		||||
	%= select_field 'POPAccess' => $c->get_pop_opt(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_IMAP_ACCESS_CONTROL'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_IMAP_ACCESS_CONTROL'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'IMAPAccess' => $c->get_current_imap_access() unless param 'IMAPAccess';
 | 
			
		||||
	%= select_field 'IMAPAccess' => $c->get_imap_opt(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_WEBMAIL'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_WEBMAIL'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'WebMail' => $c->get_current_webmail_status() unless param 'WebMail';
 | 
			
		||||
	%= select_field 'WebMail' => $c->get_webmail_opt(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
    % 	my $btn = l('SAVE');
 | 
			
		||||
	%= submit_button "$btn", class => 'action'
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'trt' => 'ACC'
 | 
			
		||||
    % end    
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
%end
 | 
			
		||||
@@ -1,92 +0,0 @@
 | 
			
		||||
% layout 'default', title => "Sme server 2 - emaildeliver";
 | 
			
		||||
 | 
			
		||||
% content_for 'module' => begin
 | 
			
		||||
<div id='module' class='module emaildeliver-panel'>
 | 
			
		||||
 | 
			
		||||
    % if (config->{debug} == 1) {
 | 
			
		||||
	<p>
 | 
			
		||||
	%= dumper $c->current_route
 | 
			
		||||
	%= dumper $mai_datas
 | 
			
		||||
	</p>
 | 
			
		||||
    % }
 | 
			
		||||
    
 | 
			
		||||
    % if ( stash 'error' ) {
 | 
			
		||||
    	<br><div class=sme-error>
 | 
			
		||||
    	%= $c->render_to_string(inline => stash 'error') 
 | 
			
		||||
	</div>
 | 
			
		||||
    %}
 | 
			
		||||
 | 
			
		||||
    <h1><%= $title%></h1>
 | 
			
		||||
 | 
			
		||||
    %= form_for '/emailsettingd' => (method => 'POST') => begin
 | 
			
		||||
 | 
			
		||||
	<h2>
 | 
			
		||||
	%=l 'mai_TITLE_UNKNOWN'
 | 
			
		||||
	</h2>
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_UNKNOWN'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_UNKNOWN'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'EmailUnknownUser' => $mai_datas->{emailunknownuser} unless param 'EmailUnknownUser';
 | 
			
		||||
	%= select_field 'EmailUnknownUser' => $c->get_emailunknownuser_opt(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<!--<hr class='menubar' />-->
 | 
			
		||||
	<h2>
 | 
			
		||||
	%=l 'mai_TITLE_DELEGATE'
 | 
			
		||||
	</h2>
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_DELEGATE'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_DELEGATE'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'DelegateMailServer' => $mai_datas->{delegatemailserver} unless param 'DelegateMailServer';
 | 
			
		||||
	%= text_field 'DelegateMailServer', class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<!--<hr class='sectionbar' />-->
 | 
			
		||||
	<h2>
 | 
			
		||||
	%=l 'mai_TITLE_SMARTHOST'
 | 
			
		||||
	</h2>
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_SMARTHOST'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SMARTHOST'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SMTPSmartHost' => $mai_datas->{smtpsmarthost} unless param 'SMTPSmartHost';
 | 
			
		||||
	%= text_field 'SMTPSmartHost', class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SMARTHOST_SMTPAUTH_STATUS'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SMTPAUTHPROXY_status' => $mai_datas->{smtpauthproxystatus} unless param 'SMTPAUTHPROXY_status';
 | 
			
		||||
	%= select_field 'SMTPAUTHPROXY_status' => [[(l 'DISABLED') => 'disabled'], [(l 'ENABLED') => 'enabled']], class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SMARTHOST_SMTPAUTH_USERID'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SMTPAUTHPROXY_Userid' => $mai_datas->{smtpauthproxyuserid} unless param 'SMTPAUTHPROXY_Userid';
 | 
			
		||||
	%= text_field 'SMTPAUTHPROXY_Userid', class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SMARTHOST_SMTPAUTH_PASSWD'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SMTPAUTHPROXY_Passwd' => $mai_datas->{smtpauthproxypassword} unless param 'SMTPAUTHPROXY_Passwd';
 | 
			
		||||
	%= password_field 'SMTPAUTHPROXY_Passwd', class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
    % 	my $btn = l('SAVE');
 | 
			
		||||
	%= submit_button "$btn", class => 'action'
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'trt' => 'DEL'
 | 
			
		||||
    % end    
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
%end
 | 
			
		||||
@@ -1,101 +0,0 @@
 | 
			
		||||
% layout 'default', title => "Sme server 2 - emailfilter";
 | 
			
		||||
 | 
			
		||||
% content_for 'module' => begin
 | 
			
		||||
<div id='module' class='module emailfilter-panel'>
 | 
			
		||||
 | 
			
		||||
    % if (config->{debug} == 1) {
 | 
			
		||||
	<p>
 | 
			
		||||
	%= dumper $c->current_route
 | 
			
		||||
	%= dumper $mai_datas
 | 
			
		||||
	</p>
 | 
			
		||||
    % }
 | 
			
		||||
 | 
			
		||||
    % if ( stash 'error' ) {
 | 
			
		||||
    	<br><div class=sme-error>
 | 
			
		||||
    	%= $c->render_to_string(inline => stash 'error') 
 | 
			
		||||
	</div>
 | 
			
		||||
    %}
 | 
			
		||||
 | 
			
		||||
    <h1><%= $title%></h1>
 | 
			
		||||
 | 
			
		||||
    %= form_for '/emailsettingd' => (method => 'POST') => begin
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_VIRUS_SCAN'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_VIRUS_SCAN'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'VirusStatus' => $mai_datas->{virusstatus} unless param 'VirusStatus';
 | 
			
		||||
	%= select_field 'VirusStatus' => [[(l 'DISABLED') => 'disabled'], [ (l 'ENABLED') => 'enabled']], class => 'input'
 | 
			
		||||
	</span><br></p>
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_SPAM_SCAN'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SPAM_SCAN'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'Spamstatus' => $mai_datas->{spamstatus} unless param 'Spamstatus';
 | 
			
		||||
	%= select_field 'Spamstatus' => [[(l 'DISABLED') => 'disabled'], [ (l 'ENABLED') => 'enabled']], class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SPAM_SENSITIVITY'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SpamSensitivity' => $mai_datas->{spamsensitivity} unless param 'SpamSensitivity';
 | 
			
		||||
	%= select_field 'SpamSensitivity' => $c->get_spam_sensitivity_opt(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SPAM_TAGLEVEL'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SpamTagLevel' => $mai_datas->{spamtaglevel} unless param 'SpamTagLevel';
 | 
			
		||||
	%= select_field 'SpamTagLevel' => $c->get_spam_level_options(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SPAM_REJECTLEVEL'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SpamRejectLevel' => $mai_datas->{spamrejectlevel} unless param 'SpamRejectLevel';
 | 
			
		||||
	%= select_field 'SpamRejectLevel' => $c->get_spam_level_options(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SORTSPAM'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SpamSortSpam' => $mai_datas->{spamsortspam} unless param 'SpamSortSpam';
 | 
			
		||||
	%= select_field 'SpamSortSpam' => [[(l 'DISABLED') => 'disabled'], [ (l 'ENABLED') => 'enabled']], class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_SPAM_SUBJECT'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SPAM_SUBJECTTAG'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SpamSubjectTag' => $mai_datas->{spamsubjecttag} unless param 'SpamSubjectTag';
 | 
			
		||||
	%= select_field 'SpamSubjectTag' => [[(l 'DISABLED') => 'disabled'], [ (l 'ENABLED') => 'enabled']], class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SPAM_SUBJECT'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SpamSubject' => $mai_datas->{spamsubject} unless param 'SpamSubject';
 | 
			
		||||
	%= text_field 'SpamSubject' => class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_BLOCK_EXECUTABLE_CONTENT'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_CONTENT_TO_BLOCK'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'BlockExecutableContent' => $c->get_patterns_current_opt() unless param 'BlockExecutableContent';
 | 
			
		||||
	%= select_field 'BlockExecutableContent' => $c->get_patterns_opt(), class => 'input', multiple => "1"
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
    % 	my $btn = l('SAVE');
 | 
			
		||||
	%= submit_button "$btn", class => 'action'
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'trt' => 'FIL'
 | 
			
		||||
    % end
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
%end
 | 
			
		||||
@@ -1,167 +0,0 @@
 | 
			
		||||
% layout 'default', title => "Sme server 2 - emailreceive";
 | 
			
		||||
 | 
			
		||||
% content_for 'module' => begin
 | 
			
		||||
 | 
			
		||||
% use constant FALSE => 0;
 | 
			
		||||
% use constant TRUE  => 1;
 | 
			
		||||
 | 
			
		||||
<div id='module' class='module emailreceive-panel'>
 | 
			
		||||
 | 
			
		||||
    % if (config->{debug} == 1) {
 | 
			
		||||
	<p>
 | 
			
		||||
	%= dumper $c->current_route
 | 
			
		||||
	%= dumper $mai_datas
 | 
			
		||||
	%= dumper $c->param('SMTPAuth')
 | 
			
		||||
	</p>
 | 
			
		||||
    % }
 | 
			
		||||
 | 
			
		||||
    % if ( stash 'error' ) {
 | 
			
		||||
    	<br><div class=sme-error>
 | 
			
		||||
    	%= $c->render_to_string(inline => stash 'error') 
 | 
			
		||||
	</div>
 | 
			
		||||
    %}
 | 
			
		||||
    
 | 
			
		||||
    <h1><%= $title%></h1>
 | 
			
		||||
 | 
			
		||||
    %= form_for '/emailsettingd' => (method => 'POST') => begin
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_MODE'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_MODE'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'FetchmailMethod' => $mai_datas->{fetchmailmethod} unless param 'FetchmailMethod';
 | 
			
		||||
<!--
 | 
			
		||||
	<pre>
 | 
			
		||||
		%= dumper $mai_datas->{fetchmailmethod}
 | 
			
		||||
		%= dumper $c->get_retrieval_opt()
 | 
			
		||||
		%= param 'FetchmailMethod'
 | 
			
		||||
	</pre>
 | 
			
		||||
-->
 | 
			
		||||
	%= select_field 'FetchmailMethod' => $c->get_retrieval_opt(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	%#=l 'mai_DESC_SMTP_AUTH_CONTROL'
 | 
			
		||||
	<br />
 | 
			
		||||
	%= l "SMTP port (25) main purpose is to receive emails from another server, STARTTLS is always offered, but auth if offered is only if STARTTLS is also used by client."
 | 
			
		||||
	<br />
 | 
			
		||||
	%= l "SMTPS port (465) will require implicit SSL/TLS then authenticate to send."
 | 
			
		||||
	<br />
 | 
			
		||||
	%= l "SMTP Submission port (587) will require STARTTLS, then authenticate to send."
 | 
			
		||||
	<br />
 | 
			
		||||
 | 
			
		||||
	% my $smtp_mesg=l('SMTP port %u allow client to authenticate:');
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
		%= sprintf($smtp_mesg,$c->get_db_prop('qpsmtpd','TCPPort',25)); 
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
    	% param 'SMTPAuth' => $c->get_current_smtp_auth( FALSE ) unless param 'SMTPAuth';
 | 
			
		||||
<!--
 | 
			
		||||
	<pre>
 | 
			
		||||
		%= dumper $c->get_smtp_auth_opt()
 | 
			
		||||
		%= dumper $c->get_current_smtp_auth(FALSE)
 | 
			
		||||
		%= dumper $c->get_db_prop("qpsmtpd","Authentication")
 | 
			
		||||
		%= param 'SMTPAuth'
 | 
			
		||||
	</pre>
 | 
			
		||||
-->
 | 
			
		||||
		%= select_field 'SMTPAuth' => $c->get_smtp_auth_opt(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	% my $smtp_mesg=l('SMTPS SSL/TLS auth: port %u status:');
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
		%= sprintf($smtp_mesg,$c->get_db_prop('sqpsmtpd','TCPPort',465)); 
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
		% param 'sSMTPAuth' => $c->get_current_smtp_ssl_auth(FALSE,'s', TRUE) unless param 'sSMTPAuth';
 | 
			
		||||
	
 | 
			
		||||
		%= select_field 'sSMTPAuth' => $c->get_smtp_ssl_auth_opt(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	%my $smtp_mesg=l('Submission port %u status:');
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
		%= sprintf($smtp_mesg,$c->get_db_prop('uqpsmtpd','TCPPort',587)); 
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
    	% param 'uSMTPAuth' => $c->get_current_smtp_ssl_auth(FALSE,'u', TRUE) unless param 'uSMTPAuth';
 | 
			
		||||
<!--
 | 
			
		||||
	<pre>
 | 
			
		||||
		%= dumper $c->get_smtp_ssl_auth_opt()
 | 
			
		||||
		%= dumper $c->get_current_smtp_ssl_auth(FALSE,'s', TRUE)
 | 
			
		||||
		%= dumper $c->get_current_smtp_ssl_auth(FALSE,'u', TRUE)
 | 
			
		||||
		%= dumper $c->get_db_prop("uqpsmtpd","access")
 | 
			
		||||
		%= param 'uSMTPAuth'
 | 
			
		||||
	</pre>
 | 
			
		||||
-->
 | 
			
		||||
	%= select_field 'uSMTPAuth' => $c->get_smtp_ssl_auth_opt(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<!--<hr class="sectionbar" />-->
 | 
			
		||||
	<h2>
 | 
			
		||||
	%=l 'mai_TITLE_SECONDARY'
 | 
			
		||||
	</h2>
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_SECONDARY'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SECONDARY'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SecondaryMailServer' => $mai_datas->{secondarymailserver} unless param 'SecondaryMailServer';
 | 
			
		||||
	%= text_field 'SecondaryMailServer', class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	%=l 'mai_DESC_FETCH_PERIOD'
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_FETCH_PERIOD'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'FreqOffice' => $mai_datas->{freqoffice} unless param 'FreqOffice';
 | 
			
		||||
	%= select_field 'FreqOffice' => $c->fetchmail_freq(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_FETCH_PERIOD_NIGHTS'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'FreqOutside' => $mai_datas->{freqoutside} unless param 'FreqOutside';
 | 
			
		||||
	%= select_field 'FreqOutside' => $c->fetchmail_freq(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_FETCH_PERIOD_WEEKENDS'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'FreqWeekend' => $mai_datas->{freqweekend} unless param 'FreqWeekend';
 | 
			
		||||
	%= select_field 'FreqWeekend' => $c->fetchmail_freq(), class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_POP_ACCOUNT'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SecondaryMailAccount' => $mai_datas->{secondarymailaccount} unless param 'SecondaryMailAccount';
 | 
			
		||||
	%= text_field 'SecondaryMailAccount', class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_POP_PASS'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SecondaryMailPassword' => $mai_datas->{secondarymailpassword} unless param 'SecondaryMailPassword';
 | 
			
		||||
	%= password_field 'SecondaryMailPassword', class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SORT_METHOD'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SpecifyHeader' => $mai_datas->{specifyheader} unless param 'SpecifyHeader';
 | 
			
		||||
	%= select_field 'SpecifyHeader' => [[(l 'mai_DEFAULT') => 'off'], [(l 'mai_SPECIFY_BELOW') => 'on']], class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SORT_HEADER'
 | 
			
		||||
	</span><span class=input>
 | 
			
		||||
	% param 'SecondaryMailEnvelope' => $mai_datas->{secondarymailenvelope} unless param 'SecondaryMailEnvelope';
 | 
			
		||||
	%= text_field 'SecondaryMailEnvelope', class => 'input'
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
    % 	my $btn = l('SAVE');
 | 
			
		||||
	%= submit_button "$btn", class => 'action'
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'trt' => 'REC'
 | 
			
		||||
    % end    
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
%end
 | 
			
		||||
@@ -1,155 +1,72 @@
 | 
			
		||||
% layout 'default', title => "Sme server 2 - emailsettings";
 | 
			
		||||
 | 
			
		||||
%#
 | 
			
		||||
%# Generated by SM2Gen version:0.9(20Jan2025) Chameleon version:4.5.4 On Python:3.12.3 at 2025-06-29 08:53:20 
 | 
			
		||||
%#
 | 
			
		||||
% layout 'default', title => "Sme server 2 - E-Mail", share_dir => './';
 | 
			
		||||
%# css specific to this panel:
 | 
			
		||||
% content_for 'module' => begin
 | 
			
		||||
%= stylesheet '/css/emailsettings.css'
 | 
			
		||||
%= javascript '/js/emailsettings.js'
 | 
			
		||||
 | 
			
		||||
% use constant FALSE => 0;
 | 
			
		||||
% use constant TRUE  => 1;
 | 
			
		||||
 | 
			
		||||
<div id='module' class='module emailsettings-panel'>
 | 
			
		||||
<div id="module" class="module Emailsettings-panel">
 | 
			
		||||
 | 
			
		||||
    % if (config->{debug} == TRUE) {
 | 
			
		||||
	<p>
 | 
			
		||||
	%= dumper $c->current_route
 | 
			
		||||
	%= dumper $mai_datas
 | 
			
		||||
	</p>
 | 
			
		||||
    % if (config->{debug} == 1) {
 | 
			
		||||
	<pre>
 | 
			
		||||
		%= dumper $c->current_route
 | 
			
		||||
		%= dumper $mai_data->{trt}
 | 
			
		||||
	</pre>
 | 
			
		||||
    % }
 | 
			
		||||
    
 | 
			
		||||
    <h1><%=$title%></h1>
 | 
			
		||||
 | 
			
		||||
    % if ( stash('modul')) {
 | 
			
		||||
	%= $c->render_to_string(inline => stash('modul') );
 | 
			
		||||
    % }
 | 
			
		||||
 | 
			
		||||
    % if ( stash 'error' ) {
 | 
			
		||||
    	<br><div class=sme-error>
 | 
			
		||||
    	%= $c->render_to_string(inline => stash 'error') 
 | 
			
		||||
	</div>
 | 
			
		||||
    %}
 | 
			
		||||
   	%if ($c->stash('first')) {
 | 
			
		||||
	    <br><p>
 | 
			
		||||
		%=$c->render_to_string(inline =>$c->l($c->stash('first')))
 | 
			
		||||
		</p>
 | 
			
		||||
 | 
			
		||||
    <h1><%= $title%></h1>
 | 
			
		||||
	%} elsif ($c->stash('success')) {
 | 
			
		||||
		<div class='success '>
 | 
			
		||||
				%= $c->l($c->stash('success'));
 | 
			
		||||
		</div>
 | 
			
		||||
		<br />
 | 
			
		||||
 | 
			
		||||
    %= form_for 'emailsettings' => (method => 'POST') => begin
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_POP_ACCESS_CONTROL'
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $c->get_current_pop3_access( TRUE )
 | 
			
		||||
	</span></p>
 | 
			
		||||
	%} elsif ($c->stash('error')) { 
 | 
			
		||||
	   <div class='sme-error'>
 | 
			
		||||
				%= $c->l($c->stash('error'));
 | 
			
		||||
    	</div>
 | 
			
		||||
		<br />
 | 
			
		||||
	%}
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_IMAP_ACCESS_CONTROL'
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $c->get_current_imap_access( TRUE )
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_WEBMAIL'
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $c->get_current_webmail_status( TRUE )
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
    % 	my $btn = l('mai_DESC_STATE_ACCESS_BUTTON');
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button "$btn", class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'trt' => 'ACC'
 | 
			
		||||
    % end   
 | 
			
		||||
    <br> 
 | 
			
		||||
 | 
			
		||||
    <!--<hr class="sectionbar" />-->
 | 
			
		||||
    
 | 
			
		||||
    %= form_for 'emailsettings' => (method => 'POST') => begin
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_VIRUS_SCAN'
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $c->get_virus_status(TRUE)
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SPAM_SCAN'
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $c->get_spam_status(TRUE)
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_BLOCK_EXECUTABLE_CONTENT'
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $c->get_patterns_status(TRUE)
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
    % 	my $btn = l('mai_DESC_STATE_FILTERING_BUTTON');
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button "$btn", class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'trt' => 'FIL'
 | 
			
		||||
    % end  
 | 
			
		||||
    <br>  
 | 
			
		||||
 | 
			
		||||
    <!--<hr class="sectionbar" />-->
 | 
			
		||||
 | 
			
		||||
    %= form_for 'emailsettings' => (method => 'POST') => begin
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_MODE'
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $mai_datas->{fetchmailmethod}
 | 
			
		||||
	</span></p>
 | 
			
		||||
	%#Routing to partials according to trt parameter.
 | 
			
		||||
	%#This ought to be cascading if/then/elsif, but is easier to just stack the if/then's rather like a case statement'
 | 
			
		||||
	
 | 
			
		||||
	% if ($mai_data->{trt} eq "FRONT") {
 | 
			
		||||
		%= include 'partials/_mai_FRONT'
 | 
			
		||||
	%}
 | 
			
		||||
	
 | 
			
		||||
	% if ($mai_data->{trt} eq "ACC") {
 | 
			
		||||
		%= include 'partials/_mai_ACC'
 | 
			
		||||
	%}
 | 
			
		||||
	
 | 
			
		||||
	% if ($mai_data->{trt} eq "FIL") {
 | 
			
		||||
		%= include 'partials/_mai_FIL'
 | 
			
		||||
	%}
 | 
			
		||||
	
 | 
			
		||||
	% if ($mai_data->{trt} eq "REC") {
 | 
			
		||||
		%= include 'partials/_mai_REC'
 | 
			
		||||
	%}
 | 
			
		||||
	
 | 
			
		||||
	% if ($mai_data->{trt} eq "DEL") {
 | 
			
		||||
		%= include 'partials/_mai_DEL'
 | 
			
		||||
	%}
 | 
			
		||||
	
 | 
			
		||||
	% my $smtp_mesg;
 | 
			
		||||
 | 
			
		||||
	% $smtp_mesg=l('SMTP port %u allow client to authenticate:');
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
		%= sprintf($smtp_mesg,$c->get_db_prop('qpsmtpd','TCPPort',25)); 
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $c->get_current_smtp_auth( TRUE )
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	% $smtp_mesg=l('SMTPS SSL/TLS auth: port %u status:');
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
		%= sprintf($smtp_mesg,$c->get_db_prop('sqpsmtpd','TCPPort',465)); 
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $c->get_current_smtp_ssl_auth( TRUE, 's', FALSE )
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	% $smtp_mesg=l 'Submission port %u status:';
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
		%= sprintf($smtp_mesg,$c->get_db_prop('uqpsmtpd','TCPPort',587)); 
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $c->get_current_smtp_ssl_auth( TRUE,'u', FALSE )
 | 
			
		||||
	</span></p>
 | 
			
		||||
	<br />
 | 
			
		||||
 | 
			
		||||
    % my $btn = l('mai_DESC_STATE_RECEPTION_BUTTON');
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button "$btn", class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'trt' => 'REC'
 | 
			
		||||
    % end    
 | 
			
		||||
    <br>
 | 
			
		||||
 | 
			
		||||
    <!--<hr class="sectionbar" />-->
 | 
			
		||||
 | 
			
		||||
    %= form_for 'emailsettings' => (method => 'POST') => begin
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_UNKNOWN'
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $c->get_emailunknownuser_status( TRUE )
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_DELEGATE'
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $c->get_value('DelegateMailServer')
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
	<p><span class=label>
 | 
			
		||||
	%=l 'mai_LABEL_SMARTHOST'
 | 
			
		||||
	</span><span class=data2>
 | 
			
		||||
	%= $c->get_value('SMTPSmartHost')
 | 
			
		||||
	</span></p>
 | 
			
		||||
 | 
			
		||||
    % 	my $btn = l('mai_DESC_STATE_DELIVERY_BUTTON');
 | 
			
		||||
    <div class='center'>
 | 
			
		||||
	%= submit_button "$btn", class => 'action'
 | 
			
		||||
    </div>
 | 
			
		||||
 | 
			
		||||
	%= hidden_field 'trt' => 'DEL'
 | 
			
		||||
    % end    
 | 
			
		||||
 | 
			
		||||
</div>
 | 
			
		||||
%end
 | 
			
		||||
@@ -0,0 +1,54 @@
 | 
			
		||||
%#
 | 
			
		||||
%# Generated by SM2Gen version:0.9(20Jan2025) Chameleon version:4.5.4 On Python:3.12.3 at 2025-06-29 08:53:20 
 | 
			
		||||
%#
 | 
			
		||||
<div id="Emailsettings-ACC" class="partial Emailsettings-ACC">
 | 
			
		||||
%#	<script>
 | 
			
		||||
%#		window.onload = function() {
 | 
			
		||||
%#		SelectInput();
 | 
			
		||||
%#	};
 | 
			
		||||
%#	</script>
 | 
			
		||||
	% if (config->{debug} == 1) {
 | 
			
		||||
		<pre>
 | 
			
		||||
			%= dumper $mai_data
 | 
			
		||||
		</pre>
 | 
			
		||||
	% }
 | 
			
		||||
	% my $btn = l('SAVE');
 | 
			
		||||
	% $c->param(Selected => undef); #This may need deleting for a params panel - only needed for a table
 | 
			
		||||
 | 
			
		||||
	<h2><%= $c->l('mai_DESC_STATE_ACCESS_BUTTON') %></h2><br>
 | 
			
		||||
	%= form_for "emailsettingsu" => (method => 'POST') => begin
 | 
			
		||||
		% param 'trt' => $mai_data->{trt} unless param 'trt';
 | 
			
		||||
		%= hidden_field 'trt' => $mai_data->{trt}
 | 
			
		||||
		%# Inputs etc in here.
 | 
			
		||||
		%=l 'mai_DESC_POP_ACCESS_CONTROL'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_POP_ACCESS_CONTROL'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'POPAccess' => $c->get_current_pop3_access() unless param 'POPAccess';
 | 
			
		||||
		%= select_field 'POPAccess' => $c->get_pop_opt(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		%=l 'mai_DESC_IMAP_ACCESS_CONTROL'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_IMAP_ACCESS_CONTROL'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'IMAPAccess' => $c->get_current_imap_access() unless param 'IMAPAccess';
 | 
			
		||||
		%= select_field 'IMAPAccess' => $c->get_imap_opt(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		%=l 'mai_DESC_WEBMAIL'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_WEBMAIL'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'WebMail' => $c->get_current_webmail_status() unless param 'WebMail';
 | 
			
		||||
		%= select_field 'WebMail' => $c->get_webmail_opt(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		%# ....
 | 
			
		||||
		%# Probably finally by a submit.
 | 
			
		||||
		%= submit_button $btn, class => 'action'
 | 
			
		||||
	%end    
 | 
			
		||||
</div>
 | 
			
		||||
@@ -0,0 +1,90 @@
 | 
			
		||||
%#
 | 
			
		||||
%# Generated by SM2Gen version:0.9(20Jan2025) Chameleon version:4.5.4 On Python:3.12.3 at 2025-06-29 08:53:20 
 | 
			
		||||
%#
 | 
			
		||||
<div id="Emailsettings-DEL" class="partial Emailsettings-DEL">
 | 
			
		||||
%#	<script>
 | 
			
		||||
%#		window.onload = function() {
 | 
			
		||||
%#		SelectInput();
 | 
			
		||||
%#	};
 | 
			
		||||
%#	</script>
 | 
			
		||||
	% if (config->{debug} == 1) {
 | 
			
		||||
		<pre>
 | 
			
		||||
			%= dumper $mai_data
 | 
			
		||||
		</pre>
 | 
			
		||||
	% }
 | 
			
		||||
	% my $btn = l('SAVE');
 | 
			
		||||
	% $c->param(Selected => undef); #This may need deleting for a params panel - only needed for a table
 | 
			
		||||
 | 
			
		||||
	<h2><%= $c->l('mai_DESC_STATE_DELIVERY_BUTTON') %></h2>
 | 
			
		||||
	%= form_for "emailsettingsu" => (method => 'POST') => begin
 | 
			
		||||
		% param 'trt' => $mai_data->{trt} unless param 'trt';
 | 
			
		||||
		%= hidden_field 'trt' => $mai_data->{trt}
 | 
			
		||||
		%# Inputs etc in here.
 | 
			
		||||
		<h2>
 | 
			
		||||
		%=l 'mai_TITLE_UNKNOWN'
 | 
			
		||||
		</h2>
 | 
			
		||||
 | 
			
		||||
		%=l 'mai_DESC_UNKNOWN'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_UNKNOWN'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'EmailUnknownUser' => $mai_data->{emailunknownuser} unless param 'EmailUnknownUser';
 | 
			
		||||
		%= select_field 'EmailUnknownUser' => $c->get_emailunknownuser_opt(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<!--<hr class='menubar' />-->
 | 
			
		||||
		<h2>
 | 
			
		||||
		%=l 'mai_TITLE_DELEGATE'
 | 
			
		||||
		</h2>
 | 
			
		||||
 | 
			
		||||
		%=l 'mai_DESC_DELEGATE'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_DELEGATE'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'DelegateMailServer' => $mai_data->{delegatemailserver} unless param 'DelegateMailServer';
 | 
			
		||||
		%= text_field 'DelegateMailServer', class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<!--<hr class='sectionbar' />-->
 | 
			
		||||
		<h2>
 | 
			
		||||
		%=l 'mai_TITLE_SMARTHOST'
 | 
			
		||||
		</h2>
 | 
			
		||||
 | 
			
		||||
		%=l 'mai_DESC_SMARTHOST'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SMARTHOST'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SMTPSmartHost' => $mai_data->{smtpsmarthost} unless param 'SMTPSmartHost';
 | 
			
		||||
		%= text_field 'SMTPSmartHost', class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SMARTHOST_SMTPAUTH_STATUS'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SMTPAUTHPROXY_status' => $mai_data->{smtpauthproxystatus} unless param 'SMTPAUTHPROXY_status';
 | 
			
		||||
		%= select_field 'SMTPAUTHPROXY_status' => [[(l 'DISABLED') => 'disabled'], [(l 'ENABLED') => 'enabled']], class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SMARTHOST_SMTPAUTH_USERID'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SMTPAUTHPROXY_Userid' => $mai_data->{smtpauthproxyuserid} unless param 'SMTPAUTHPROXY_Userid';
 | 
			
		||||
		%= text_field 'SMTPAUTHPROXY_Userid', class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SMARTHOST_SMTPAUTH_PASSWD'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SMTPAUTHPROXY_Passwd' => $mai_data->{smtpauthproxypassword} unless param 'SMTPAUTHPROXY_Passwd';
 | 
			
		||||
		%= password_field 'SMTPAUTHPROXY_Passwd', class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		%# ....
 | 
			
		||||
		%# Probably finally by a submit.
 | 
			
		||||
		%= submit_button $btn, class => 'action'
 | 
			
		||||
	%end    
 | 
			
		||||
</div>
 | 
			
		||||
@@ -0,0 +1,98 @@
 | 
			
		||||
%#
 | 
			
		||||
%# Generated by SM2Gen version:0.9(20Jan2025) Chameleon version:4.5.4 On Python:3.12.3 at 2025-06-29 08:53:20 
 | 
			
		||||
%#
 | 
			
		||||
<div id="Emailsettings-FIL" class="partial Emailsettings-FIL">
 | 
			
		||||
%#	<script>
 | 
			
		||||
%#		window.onload = function() {
 | 
			
		||||
%#		SelectInput();
 | 
			
		||||
%#	};
 | 
			
		||||
%#	</script>
 | 
			
		||||
	% if (config->{debug} == 1) {
 | 
			
		||||
		<pre>
 | 
			
		||||
			%= dumper $mai_data
 | 
			
		||||
		</pre>
 | 
			
		||||
	% }
 | 
			
		||||
	% my $btn = l('SAVE');
 | 
			
		||||
	% $c->param(Selected => undef); #This may need deleting for a params panel - only needed for a table
 | 
			
		||||
 | 
			
		||||
	<h2><%= $c->l('mai_DESC_STATE_FILTERING_BUTTON') %></h2><br>
 | 
			
		||||
	%= form_for "emailsettingsu" => (method => 'POST') => begin
 | 
			
		||||
		% param 'trt' => $mai_data->{trt} unless param 'trt';
 | 
			
		||||
		%= hidden_field 'trt' => $mai_data->{trt}
 | 
			
		||||
		%# Inputs etc in here.
 | 
			
		||||
		%=l 'mai_DESC_VIRUS_SCAN'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_VIRUS_SCAN'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'VirusStatus' => $mai_data->{virusstatus} unless param 'VirusStatus';
 | 
			
		||||
		%= select_field 'VirusStatus' => [[(l 'DISABLED') => 'disabled'], [ (l 'ENABLED') => 'enabled']], class => 'input'
 | 
			
		||||
		</span><br></p>
 | 
			
		||||
 | 
			
		||||
		%=l 'mai_DESC_SPAM_SCAN'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SPAM_SCAN'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'Spamstatus' => $mai_data->{spamstatus} unless param 'Spamstatus';
 | 
			
		||||
		%= select_field 'Spamstatus' => [[(l 'DISABLED') => 'disabled'], [ (l 'ENABLED') => 'enabled']], class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SPAM_SENSITIVITY'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SpamSensitivity' => $mai_data->{spamsensitivity} unless param 'SpamSensitivity';
 | 
			
		||||
		%= select_field 'SpamSensitivity' => $c->get_spam_sensitivity_opt(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SPAM_TAGLEVEL'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SpamTagLevel' => $mai_data->{spamtaglevel} unless param 'SpamTagLevel';
 | 
			
		||||
		%= select_field 'SpamTagLevel' => $c->get_spam_level_options(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SPAM_REJECTLEVEL'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SpamRejectLevel' => $mai_data->{spamrejectlevel} unless param 'SpamRejectLevel';
 | 
			
		||||
		%= select_field 'SpamRejectLevel' => $c->get_spam_level_options(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SORTSPAM'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SpamSortSpam' => $mai_data->{spamsortspam} unless param 'SpamSortSpam';
 | 
			
		||||
		%= select_field 'SpamSortSpam' => [[(l 'DISABLED') => 'disabled'], [ (l 'ENABLED') => 'enabled']], class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		%=l 'mai_DESC_SPAM_SUBJECT'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SPAM_SUBJECTTAG'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SpamSubjectTag' => $mai_data->{spamsubjecttag} unless param 'SpamSubjectTag';
 | 
			
		||||
		%= select_field 'SpamSubjectTag' => [[(l 'DISABLED') => 'disabled'], [ (l 'ENABLED') => 'enabled']], class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SPAM_SUBJECT'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SpamSubject' => $mai_data->{spamsubject} unless param 'SpamSubject';
 | 
			
		||||
		%= text_field 'SpamSubject' => class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		%=l 'mai_DESC_BLOCK_EXECUTABLE_CONTENT'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_CONTENT_TO_BLOCK'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'BlockExecutableContent' => $c->get_patterns_current_opt() unless param 'BlockExecutableContent';
 | 
			
		||||
		%= select_field 'BlockExecutableContent' => $c->get_patterns_opt(), class => 'input', multiple => "1"
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		%# ....
 | 
			
		||||
		%# Probably finally by a submit.
 | 
			
		||||
		%= submit_button $btn, class => 'action'
 | 
			
		||||
	%end    
 | 
			
		||||
</div>
 | 
			
		||||
@@ -0,0 +1,152 @@
 | 
			
		||||
%#
 | 
			
		||||
%# Generated by SM2Gen version:0.9(20Jan2025) Chameleon version:4.5.4 On Python:3.12.3 at 2025-06-29 08:53:20 
 | 
			
		||||
%#
 | 
			
		||||
<div id="Emailsettings-FRONT" class="partial Emailsettings-FRONT">
 | 
			
		||||
%#	<script>
 | 
			
		||||
%#		window.onload = function() {
 | 
			
		||||
%#		SelectInput();
 | 
			
		||||
%#	};
 | 
			
		||||
%#	</script>
 | 
			
		||||
	% if (config->{debug} == 1) {
 | 
			
		||||
		<pre>
 | 
			
		||||
			%= dumper $mai_data
 | 
			
		||||
			<br> 
 | 
			
		||||
		</pre>
 | 
			
		||||
	% }
 | 
			
		||||
	% $c->param(Selected => undef); #This may need deleting for a params panel - only needed for a table
 | 
			
		||||
	% my $btn = l('Modify');
 | 
			
		||||
	<fieldset>
 | 
			
		||||
		<legend><%= $c->l('mai_DESC_STATE_ACCESS_BUTTON') %></legend>
 | 
			
		||||
		%= form_for 'emailsettings' => (method => 'POST') => begin
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_POP_ACCESS_CONTROL'
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $c->get_current_pop3_access( TRUE )
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_IMAP_ACCESS_CONTROL'
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $c->get_current_imap_access( TRUE )
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_WEBMAIL'
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $c->get_current_webmail_status( TRUE )
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<br> 
 | 
			
		||||
		<div class='center'>
 | 
			
		||||
		%= submit_button "$btn", class => 'action'
 | 
			
		||||
		</div>
 | 
			
		||||
 | 
			
		||||
		%= hidden_field 'trt' => 'ACC'
 | 
			
		||||
		% end   
 | 
			
		||||
		</fieldset>
 | 
			
		||||
		<br> 
 | 
			
		||||
 | 
			
		||||
		
 | 
			
		||||
	<fieldset>
 | 
			
		||||
		<legend><%= $c->l('mai_DESC_STATE_FILTERING_BUTTON') %></legend>
 | 
			
		||||
		%= form_for 'emailsettings' => (method => 'POST') => begin
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_VIRUS_SCAN'
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $c->get_virus_status(TRUE)
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SPAM_SCAN'
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $c->get_spam_status(TRUE)
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_BLOCK_EXECUTABLE_CONTENT'
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $c->get_patterns_status(TRUE)
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<br> 
 | 
			
		||||
		<div class='center'>
 | 
			
		||||
		%= submit_button "$btn", class => 'action'
 | 
			
		||||
		</div>
 | 
			
		||||
 | 
			
		||||
		%= hidden_field 'trt' => 'FIL'
 | 
			
		||||
		% end  
 | 
			
		||||
	</fieldset>
 | 
			
		||||
    <br>  
 | 
			
		||||
 | 
			
		||||
	<fieldset>
 | 
			
		||||
		<legend><%= $c->l('mai_DESC_STATE_RECEPTION_BUTTON') %></legend>
 | 
			
		||||
		%= form_for 'emailsettings' => (method => 'POST') => begin
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_MODE'
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $mai_data->{fetchmailmethod}
 | 
			
		||||
		</span></p>
 | 
			
		||||
		
 | 
			
		||||
		% my $smtp_mesg;
 | 
			
		||||
 | 
			
		||||
		% $smtp_mesg=l('SMTP port %u allow client to authenticate:');
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
			%= sprintf($smtp_mesg,$c->get_db_prop('qpsmtpd','TCPPort',25)); 
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $c->get_current_smtp_auth( TRUE )
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		% $smtp_mesg=l('SMTPS SSL/TLS auth: port %u status:');
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
			%= sprintf($smtp_mesg,$c->get_db_prop('sqpsmtpd','TCPPort',465)); 
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $c->get_current_smtp_ssl_auth( TRUE, 's', FALSE )
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		% $smtp_mesg=l 'Submission port %u status:';
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
			%= sprintf($smtp_mesg,$c->get_db_prop('uqpsmtpd','TCPPort',587)); 
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $c->get_current_smtp_ssl_auth( TRUE,'u', FALSE )
 | 
			
		||||
		</span></p>
 | 
			
		||||
		<br />
 | 
			
		||||
 | 
			
		||||
		<div class='center'>
 | 
			
		||||
		%= submit_button "$btn", class => 'action'
 | 
			
		||||
		</div>
 | 
			
		||||
 | 
			
		||||
		%= hidden_field 'trt' => 'REC'
 | 
			
		||||
		% end    
 | 
			
		||||
	</fieldset>
 | 
			
		||||
    <br>
 | 
			
		||||
 | 
			
		||||
	<fieldset>
 | 
			
		||||
		<legend><%= $c->l('mai_DESC_STATE_DELIVERY_BUTTON') %></legend>
 | 
			
		||||
		%= form_for 'emailsettings' => (method => 'POST') => begin
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_UNKNOWN'
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $c->get_emailunknownuser_status( TRUE )
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_DELEGATE'
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $c->get_value('DelegateMailServer')
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SMARTHOST'
 | 
			
		||||
		</span><span class=data2>
 | 
			
		||||
		%= $c->get_value('SMTPSmartHost')
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<br> 
 | 
			
		||||
		<div class='center'>
 | 
			
		||||
		%= submit_button "$btn", class => 'action'
 | 
			
		||||
		</div>
 | 
			
		||||
 | 
			
		||||
		%= hidden_field 'trt' => 'DEL'
 | 
			
		||||
		% end    
 | 
			
		||||
	</fieldset>
 | 
			
		||||
</div>
 | 
			
		||||
@@ -0,0 +1,159 @@
 | 
			
		||||
%#
 | 
			
		||||
%# Generated by SM2Gen version:0.9(20Jan2025) Chameleon version:4.5.4 On Python:3.12.3 at 2025-06-29 08:53:20 
 | 
			
		||||
%#
 | 
			
		||||
<div id="Emailsettings-REC" class="partial Emailsettings-REC">
 | 
			
		||||
%#	<script>
 | 
			
		||||
%#		window.onload = function() {
 | 
			
		||||
%#		SelectInput();
 | 
			
		||||
%#	};
 | 
			
		||||
%#	</script>
 | 
			
		||||
	% if (config->{debug} == 1) {
 | 
			
		||||
		<pre>
 | 
			
		||||
			%= dumper $mai_data
 | 
			
		||||
		</pre>
 | 
			
		||||
	% }
 | 
			
		||||
	% my $btn = l('SAVE');
 | 
			
		||||
	% $c->param(Selected => undef); #This may need deleting for a params panel - only needed for a table
 | 
			
		||||
 | 
			
		||||
	<h2><%= $c->l('mai_DESC_STATE_RECEPTION_BUTTON') %></h2><br>
 | 
			
		||||
	%= form_for "emailsettingsu" => (method => 'POST') => begin
 | 
			
		||||
		% param 'trt' => $mai_data->{trt} unless param 'trt';
 | 
			
		||||
		%= hidden_field 'trt' => $mai_data->{trt}
 | 
			
		||||
		%# Inputs etc in here.
 | 
			
		||||
		%=l 'mai_DESC_MODE'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_MODE'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'FetchmailMethod' => $mai_data->{fetchmailmethod} unless param 'FetchmailMethod';
 | 
			
		||||
	<!--
 | 
			
		||||
		<pre>
 | 
			
		||||
			%= dumper $mai_data->{fetchmailmethod}
 | 
			
		||||
			%= dumper $c->get_retrieval_opt()
 | 
			
		||||
			%= param 'FetchmailMethod'
 | 
			
		||||
		</pre>
 | 
			
		||||
	-->
 | 
			
		||||
		%= select_field 'FetchmailMethod' => $c->get_retrieval_opt(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		%#=l 'mai_DESC_SMTP_AUTH_CONTROL'
 | 
			
		||||
		<br />
 | 
			
		||||
		%= l "SMTP port (25) main purpose is to receive emails from another server, STARTTLS is always offered, but auth if offered is only if STARTTLS is also used by client."
 | 
			
		||||
		<br />
 | 
			
		||||
		%= l "SMTPS port (465) will require implicit SSL/TLS then authenticate to send."
 | 
			
		||||
		<br />
 | 
			
		||||
		%= l "SMTP Submission port (587) will require STARTTLS, then authenticate to send."
 | 
			
		||||
		<br />
 | 
			
		||||
 | 
			
		||||
		% my $smtp_mesg=l('SMTP port %u allow client to authenticate:');
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
			%= sprintf($smtp_mesg,$c->get_db_prop('qpsmtpd','TCPPort',25)); 
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
			% param 'SMTPAuth' => $c->get_current_smtp_auth( FALSE ) unless param 'SMTPAuth';
 | 
			
		||||
	<!--
 | 
			
		||||
		<pre>
 | 
			
		||||
			%= dumper $c->get_smtp_auth_opt()
 | 
			
		||||
			%= dumper $c->get_current_smtp_auth(FALSE)
 | 
			
		||||
			%= dumper $c->get_db_prop("qpsmtpd","Authentication")
 | 
			
		||||
			%= param 'SMTPAuth'
 | 
			
		||||
		</pre>
 | 
			
		||||
	-->
 | 
			
		||||
			%= select_field 'SMTPAuth' => $c->get_smtp_auth_opt(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		% my $smtp_mesg=l('SMTPS SSL/TLS auth: port %u status:');
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
			%= sprintf($smtp_mesg,$c->get_db_prop('sqpsmtpd','TCPPort',465)); 
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
			% param 'sSMTPAuth' => $c->get_current_smtp_ssl_auth(FALSE,'s', TRUE) unless param 'sSMTPAuth';
 | 
			
		||||
		
 | 
			
		||||
			%= select_field 'sSMTPAuth' => $c->get_smtp_ssl_auth_opt(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		%my $smtp_mesg=l('Submission port %u status:');
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
			%= sprintf($smtp_mesg,$c->get_db_prop('uqpsmtpd','TCPPort',587)); 
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
			% param 'uSMTPAuth' => $c->get_current_smtp_ssl_auth(FALSE,'u', TRUE) unless param 'uSMTPAuth';
 | 
			
		||||
	<!--
 | 
			
		||||
		<pre>
 | 
			
		||||
			%= dumper $c->get_smtp_ssl_auth_opt()
 | 
			
		||||
			%= dumper $c->get_current_smtp_ssl_auth(FALSE,'s', TRUE)
 | 
			
		||||
			%= dumper $c->get_current_smtp_ssl_auth(FALSE,'u', TRUE)
 | 
			
		||||
			%= dumper $c->get_db_prop("uqpsmtpd","access")
 | 
			
		||||
			%= param 'uSMTPAuth'
 | 
			
		||||
		</pre>
 | 
			
		||||
	-->
 | 
			
		||||
		%= select_field 'uSMTPAuth' => $c->get_smtp_ssl_auth_opt(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<!--<hr class="sectionbar" />-->
 | 
			
		||||
		<h2>
 | 
			
		||||
		%=l 'mai_TITLE_SECONDARY'
 | 
			
		||||
		</h2><br>
 | 
			
		||||
 | 
			
		||||
		%=l 'mai_DESC_SECONDARY'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SECONDARY'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SecondaryMailServer' => $mai_data->{secondarymailserver} unless param 'SecondaryMailServer';
 | 
			
		||||
		%= text_field 'SecondaryMailServer', class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		%=l 'mai_DESC_FETCH_PERIOD'
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_FETCH_PERIOD'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'FreqOffice' => $mai_data->{freqoffice} unless param 'FreqOffice';
 | 
			
		||||
		%= select_field 'FreqOffice' => $c->fetchmail_freq(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_FETCH_PERIOD_NIGHTS'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'FreqOutside' => $mai_data->{freqoutside} unless param 'FreqOutside';
 | 
			
		||||
		%= select_field 'FreqOutside' => $c->fetchmail_freq(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_FETCH_PERIOD_WEEKENDS'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'FreqWeekend' => $mai_data->{freqweekend} unless param 'FreqWeekend';
 | 
			
		||||
		%= select_field 'FreqWeekend' => $c->fetchmail_freq(), class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_POP_ACCOUNT'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SecondaryMailAccount' => $mai_data->{secondarymailaccount} unless param 'SecondaryMailAccount';
 | 
			
		||||
		%= text_field 'SecondaryMailAccount', class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_POP_PASS'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SecondaryMailPassword' => $mai_data->{secondarymailpassword} unless param 'SecondaryMailPassword';
 | 
			
		||||
		%= password_field 'SecondaryMailPassword', class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SORT_METHOD'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SpecifyHeader' => $mai_data->{specifyheader} unless param 'SpecifyHeader';
 | 
			
		||||
		%= select_field 'SpecifyHeader' => [[(l 'mai_DEFAULT') => 'off'], [(l 'mai_SPECIFY_BELOW') => 'on']], class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		<p><span class=label>
 | 
			
		||||
		%=l 'mai_LABEL_SORT_HEADER'
 | 
			
		||||
		</span><span class=input>
 | 
			
		||||
		% param 'SecondaryMailEnvelope' => $mai_data->{secondarymailenvelope} unless param 'SecondaryMailEnvelope';
 | 
			
		||||
		%= text_field 'SecondaryMailEnvelope', class => 'input'
 | 
			
		||||
		</span></p>
 | 
			
		||||
 | 
			
		||||
		%# ....
 | 
			
		||||
		%# Probably finally by a submit.
 | 
			
		||||
		%= submit_button $btn, class => 'action'
 | 
			
		||||
	%end    
 | 
			
		||||
</div>
 | 
			
		||||
@@ -2,7 +2,7 @@ Summary: Sme server  navigation module : manager 2
 | 
			
		||||
%define name smeserver-manager
 | 
			
		||||
Name: %{name}
 | 
			
		||||
%define version 11.0.0
 | 
			
		||||
%define release 95
 | 
			
		||||
%define release 99
 | 
			
		||||
Version: %{version}
 | 
			
		||||
Release: %{release}%{?dist}
 | 
			
		||||
License: GPL
 | 
			
		||||
@@ -36,6 +36,7 @@ Requires: perl(Net::Netmask) >= 1.9
 | 
			
		||||
Requires: perl(DBM::Deep) >= 2.0011-1
 | 
			
		||||
Requires: perl(Mojo::JWT) >= 0.08-1
 | 
			
		||||
#Requires: perl(Time::TAI64) >= 2.11
 | 
			
		||||
Requires: perl(Data::Validate::IP)
 | 
			
		||||
Requires: mutt >= 1.5.21
 | 
			
		||||
Requires: smeserver-manager-jsquery >= 1.0
 | 
			
		||||
Requires: smeserver-certificates >= 11.0
 | 
			
		||||
@@ -138,12 +139,25 @@ then
 | 
			
		||||
    [ -h %{dir_mngr}/themes/default/public/js/jquery.min.map ] ||
 | 
			
		||||
	ln -s /usr/share/javascript/jquery/latest/jquery.min.map %{dir_mngr}/themes/default/public/js/jquery.min.map
 | 
			
		||||
fi
 | 
			
		||||
find %{dir_mngr}/lib/SrvMngr/I18N/Modules -type f -name '*.pm' -exec rm '{}' \;
 | 
			
		||||
true
 | 
			
		||||
 | 
			
		||||
%files -f %{name}-%{version}-%{release}-filelist
 | 
			
		||||
%defattr(-,root,root)
 | 
			
		||||
 | 
			
		||||
%changelog
 | 
			
		||||
* Mon Jun 30 2025 Brian Read <brianr@koozali.org> 11.0.0-99.sme
 | 
			
		||||
- Directory panel  - Add in open for config db as required by cacheing  [SME: 13059]
 | 
			
		||||
 | 
			
		||||
* Sun Jun 29 2025 Brian Read <brianr@koozali.org> 11.0.0-98.sme
 | 
			
		||||
- Re-factor email settings panel as error handling not working as expected.  [SME: 12973]
 | 
			
		||||
 | 
			
		||||
* Sat Jun 28 2025 Brian Read <brianr@koozali.org> 11.0.0-97.sme
 | 
			
		||||
- fix error handling in emailsettings panel [SME: 12973]
 | 
			
		||||
 | 
			
		||||
* Fri Jun 27 2025 Brian Read <brianr@koozali.org> 11.0.0-96.sme
 | 
			
		||||
- Remove *.en files on install in spec file [SME: 13061]
 | 
			
		||||
 | 
			
		||||
* Tue Jun 24 2025 Brian Read <brianr@koozali.org> 11.0.0-95.sme
 | 
			
		||||
- Add clock ticker to datetime panel [SME: 13054]
 | 
			
		||||
- Add Test Server button for ntp server [SME: 13048]
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user