public
Description: Globalization made easy with interface in place translations
Homepage: http://lucaguidi.com/projects/click-to-globalize
Clone URL: git://github.com/jodosha/click-to-globalize.git
Make sure observe_locales filter always yield the action even if #globalize? 
return false [#4 state:resolved]
jodosha (author)
Tue Aug 05 02:01:56 -0700 2008
commit  e19f1c8aa9eb176afe6cbc3c14a02e8c001749c7
tree    853683c7bcfc2748e4de61dfbebe7cab599d53f1
parent  1c2f76259bce4ec7662767e8c59a4684c92887d9
...
203
204
205
206
207
208
209
210
211
 
 
 
 
 
 
 
 
 
212
213
214
...
203
204
205
 
 
 
 
 
 
206
207
208
209
210
211
212
213
214
215
216
217
0
@@ -203,12 +203,15 @@ module Globalize # :nodoc:
0
       # request is processed.
0
       # <tt>LocaleObserver</tt> catches all translations and pass them to the session.
0
       def observe_locales
0
-        return unless globalize?
0
-        locale_observer = LocaleObserver.new
0
-        Locale.add_observer(locale_observer)
0
-        yield
0
-        Locale.remove_observer(locale_observer)
0
-        session[:__globalize_translations] = format_translations(locale_observer)
0
+        unless globalize?
0
+          yield
0
+        else
0
+          locale_observer = LocaleObserver.new
0
+          Locale.add_observer(locale_observer)
0
+          yield
0
+          Locale.remove_observer(locale_observer)
0
+          session[:__globalize_translations] = format_translations(locale_observer)
0
+        end
0
       end
0
       
0
       # Fetch the translations from the given LocaleObserver.
...
232
233
234
 
 
 
 
 
 
 
 
 
 
235
236
237
...
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
0
@@ -232,6 +232,16 @@ class ClickToGlobalizeTest < Test::Unit::TestCase
0
     end
0
   end
0
 
0
+  uses_mocha 'ClickToGlobalizeAroundFilterTest' do
0
+    def test_should_always_yield_action_even_if_globalize_returns_false
0
+      @controller.expects(:globalize?).returns false
0
+      
0
+      get :index, params
0
+      assert_response :success      
0
+      assert_nil translations
0
+    end
0
+  end
0
+
0
   uses_mocha 'ClickToGlobalizeFormattingTest' do
0
     def test_should_return_plain_translations
0
       Locale.stubs(:formatting).returns nil

Comments