Odkud odesilat email pri registraci uzivatele
- radoslavius
- Člen | 4
Dobry den,
zacinam s nette i s objektovym programovanim a nektere veci mi dochazeji pomalu :( Momentalne bych potreboval poradit kam umistit kod, ktery bude odesilat registrovanemu uzivateli email. Mam udelane dva typy registraci. Kod pro odesilani jsem umistil do modelu do metody pro zapsani uzivatele do db, ale mam problem s vytvorenim odkazu do textu mailu, protoze model o presenteru nevi a podle MVP by ani vedet nemel. Vzhledem k tomu, ze mam v presenteru dve metody na zpracovani dvou registracnich formularu, tak jsem nechtel ke kazde metode vkladat kod pro odeslani mailu, ale chtel jsem to mit nekde jen jednou. Kam to tedy vlozit tak, aby to bylo pouzitelne vicekrat? Napsat novy control, nebo novy model, ktery se bude zabyvat emaily? Vim, ze existuje moznost dostat se k presenteru z modelu, ale podle MVP to neni spravne.
Diky
- Patrik Votoček
- Člen | 2221
dle mého názoru je e-mail jenom speciálním/dalším typem pohledu (view) takže bych buďto tvořil komponentu nebo ho zapasoval do presenteru.
- Filip Procházka
- Moderator | 4668
Líbí se mi názor, že mail je typ view
a jeho obsluha patří
proto do presenteru.
Ovšem viděl bych to na nějakou službu. Jednoduchoučkou obálku, ktera by maily vytvářela a doplnila nějaké výchozí nastavení.
$mailer = $this->getApplication()->getService('System\Mailer');
$email = $mailer->createRegistrationConfirmation($user);
$email->necoSpecifickeho = 123;
$mailer->send($email);