We are following the standard rails guide for ActionMail guides.rubyonrails.org/action_mailer_basics.html
./script/generate mailer UserMailer
There is probably a much simpler way to so this, more on that later.
We are following the standard rails guide for ActionMail guides.rubyonrails.org/action_mailer_basics.html
./script/generate mailer UserMailer
There is probably a much simpler way to so this, more on that later.
require 'appengine-apis/users' | |
class SomeController < ApplicationController | |
def welcome | |
user = AppEngine::Users.current_user | |
env = AppEngine::ApiProxy.current_environment | |
UserMailer.deliver_welcome_email(user, env) | |
render :text => "email sent to: #{user.email}" | |
end | |
end |
class UserMailer < ActionMailer::Base | |
def welcome_email(user, env) | |
body_hash = {:user => user, :app => env} | |
recipients user.email | |
from user.email | |
subject "Welcome to My Awesome Site" | |
sent_on Time.now | |
body body_hash | |
end | |
end |
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> | |
<html> | |
<head> | |
<meta content="text/html; charset=UTF-8" http-equiv="Content-Type" /> | |
</head> | |
<body> | |
<h1>Welcome <%=h @user.nickname %></h1> | |
<p> | |
Thanks for visiting: <b><%=h @app.getAppId %></b><br/> | |
Your auth_domain is: <b><%=h @user.auth_domain %></b><br/> | |
</p> | |
<p>Have a great day!</p> | |
</body> | |
</html> |
# ... | |
if defined? JRUBY_VERSION | |
require "rails_appengine/action_mailer_vendored" | |
require "rails_appengine/active_support_vendored" | |
require "rails_appengine/bundler_boot" | |
end | |
# All that for this: | |
Rails.boot! |
# Be sure to restart your server when you modify this file | |
# Specifies gem version of Rails to use when vendor/rails is not present | |
RAILS_GEM_VERSION = '2.3.5' unless defined? RAILS_GEM_VERSION | |
# Bootstrap the Rails environment, frameworks, and default configuration | |
require File.join(File.dirname(__FILE__), 'boot') | |
Rails::Initializer.run do |config| | |
# Skip these so generators can run from MRI | |
if defined? JRUBY_VERSION | |
# Use vendored version of tmail | |
require 'rails_appengine/action_mailer_vendored' | |
# Use DataMapper to access datastore | |
require 'rails_dm_datastore' | |
# Set Logger from appengine-apis, all environments | |
require 'appengine-apis/logger' | |
config.logger = AppEngine::Logger.new | |
# Skip frameworks you're not going to use. | |
config.frameworks -= [ :active_record, :active_resource ] #, :action_mailer ] | |
end | |
# Skip plugin locators | |
config.plugin_locators -= [Rails::Plugin::GemLocator] | |
config.time_zone = 'UTC' | |
end |
if defined? JRUBY_VERSION | |
require 'java_mail' | |
ActionMailer::Base.delivery_method = :javamail | |
ActionMailer::Base.javamail_settings = { :protocol => :gm } | |
end |
# Critical default settings: | |
disable_system_gems | |
disable_rubygems | |
bundle_path '.gems/bundler_gems' | |
# List gems to bundle here: | |
gem 'jruby-openssl', '0.5.2' | |
gem 'rails', "2.3.5" | |
gem 'rails_dm_datastore', "0.2.5" | |
gem "actionmailer-javamail", :require_as => "java_mail" |