If you don't want to write something like that, I have a blog post here with code you could use providing your cake version is 2.4.x (Since been updated but yet to post about it, it has flaws)
http://www.stephenspeakman.co.uk/cakephp-sending-emails-in-the-background/ Just don't enable the shell to send from the database On 16 September 2014 20:16, Stephen S <[email protected]> wrote: > You could define more than one email config, have a config to save the > email to a database table or similar and one to actually send the email > using Mandrill. > > Depending on where you send emails from you could use > AppController::beforeFilter() or elsewhere, simple example: > > $emailConfig = (Configure::read('debug') > 0) ? 'database' : 'default' > Configure::write('Email.config', $emailConfig); > > //.. somewhere else > > $email = new CakeEmail(); > $email->config(Configure::read('Email.config')); > > On 16 September 2014 14:24, Jeremy Burns : Class Outfit < > [email protected]> wrote: > >> Thanks Mark. After writing I decided to check the debug level. If > 0 >> (i.e. potentially in test) don’t send the emails. I send via Mandrill so >> can’t easily log the result without actually sending it. It’s cool. >> >> On 16 Sep 2014, at 14:14, euromark <[email protected]> wrote: >> >> I use custom Configure keys for my EmailLib (extends CakeEmail): >> >> >> - Don't send emails without Configure::write('Email.live'), but log >> them away verbosely. For testing. >> >> Basically, you will have to add something like this on your own I am >> afraid >> >> mark >> >> >> Am Dienstag, 16. September 2014 14:04:48 UTC+2 schrieb Jeremy Burns: >>> >>> My model code sends out emails, so when I run my test suite the system >>> triggers multiple emails - which is potentially bad for spam ratings. Is >>> there a global variable I can check so that when 'in test' the messages >>> aren't triggered? >>> >> >> -- >> Like Us on FaceBook https://www.facebook.com/CakePHP >> Find us on Twitter http://twitter.com/CakePHP >> >> --- >> You received this message because you are subscribed to the Google Groups >> "CakePHP" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/cake-php. >> For more options, visit https://groups.google.com/d/optout. >> >> >> -- >> Like Us on FaceBook https://www.facebook.com/CakePHP >> Find us on Twitter http://twitter.com/CakePHP >> >> --- >> You received this message because you are subscribed to the Google Groups >> "CakePHP" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To post to this group, send email to [email protected]. >> Visit this group at http://groups.google.com/group/cake-php. >> For more options, visit https://groups.google.com/d/optout. >> > > > > -- > Kind Regards > Stephen Speakman > -- Kind Regards Stephen Speakman -- Like Us on FaceBook https://www.facebook.com/CakePHP Find us on Twitter http://twitter.com/CakePHP --- You received this message because you are subscribed to the Google Groups "CakePHP" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To post to this group, send email to [email protected]. Visit this group at http://groups.google.com/group/cake-php. For more options, visit https://groups.google.com/d/optout.
