Class: SendmailController

Inherits:
ApplicationController
  • Object
show all
Defined in:
app/controllers/sendmail_controller.rb

Instance Method Summary collapse

Instance Method Details

#deliverObject



4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
# File 'app/controllers/sendmail_controller.rb', line 4

def deliver
  if has_required_fields
    meta = params[:meta]

    if recipients_valid(meta[:recipients])
      
      template = view_for([params[:form], 'default'], 'sendmail', '.erb')
      
      Sendmail.deliver_form(sanatize_params(params), meta, template)

      # After deliver options (redirect, show flash message or render template)        
      if meta[:redirect_to]
        flash[:notice] = meta[:message] if meta[:message]
        redirect_to meta[:redirect_to] and return
      end

      if meta[:message]
        flash[:notice] = meta[:message]
        redirect_to root_url
      end

      if meta[:show_page]
        render :template => File.join('pages', meta[:show_page]) + '.html.erb' and return
      end
    else
      render :text => 'Error: Recipient not in white list'
    end
  else
    render :text => 'Error: Required Field Missing'
  end
end