aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSven Fuchs <svenfuchs@artweb-design.de>2008-07-04 22:34:32 +0200
committerSven Fuchs <svenfuchs@artweb-design.de>2008-07-04 22:34:32 +0200
commit34bd1e95c7a08c9266fc99281417dad4a19cdf73 (patch)
tree3d90b7684fea80045f47f94b7bc6be6a32608e02
parent8305d6759abe2b8511ccee35fd0998e6fb0dffd0 (diff)
downloadrails-34bd1e95c7a08c9266fc99281417dad4a19cdf73.tar.gz
rails-34bd1e95c7a08c9266fc99281417dad4a19cdf73.tar.bz2
rails-34bd1e95c7a08c9266fc99281417dad4a19cdf73.zip
Reverting changes to ActionMailer
Revert "Experimental I18n charset support for ActionMailer" This reverts commit 6982acb0793fb6e59f52cab4062344a88e3691ce. Conflicts: actionmailer/lib/action_mailer/base.rb
-rwxr-xr-xactionmailer/lib/action_mailer.rb4
-rw-r--r--actionmailer/lib/action_mailer/base.rb9
-rw-r--r--actionmailer/lib/action_mailer/locale/en-US.rb3
-rw-r--r--actionmailer/test/i18n_test.rb133
4 files changed, 0 insertions, 149 deletions
diff --git a/actionmailer/lib/action_mailer.rb b/actionmailer/lib/action_mailer.rb
index 806edf1f9e..2e324d4637 100755
--- a/actionmailer/lib/action_mailer.rb
+++ b/actionmailer/lib/action_mailer.rb
@@ -49,8 +49,4 @@ ActionMailer::Base.class_eval do
helper MailHelper
end
-I18n.backend.populate do
- require 'action_mailer/locale/en-US.rb'
-end
-
silence_warnings { TMail::Encoder.const_set("MAX_LINE_LEN", 200) }
diff --git a/actionmailer/lib/action_mailer/base.rb b/actionmailer/lib/action_mailer/base.rb
index f7da90d10f..b1f23583a6 100644
--- a/actionmailer/lib/action_mailer/base.rb
+++ b/actionmailer/lib/action_mailer/base.rb
@@ -344,15 +344,6 @@ module ActionMailer #:nodoc:
# have multiple mailer methods share the same template.
adv_attr_accessor :template
- # Specify the charset to use for the message.
- # It performs a lookup, on the specified charset, then on the charset from
- # the current locale, and, finally, on the +default_charset+ specified
- # for ActionMailer::Base.
- def charset(charset = nil)
- @charset ||= charset || I18n.translate(:charset) || @@default_charset
- end
- attr_writer :charset
-
# Override the mailer name, which defaults to an inflected version of the
# mailer's class name. If you want to use a template in a non-standard
# location, you can use this to specify that location.
diff --git a/actionmailer/lib/action_mailer/locale/en-US.rb b/actionmailer/lib/action_mailer/locale/en-US.rb
deleted file mode 100644
index 369f2d1a1c..0000000000
--- a/actionmailer/lib/action_mailer/locale/en-US.rb
+++ /dev/null
@@ -1,3 +0,0 @@
-I18n.backend.store_translations :'en-US', {
- :charset => 'utf-8'
-} \ No newline at end of file
diff --git a/actionmailer/test/i18n_test.rb b/actionmailer/test/i18n_test.rb
deleted file mode 100644
index 92b128bce6..0000000000
--- a/actionmailer/test/i18n_test.rb
+++ /dev/null
@@ -1,133 +0,0 @@
-require 'abstract_unit'
-
-class I18nMailer < ActionMailer::Base
- def use_locale_charset(recipient)
- recipients recipient
- subject "using locale charset"
- from "tester@example.com"
- body "x"
- end
-
- def use_explicit_charset(recipient)
- recipients recipient
- subject "using explicit charset"
- from "tester@example.com"
- body "x"
- charset "iso-8859-2"
- end
-
- def multiparted(recipient)
- recipients recipient
- subject "Multiparted"
- from "tester@example.com"
- body "x"
-
- part "text/html" do |p|
- p.body = "<b>multiparted iso-8859-1 html</b>"
- end
-
- part :content_type => "text/plain",
- :body => "multiparted utf-8 text",
- :charset => 'utf-8'
- end
-
- def rxml_template(recipient)
- recipients recipient
- subject "rendering rxml template"
- from "tester@example.com"
- end
-
- def initialize_defaults(method_name)
- super
- mailer_name "test_mailer"
- end
-end
-
-I18n.backend.store_translations :'en-GB', { }
-I18n.backend.store_translations :'de-DE', {
- :charset => 'iso-8859-1'
-}
-
-class I18nTest < Test::Unit::TestCase
- def setup
- @charset = 'utf-8'
- @recipient = 'test@localhost'
- end
-
- def test_should_use_locale_charset
- assert_equal @charset, mail.charset
- end
-
- def test_should_use_default_charset_if_no_current_locale
- uses_locale nil do
- assert_equal @charset, mail.charset
- end
- end
-
- def test_mail_headers_should_contains_current_charset
- uses_locale 'de-DE' do
- assert_match /iso-8859-1/, mail.header['content-type'].body
- end
- end
-
- def test_should_use_charset_from_current_locale
- uses_locale 'de-DE' do
- assert_equal 'iso-8859-1', mail.charset
- end
- end
-
- def test_should_raise_exception_if_current_locale_doesnt_specify_a_charset
- assert_raise I18n::MissingTranslationData do
- uses_locale 'en-GB' do
- mail
- end
- end
- end
-
- def test_should_use_explicit_charset
- assert_equal 'iso-8859-2', mail('use_explicit_charset').charset
- end
-
- def test_mail_parts_charsets
- uses_locale 'de-DE' do
- charsets = mail('multiparted').parts.map(&:charset)
- assert_equal 'iso-8859-1', charsets[0]
- assert_equal 'iso-8859-1', charsets[1]
- assert_equal 'utf-8', charsets[2]
- end
- end
-
- def test_mail_parts_headers
- uses_locale 'de-DE' do
- content_types = mail('multiparted').parts.map(&:header).map do |header|
- header['content-type'].body
- end
- assert_match /iso-8859-1/, content_types[0]
- assert_match /iso-8859-1/, content_types[1]
- assert_match /utf-8/, content_types[2]
- end
- end
-
- # TODO: this case depends on XML Builder,
- # should we pass Builder::XmlMarkup.new :encoding => charset_from_i18n ?
- def _ignore_test_rxml_template_should_use_current_charset
- uses_locale 'de-DE' do
- assert_equal "<?xml version=\"1.0\" encoding=\"iso-8859-1\"?>\n<test/>",
- mail('rxml_template').body.strip
- end
- end
-
- private
- def mail(method = 'use_locale_charset')
- I18nMailer.__send__('create_' + method, @recipient)
- end
-
- def uses_locale(locale, &block)
- begin
- I18n.locale = locale
- yield
- ensure
- I18n.locale = I18n.default_locale
- end
- end
-end