Nette\Mail: odkazy při tvorbě TXT z HTML, Message-ID a jedna podivnost
- hjr
- Člen | 24
Zdravím,
dovoluji si navrhnout do metody Nette\Mail\buildText
přidat
tento řádek:
<?php
// <a href="https://nette.org/">Nette Homepage</a> -> Nette Homepage: https://nette.org/
$text = preg_replace('#<a[^>]+href="([^"]*)">([^<]*)</a>#Uis', '$2: $1', $text);
?>
Ten převede odkazy z HTML verze do textového těla tak, aby byly použitelné (pokud není odkaz přímo v tagu, stávající kód ho prostě odstraní). Tohle je možné ještě vylepšit o nějaké kontroly – například nenahrazovat, pokud se src a obsah tagu rovnají, nevkládat relativní odkazy apod.
Další věc je, že bych rád měl možnost ovlivnit (nebo alespoň po odeslání zjistit / získat) Message ID generované zprávy. Dá se to použít například pro párování nedoručenek – Message Delivery Reports.
Nedopatřením jsem také přišel na zvláštní chování při použití
SmtpSendmailMailer
od Patrika Votočka, ale problém bude
primárně spíš v Nette\Mail: dovolí odeslat e-mail i bez To:
hlavičky. SmtpSendmailMailer
potom hlásí nicneříkající
chyby. RFC 822 requires that every message contain at least one To, Cc, or
Bcc field. Možná by mělo smysl toto hlídat.
- Petr Motejlek
- Člen | 293
S obojím souhlasím… U toho prvního by se mi ale víc líbilo, kdyby ta adresa odkazu nebyla za dvojtečkou, ale v zárovce, protože v bloku textu by to vypadalo podivně, račte porovnat:
Můžete se podívat na stránky Nette frameworku: www.nette.org, který je super.
Můžete se podívat na stránky Nette frameworku (www.nette.org), který je super.