Sha256: f9b9cf8e9cab8dfd7a605ca3e20d014590fb65a44b7a32944d106c2c6e93b55c

Contents?: true

Size: 1.85 KB

Versions: 4

Compression:

Stored size: 1.85 KB

Contents

require 'sinatra/base'
require 'haml'

class SinatraApp < Sinatra::Base
  register Padrino::Mailer

  set :root, File.dirname(__FILE__)
  set :delivery_method, :smtp => {
    :address              => "smtp.gmail.com",
    :port                 => 587,
    :domain               => 'your.host.name',
    :user_name            => '<username>',
    :password             => '<password>',
    :authentication       => 'plain',
    :enable_starttls_auto => true
  }

  mailer :sample do
    email :birthday do |name, age|
      subject "Happy Birthday!"
      to      'john@fake.com'
      from    'noreply@birthday.com'
      locals  :name => name, :age => age
      via     :test
      render  'sample/birthday'
    end

    email :anniversary do |names, years_married|
      subject "Happy anniversary!"
      to   'julie@fake.com'
      from 'noreply@anniversary.com'
      locals :names => names, :years_married => years_married
      content_type :html
      via  :test
      render 'sample/anniversary'
    end

    message :welcome do |name|
      subject "Welcome Message!"
      to      'john@fake.com'
      from    'noreply@custom.com'
      locals  :name => name
      via     :test
      render  'sample/foo_message'
    end
  end

  post "/deliver/inline" do
    result = email(:to => "john@apple.com", :from => "joe@smith.com", :subject => "Test Email", :body => "Test Body", :via => :test)
    result ? "mail delivered" : 'mail not delivered'
  end

  post "/deliver/plain" do
    result = deliver(:sample, :birthday, "Joey", 21)
    result ? "mail delivered" : 'mail not delivered'
  end

  post "/deliver/html" do
    result = deliver(:sample, :anniversary, "Joey & Charlotte", 16)
    result ? "mail delivered" : 'mail not delivered'
  end

  post "/deliver/custom" do
    result = deliver(:sample, :welcome, "Bobby")
    result ? "mail delivered" : 'mail not delivered'
  end
end

Version data entries

4 entries across 4 versions & 1 rubygems

Version Path
padrino-mailer-0.9.14 test/fixtures/sinatra_app/app.rb
padrino-mailer-0.9.13 test/fixtures/sinatra_app/app.rb
padrino-mailer-0.9.12 test/fixtures/sinatra_app/app.rb
padrino-mailer-0.9.11 test/fixtures/sinatra_app/app.rb