Laděnka a pokročilé využití mailů
Upozornění: Tohle vlákno je hodně staré a informace nemusí být platné pro současné Nette.
- Honza Kuchař
- Člen | 1662
Ahoj,
dneska jsem si trochu hrál s Laděnkou, aby když nastane chyba, abych se toho
dozvěděl opravdu co nejvíce. Použil jsem vlastní mailer, který posílá
Mail přes Nette\Mail. V příloze přímo připojuje soubor s výstupem
Laděnky. Potřebné úpravy: Debug.php
// line 613 původní
self::sendEmail((string) $exception);
//line 613 nová
self::sendEmail($exception);
// line 717 stara
array($host, @date('Y-m-d H:i:s', Debug::$time), $message), // intentionally @
// line 717 nova
array($host, @date('Y-m-d H:i:s', Debug::$time), (string)$message), // intentionally @
Mailer ještě chce přidat nějaké to datum a server, ale spíš tak pro inspiraci.
Davide, nešla by tato úprava zahrnou do distribuce? Pravda mailer dostává Exception místo string, ale to by snad nemělo ničemu vadit…
Debug::$mailer = function($exception) {
$mail = new Mail();
if($exception instanceOf Exception)
{
ob_start();
Debug::_paintBlueScreen($exception);
$body = ob_get_clean();
$mail->addAttachment("Exception.html", $body,"text/html");
}
$mail->addTo("tvůj mail");
$mail->setBody((string)$exception);
$mail->subject = "předmět";
$mail->send();
};