- Patch #308138 by mfer, Dave Reid: replace valid_email_address with filter_var and FILTER_VALIDATE_EMAIL.

merge-requests/26/head
Dries Buytaert 2008-09-16 17:50:02 +00:00
parent 2f3146f041
commit ae31a4ab76
2 changed files with 2 additions and 7 deletions

View File

@ -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);
}
/**

View File

@ -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 . ').'));