You are here

function mail_signature_settings_form_validate in Mail signature 7

Function to validate values from the settings form.

1 string reference to 'mail_signature_settings_form_validate'
mail_signature_settings_form in ./mail_signature.admin.inc
Form builder; Configure the Mail Signature settings.

File

./mail_signature.admin.inc, line 62
Admin callbacks for Mail Signature module.

Code

function mail_signature_settings_form_validate($form, &$form_state) {
  module_load_include('inc', 'mail_signature');
  if (substr($form_state['values']['mail_signature_text'], 0, 2) == '--') {
    drupal_set_message(t('Attenction, the signature starts with "--". This module automatically adds the separator to every mail, so please remove it from the text.'), 'warning');
  }

  // Perform a basic check for HTML characters in the strings to remove field.
  if ($form_state['values']['mail_signature_enabled'] == 1 && $form_state['values']['mail_signature_text'] == '') {
    form_set_error('mail_signature_text', t('To enable signature you have to add a signature text.'));
  }
  elseif ($form_state['values']['mail_signature_enabled'] == 1 && $form_state['values']['mail_signature_text'] != '') {
    drupal_set_message(t('Now signature will be added to every mail.'));

    // Validation control to check test mail.
    if ($form_state['values']['mail_signature_mail'] != '') {
      if (valid_email_address($form_state['values']['mail_signature_mail'])) {
        global $language;
        $message['subject'] = t('Mail signature - Test mail');
        $message['body'] = array(
          t('This is a test mail to show how your signature is renderd on an email message.'),
        );
        drupal_mail('mail_signature', 'mail-test', $form_state['values']['mail_signature_mail'], $language, $message);
        drupal_set_message(t('The message have  been sent to @email.', array(
          '@email' => $form_state['values']['mail_signature_mail'],
        )));
      }
      else {
        drupal_set_message(t('The email address is not valid: @email.', array(
          '@email' => $form_state['values']['mail_signature_mail'],
        )), 'warning');
      }
    }
  }
}