DevNull mailer – jak nastavit v neonu vlastní třídu jako default mailer

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

Řeším takovouto věc: Mám testovací server, kde jsou překlopená ostrá data a jako reakce na ně tento systém rozesílá e-maily. To ale nechci, protože je to testovací server.

Napadlo mě tedy implementovat si velmi jednoduchý vlastní mailer:

class DevMailer implements \Nette\Mail\IMailer
{
	public function send(\Nette\Mail\Message $mail)
	{
	}
}

A v config.local.neon ho nastavit na tomto testovacím serveru jako defaultní mailer aplikace:

	services:
		nette.mailer:
			class: DevMailer

Ale nefunguje :-(

Předem děkuji za každou radu.

EDIT: Nefunguje == Pořád se odesílá přes default mailer.

Editoval josef.sabl (3. 4. 2013 17:49)

enumag
Člen | 2118
+
0
-

Rozveď „nefunguje“ – vytváří se stále SendMailMailer nebo nastal jiný problém?

Mimochodem v master už je posílání přes $message->send() (kdy se projeví defaultMailer) deprecated. Správná cesta je si mailer předat pomocí DI tam kde potřebuješ odesílat.

josef.sabl
Člen | 153
+
0
-

enumag napsal(a):

Rozveď „nefunguje“ – vytváří se stále SendMailMailer nebo nastal jiný problém?

Rozvedeno výše.

Mimochodem v master už je posílání přes $message->send() (kdy se projeví defaultMailer) deprecated. Správná cesta je si mailer předat pomocí DI tam kde potřebuješ odesílat.

Aha, ok… díky

enumag
Člen | 2118
+
0
-

Jo aha, problém je tady. DefaultMailer není ten co máš v DIC (jak by se Message dostala k DI kontejneru?).