From ae31a4ab76fb8f89500fd509df8c951b4770e006 Mon Sep 17 00:00:00 2001 From: Dries Buytaert Date: Tue, 16 Sep 2008 17:50:02 +0000 Subject: [PATCH] - Patch #308138 by mfer, Dave Reid: replace valid_email_address with filter_var and FILTER_VALIDATE_EMAIL. --- includes/common.inc | 7 +------ modules/contact/contact.test | 2 +- 2 files changed, 2 insertions(+), 7 deletions(-) diff --git a/includes/common.inc b/includes/common.inc index 33109f00ec2..69227435e25 100644 --- a/includes/common.inc +++ b/includes/common.inc @@ -866,12 +866,7 @@ function t($string, $args = array(), $langcode = NULL) { * TRUE if the address is in a valid format. */ function valid_email_address($mail) { - $user = '[a-zA-Z0-9_\-\.\+\^!#\$%&*+\/\=\?\`\|\{\}~\']+'; - $domain = '(?:(?:[a-zA-Z0-9]|[a-zA-Z0-9][a-zA-Z0-9\-]*[a-zA-Z0-9])\.?)+'; - $ipv4 = '[0-9]{1,3}(\.[0-9]{1,3}){3}'; - $ipv6 = '[0-9a-fA-F]{1,4}(\:[0-9a-fA-F]{1,4}){7}'; - - return (bool)preg_match("/^$user@($domain|(\[($ipv4|$ipv6)\]))$/", $mail); + return (bool)filter_var($mail, FILTER_VALIDATE_EMAIL); } /** diff --git a/modules/contact/contact.test b/modules/contact/contact.test index 1bea7e53cf8..b6328fc1531 100644 --- a/modules/contact/contact.test +++ b/modules/contact/contact.test @@ -45,7 +45,7 @@ class ContactSitewideTestCase extends DrupalWebTestCase { // Add categories. // Test invalid recipients. - $invalid_recipients = array('invalid', 'invalid@', /*'invalid@site', 'invalid@site.',*/ '@site.', '@site.com'); + $invalid_recipients = array('invalid', 'invalid@', 'invalid@site', 'invalid@site.', '@site.', '@site.com'); foreach ($invalid_recipients as $invalid_recipient) { $this->addCategory($this->randomName(16), $invalid_recipient, '', FALSE); $this->assertRaw(t('%recipient is an invalid e-mail address.', array('%recipient' => $invalid_recipient)), t('Caught invalid recipient (' . $invalid_recipient . ').'));