Ticket #203 (closed defect: fixed)
[Clearbricks] Problème dans l'envoi des emails ?
Reported by: | Moe | Owned by: | olivier |
---|---|---|---|
Priority: | normal | Milestone: | 2.0 |
Component: | enhancement | Version: | dev |
Severity: | normal | Keywords: | |
Cc: |
Description
Soit :
- un blog Dotclear 2.0-beta7 hébergé chez OVH en 60GP
- le plugin emailNotification (version 1.0.2) configuré pour envoyer des emails à ...
- une adresse email Gmail
les emails envoyés pour prévenir d'un nouveau commentaire contiennent des lignes vides dans les headers, ceci a pour effet de décaler le début du corps de l'email, les headers apparaissent alors en clair dans l'email.
Le problème ne se pose si l'email est envoyé à une adresse email chez OVH ou si l'email est envoyé d'ailleurs que chez OVH vers une adresse Gmail, alors est-ce un bug ? Un problème chez OVH ?
Le problème peut être réglé en remplaçant $headers = implode("\r\n",$headers); par $headers = implode("\n",$headers); dans /dotclear/inc/clearbricks/mail/class.mail.php
Dans le même registre, peut-être faudrait-il définir l'encodage du sujet des emails dans la fonction mail() de la classe sendMail, actuellement c'est avant l'envoi de l'email que l'encodage est défini :
- /dotclear/admin/auth.php utilise mb_encode_mimeheader()
- emailNotification/behaviors.php utilise mail::B64Header()
Une fonction est-elle plus efficace que l'autre ? Cela devrait-il être intégré à mail::sendMail() pour que la question ne se pose plus ?
Remplacer \r\n par \n n'est pas conforme à la RFC SMTP et je n'aime pas ça du tout. J'aimerais effectivement trouver une autre solution.