From aff959d5fcf65592a3e0e84d64a17792981cae64 Mon Sep 17 00:00:00 2001 From: Florian Schaal <florian@schaal-24.de> Date: Fri, 13 Oct 2017 13:48:46 +0200 Subject: [PATCH] prevent incorrectly formatted mails because of empty entries in email templates --- interface/web/client/client_edit.php | 3 +-- interface/web/client/form/message_template.tform.php | 6 ++++++ .../web/client/lib/lang/de_client_message_template.lng | 2 ++ .../web/client/lib/lang/en_client_message_template.lng | 4 +++- 4 files changed, 12 insertions(+), 3 deletions(-) diff --git a/interface/web/client/client_edit.php b/interface/web/client/client_edit.php index 9345b5b7c3..10e3f3cadd 100644 --- a/interface/web/client/client_edit.php +++ b/interface/web/client/client_edit.php @@ -348,8 +348,7 @@ class page_action extends tform_actions { $sql = "SELECT * FROM client_message_template WHERE template_type = 'welcome' AND sys_groupid = ?"; $email_template = $app->db->queryOneRecord($sql, $client_group_id); $client = $app->tform->getDataRecord($this->id); - - if(is_array($email_template) && $client['email'] != '') { + if(is_array($email_template) && $email_template['subject'] != '' && $email_template['message'] != '' && $client['email'] != '') { //* Parse client details into message $message = $email_template['message']; $subject = $email_template['subject']; diff --git a/interface/web/client/form/message_template.tform.php b/interface/web/client/form/message_template.tform.php index 421b1af713..14dfea1cd0 100644 --- a/interface/web/client/form/message_template.tform.php +++ b/interface/web/client/form/message_template.tform.php @@ -78,6 +78,9 @@ $form["tabs"]['template'] = array ( 'subject' => array ( 'datatype' => 'VARCHAR', 'formtype' => 'TEXT', + 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', + 'errmsg'=> 'subject_error_empty'), + ), 'default' => '', 'value' => '', 'separator' => '', @@ -89,6 +92,9 @@ $form["tabs"]['template'] = array ( 'message' => array ( 'datatype' => 'TEXT', 'formtype' => 'TEXTAREA', + 'validators' => array ( 0 => array ( 'type' => 'NOTEMPTY', + 'errmsg'=> 'message_error_empty'), + ), 'default' => '', 'value' => '', 'separator' => '', diff --git a/interface/web/client/lib/lang/de_client_message_template.lng b/interface/web/client/lib/lang/de_client_message_template.lng index 3c6ba86f36..5a260eb01d 100644 --- a/interface/web/client/lib/lang/de_client_message_template.lng +++ b/interface/web/client/lib/lang/de_client_message_template.lng @@ -8,4 +8,6 @@ $wb['Settings'] = 'Einstellung'; $wb['variables_txt'] = 'Variable'; $wb['variables_description_txt'] = '(Die Benutzername und Passwort Variable können nur in Willkommensnachrichten verwendet werden.)'; $wb['duplicate_welcome_error'] = 'Es kann nur eine Standard Willkommensnachrichten Vorlage geben. Bitte bearbeiten Sie die bestehende Vorlage anstatt eine neue hinzuzufügen.'; +$wb['subject_error_empty'] = 'Betreff ist leer'; +$wb['message_error_empty'] = 'Nachricht ist leer'; ?> diff --git a/interface/web/client/lib/lang/en_client_message_template.lng b/interface/web/client/lib/lang/en_client_message_template.lng index 42cd796047..0606f53758 100644 --- a/interface/web/client/lib/lang/en_client_message_template.lng +++ b/interface/web/client/lib/lang/en_client_message_template.lng @@ -8,4 +8,6 @@ $wb['Settings'] = 'Setting'; $wb['variables_txt'] = 'Variables'; $wb['variables_description_txt'] = '(The username and password variables are only available in welcome emails.)'; $wb['duplicate_welcome_error'] = 'There can be only one default welcome email template. Please edit the existing template instead of adding a new one.'; -?> \ No newline at end of file +$wb['subject_error_empty'] = 'Subject is empty'; +$wb['message_error_empty'] = 'Message is empty'; +?> -- GitLab