Schizofrenní validace e-mailu: Mail\MailMimePart vs. Forms\Controls\TextBase

Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
reeloo
Člen | 1
+
0
-

Zdravím,
navrhuji sjednotit validaci e-mailových adres.

Mail\MailMimePart: https://api.nette.org/…art.php.html#81

<?php
preg_match('#^[^@",\s]+@[^@",\s]+\.[a-z]{2,10}$#i', $email)
?>

Forms\Controls\TextBase: https://api.nette.org/…ase.php.html#171

<?php
$atom = "[-a-z0-9!#$%&'*+/=?^_`{|}~]"; // RFC 5322 unquoted characters in local-part
$localPart = "(?:\"(?:[ !\\x23-\\x5B\\x5D-\\x7E]*|\\\\[ -~])+\"|$atom+(?:\\.$atom+)*)"; // quoted or unquoted
$chars = "a-z0-9\x80-\xFF"; // superset of IDN
$domain = "[$chars](?:[-$chars]{0,61}[$chars])"; // RFC 1034 one domain component

String::match($control->getValue(), "(^$localPart@(?:$domain?\\.)+[-$chars]{2,19}\\z)i");
?>
Mikulas Dite
Člen | 756
+
0
-

V Nette 2.0 by něco jako jednotné validátory měly být, takže konkrétně s tímhle se zatím asi hýbat nebude. Ale souhlasím, že změna by byla dobrá.