diff --git a/interface/web/admin/lib/lang/de_system_config.lng b/interface/web/admin/lib/lang/de_system_config.lng index 5eaa996fe4a1bde0c984dd6b8e2f351c7aa3ddf1..db46bfd3863c67d839bf8296acf2e5d55263fe72 100644 --- a/interface/web/admin/lib/lang/de_system_config.lng +++ b/interface/web/admin/lib/lang/de_system_config.lng @@ -1,5 +1,6 @@ <?php $wb['system_config_desc_txt'] = ''; +$wb['smtp_missing_admin_mail_txt'] = 'Bitte geben Sie die Administrator E-Mail und den Namen ein, wenn Sie SMTP Versand nutzen wollen.'; $wb['warning'] = 'Bearbeiten Sie diese Werte sorgfältig! Entfernen Sie die Prefixe nicht auf Systemen mit mehr als einem Client.'; $wb['dbname_prefix_txt'] = 'Datenbanknamen Prefix'; $wb['dbuser_prefix_txt'] = 'Datenbankbenutzer Prefix'; diff --git a/interface/web/admin/lib/lang/en_system_config.lng b/interface/web/admin/lib/lang/en_system_config.lng index 4fbaa579b23aac16d728db0ee8d076fe6c6d70f2..1e03f8bc604f756a3ea5d17c30bf9857c9b13b0f 100644 --- a/interface/web/admin/lib/lang/en_system_config.lng +++ b/interface/web/admin/lib/lang/en_system_config.lng @@ -1,5 +1,6 @@ <?php $wb['system_config_desc_txt'] = ''; +$wb['smtp_missing_admin_mail_txt'] = 'Please enter the admin name and admin mail address if you want to use smtp mail sending.'; $wb['dashboard_atom_url_admin_txt'] = 'Dashboard atom feed URL (admin)'; $wb['dashboard_atom_url_reseller_txt'] = 'Dashboard atom feed URL (reseller)'; $wb['dashboard_atom_url_client_txt'] = 'Dashboard atom feed URL (client)'; diff --git a/interface/web/admin/system_config_edit.php b/interface/web/admin/system_config_edit.php index dc615a1f6cf0f27b993c0f80319718e932e62868..32e4a8e7c0e72d9feec3a5754edb946f1fe009f2 100644 --- a/interface/web/admin/system_config_edit.php +++ b/interface/web/admin/system_config_edit.php @@ -77,6 +77,25 @@ class page_action extends tform_actions { $app->tpl->setVar($record); } + function onSubmit() { + global $app; + + $app->uses('ini_parser,getconf'); + + $section = $app->tform->getCurrentTab(); + + $server_config_array = $app->getconf->get_global_config(); + $new_config = $app->tform->encode($this->dataRecord,$section); + if($section == 'mail') { + if($new_config['smtp_pass'] == '') $new_config['smtp_pass'] = $server_config_array['smtp_pass']; + if($new_config['smtp_enabled'] == 'y' && ($new_config['admin_mail'] == '' || $new_config['admin_name'] == '')) { + $app->tform->errorMessage .= $app->tform->lng("smtp_missing_admin_mail_txt"); + } + } + + parent::onSubmit(); + } + function onUpdateSave($sql) { global $app,$conf; @@ -85,7 +104,6 @@ class page_action extends tform_actions { $section = $app->tform->getCurrentTab(); - $server_config_array = $app->getconf->get_global_config(); $new_config = $app->tform->encode($this->dataRecord,$section); if($section == 'sites' && $new_config['vhost_subdomains'] != 'y' && $server_config_array['vhost_subdomains'] == 'y') { @@ -94,6 +112,8 @@ class page_action extends tform_actions { if($check['cnt'] > 0) { $new_config['vhost_subdomains'] = 'y'; } + } elseif($section == 'mail') { + if($new_config['smtp_pass'] == '') $new_config['smtp_pass'] = $server_config_array['smtp_pass']; } $server_config_array[$section] = $new_config; $server_config_str = $app->ini_parser->get_ini_string($server_config_array); diff --git a/interface/web/admin/templates/system_config_mail_edit.htm b/interface/web/admin/templates/system_config_mail_edit.htm index 4170debeba83855be698ca9e89f08463d1feb94a..013c39ae069be0130107f897894b8ea3fa7a310f 100644 --- a/interface/web/admin/templates/system_config_mail_edit.htm +++ b/interface/web/admin/templates/system_config_mail_edit.htm @@ -59,7 +59,7 @@ </div> <div class="ctrlHolder"> <label for="smtp_pass">{tmpl_var name='smtp_pass_txt'}</label> - <input name="smtp_pass" id="smtp_pass" value="{tmpl_var name='smtp_pass'}" size="30" maxlength="255" type="password" class="textInput" /> + <input name="smtp_pass" id="smtp_pass" value="" size="30" maxlength="255" type="password" class="textInput" /> </div> <div class="ctrlHolder"> <p class="label">{tmpl_var name='smtp_crypt_txt'}</p>