You are here

function user_register_notify_update_7002 in User registration notification 7

Cleanup invalid e-mail addresses from notification e-mail address field.

File

./user_register_notify.install, line 114
Installation file for user_register_notify module.

Code

function user_register_notify_update_7002() {
  $messages = array();

  // Cleanup the notification e-mail address field.
  $site_mail = variable_get('site_mail', ini_get('sendmail_from'));
  $user_register_notify_mails = variable_get('user_register_notify_mailto', '');
  if ($user_register_notify_mails == $site_mail) {

    // Remove site_mail from list as we default to this value if empty.
    $user_register_notify_mails = str_replace($site_mail, '', $user_register_notify_mails);
  }
  $user_register_notify_mails = explode(',', $user_register_notify_mails);
  $user_register_notify_mails = array_map('trim', $user_register_notify_mails);
  $user_register_notify_mails = array_filter($user_register_notify_mails, 'strlen');
  $emails = array();
  foreach ($user_register_notify_mails as $email) {
    if (valid_email_address($email)) {
      $emails[] = $email;
    }
    else {
      $messages[] = t('Found invalid notification e-mail address "@email" and removed it. Please review your settings!', array(
        '@email' => $email,
      ));
    }
  }
  variable_set('user_register_notify_mail_to', implode(',', $emails));
  variable_del('user_register_notify_mailto');
  $messages[] = t('Cleaned up notification e-mail address field.');
  return implode(' ', $messages);
}