diff options
author | rub <rub@piwigo.org> | 2006-06-17 23:02:59 +0000 |
---|---|---|
committer | rub <rub@piwigo.org> | 2006-06-17 23:02:59 +0000 |
commit | 9ab183d3e4d5e02e2a09e927ea7ecfb99fa7753a (patch) | |
tree | f760827c22d5f93830b93aa441a5fa012a55083e /include | |
parent | 43835fac8d55d224b32159381ef92887b6b30a75 (diff) |
Issue ID 0000407: accents are not allowed in mail headers
Merge BSF r1360:1361 into branch-1_6
git-svn-id: http://piwigo.org/svn/branches/branch-1_6@1362 68402e56-0260-453c-a942-63ccdbb3a9ee
Diffstat (limited to 'include')
-rw-r--r-- | include/functions.inc.php | 17 | ||||
-rw-r--r-- | include/functions_mail.inc.php | 12 |
2 files changed, 25 insertions, 4 deletions
diff --git a/include/functions.inc.php b/include/functions.inc.php index f8f65c031..12fe7200d 100644 --- a/include/functions.inc.php +++ b/include/functions.inc.php @@ -819,6 +819,23 @@ function l10n($key) } /** + * Translate string in string ascii7bits + * It's possible to do that with iconv_substr but this fonction is not avaible on all the providers. + * + * @param string str + * @return string + */ +function str_translate_to_ascii7bits($str) +{ + global $lang_table_translate_ascii7bits; + + $src_table = array_keys($lang_table_translate_ascii7bits); + $dst_table = array_values($lang_table_translate_ascii7bits); + + return str_replace($src_table , $dst_table, $str); +} + +/** * returns the corresponding value from $themeconf if existing. Else, the * key is returned * diff --git a/include/functions_mail.inc.php b/include/functions_mail.inc.php index 86ded9473..a209c6f04 100644 --- a/include/functions_mail.inc.php +++ b/include/functions_mail.inc.php @@ -78,13 +78,15 @@ function get_mail_configuration() */ function format_email($name, $email) { + $cvt7b_name = str_translate_to_ascii7bits($name); + if (strpos($email, '<') === false) { - return $name.' <'.$email.'>'; + return $cvt7b_name.' <'.$email.'>'; } else { - return $name.$email; + return $cvt7b_name.$email; } } @@ -95,6 +97,8 @@ function pwg_mail($to, $from = '', $subject = 'PhpWebGallery', $infos = '') { global $conf, $conf_mail; + $cvt7b_subject = str_translate_to_ascii7bits($subject); + if (!isset($conf_mail)) { $conf_mail = get_mail_configuration(); @@ -126,11 +130,11 @@ function pwg_mail($to, $from = '', $subject = 'PhpWebGallery', $infos = '') { $options = '-f '.$from; - return mail($to, $subject, $content, $headers, $options); + return mail($to, $cvt7b_subject, $content, $headers, $options); } else { - return mail($to, $subject, $content, $headers); + return mail($to, $cvt7b_subject, $content, $headers); } } |