Při pasivním odeslání emailu se ignoruje pole ‚Subject‘ nastavené v šabloně

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

Nette 2.1-dev (aktuální k 27.11.2012), PHP 5.3

V šabloně mám

{var $mail->from = "Admin <webmaster@project.cz>"}
{var $mail->subject = "Pokusný mail"}

A při pasivním odeslání mi přijde email bez subjectu. Zajímavé je, že odesílatel se nastaví.

<?php
$email = new Nette\Mail\Message();
$email->addTo("my@address.cz")
  ->setHtmlBody($emailTemplate);

$this->mailer->send($email); // nevyplní se Subject
?>

Zjistil jsem, že když nastavím zprávě mailer a nechám zprávu, ať se odešle sama (aktivně), tak všechno funguje jak má. Jen mi to přijde o něco méně čisté.

<?php
$email = new Nette\Mail\Message();
$email->setMailer($this->mailer);
$email->addTo("my@address.cz")
  ->setHtmlBody($emailTemplate)
  ->send(); // funguje i se Subjectem
?>

//EDIT: Omlouvám se za dezinformaci, koukám, že mám dev verzi. Ozdkoušeno i na aktualizované. Mimochodem, v debugBaru v panelu Nette se mi zobrazí u verze Nette dovětek „(released on $WCDATE$)“, což bude asi taky brouček.

//Dodatek: rozdíl je jen v tom, že $message->send() zavolá nejprve protected metodu build(), zatímco při odeslání mailerem se tato metoda zavolat nemůže.

Editoval Šaman (27. 11. 2012 17:32)