Try looking into a state machine. When the user confirms, then send an email. It's really easy to think about
(guest) -- #confirm --> (confirming) -- #finished --> (active) before_transition :on => :confirm, :do => :send_confirmation_email Then do some magic on the confirmation side that triggers the #finished event. Hope this helps On Thursday, July 19, 2012 7:37:42 AM UTC-5, Aditya wrote: > > It would be nice to have mail interceptor be able to modify the message to > prevent delivery. Alternatively it would be nice to also prevent delivery > in the mailer itself. > > The use cases are as follows: > > 1. User is unsubscribed and you really want to prevent emails being > sent to such users. > 2. User has a guest account with a temp internal email address, which > you do not want to send emails to. > 3. The email content may be spammy and you want to prevent that > delivery. > > As such you could do each by wrapping more code around the > MyMailer.mail_action(args)/.deliver pattern but it gets repetitive quickly. > > This is not environment specific which is already handled very well in > Rails since ages, this is more transactional. If we can already do this > easily, feel free to point me to the right direction. Happy to send patch > in due time if this is acceptable. > > Possible routes i'm thinking are to add options to mail itself > (:perform_delivery => determine_delivery(args)) and/or adding ability to > prevent delivery from interceptor. > > Suggestions/Ideas? > > /cc @mikel <https://github.com/mikel> @josevalim<https://github.com/josevalim> > @spastorino <https://github.com/spastorino> > -- You received this message because you are subscribed to the Google Groups "Ruby on Rails: Core" group. To view this discussion on the web visit https://groups.google.com/d/msg/rubyonrails-core/-/lxnPH9Phqn4J. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/rubyonrails-core?hl=en.
