on en profite pour ajouter PHPMailer aux crédits du plugin
astuce en cadeau, les commandes svn pour retirer les fichiers absents ou ajouteur les nouveaux :
`svn rm $( svn status | sed -e '/^!/!d' -e 's/^!//' )` + `svn add $( svn status | sed -e '/^?/!d' -e 's/^?//' )`
Cela permet d'éviter certaines mécompréhension et debug intempestif si on oublie que Facteur est là...
A revert si vous pensez que c'est "too much"
On en profite pour virer la chaine de langue 'Z' => 'ZZzZZzzz', qui ne sert à rien normalement
Version 3.0.2
- on ajoute l'auto-detection des mails HTML dans envoyer_mail : si aucun Content-Type n'est fourni, et que le mail commence par un < finit par un > et contient bien un </html> on considère que c'est un mail HTML. Cette feature etait fournie pour les notifications uniquement (par inc/notifications) jusqu'ici
- on recupere la fonction de conversion HTML->Texte du plugin Newsletter, qui s'appuie sur MarkDownify
- si aucune alternative texte n'est fournie à un mail HTML, on génère automatiquement une alternative texte dans envoyer_mail()
A tester et stabiliser.
[(#INCLURE{fond=emails/inc-button,label=Cliquez ici,url=http://spip.net})]
Voir le commentaire dans le squelette pour les details de personalisation de couleur
Redéfinir dans la classe Facteur, les fonctions Send, AddAttachment, AddReplyTo, AddBCC, AddCC, de la classe PhpMailer de cette façon :
public function Send() {
ob_start();
parent::Send();
$error = ob_get_contents();
ob_end_clean();
if( !empty($error) ) {
spip_log("Erreur Facteur->Send : $error",'facteur.err');
}
}
Avec une constante pour activer ce mode et rajouter au début du constructeur de Facteur :
if (defined('_FACTEUR_DEBUG_SMTP')) {
$this->SMTPDebug = _FACTEUR_DEBUG_SMTP ;
}
Ajouter la ligne qui suit dans mes_options.php permet donc de retrouver les erreurs dans le fichier facteur.err.log.
define('_FACTEUR_DEBUG_SMTP','5'); // Le niveau peut varier de 1 à 5, 5 affichant tout le dialogue lors de la connexion smtp avec le serveur
les mails texte bruts sont encapsulés dans un modele emails/texte permettant d'avoir un mail html dans une présentation un peu plus propre que le texte brut.
Il est possible de revenir aux mails texte bruts en definissant un modele emails/texte.html qui renvoie uniquement #ENV*{texte}