rdoc/classes/ActionController/MuckApplication/InstanceMethods.html in muck-engine-0.1.13 vs rdoc/classes/ActionController/MuckApplication/InstanceMethods.html in muck-engine-0.1.14
- old
+ new
@@ -74,11 +74,27 @@
</div>
+ <div id="method-list">
+ <h3 class="section-bar">Methods</h3>
+ <div class="name-list">
+ <a href="#M000003">discover_locale</a>
+ <a href="#M000004">extract_locale_from_browser</a>
+ <a href="#M000006">extract_locale_from_headers</a>
+ <a href="#M000008">extract_locale_from_subdomain</a>
+ <a href="#M000007">extract_locale_from_tld</a>
+ <a href="#M000005">extract_locale_from_user_selection</a>
+ <a href="#M000012">get_redirect_to</a>
+ <a href="#M000011">send_form_email</a>
+ <a href="#M000010">set_will_paginate_string</a>
+ <a href="#M000009">setup_paging</a>
+ </div>
+ </div>
+
</div>
<!-- if includes -->
@@ -90,9 +106,300 @@
<!-- if method_list -->
+ <div id="methods">
+ <h3 class="section-bar">Protected Instance methods</h3>
+
+ <div id="method-M000003" class="method-detail">
+ <a name="M000003"></a>
+
+ <div class="method-heading">
+ <a href="#M000003" class="method-signature">
+ <span class="method-name">discover_locale</span><span class="method-args">()</span>
+ </a>
+ </div>
+
+ <div class="method-description">
+ <p>
+********************************************** Locale methods I18n methods
+from: <a
+href="http://guides.rubyonrails.org/i18n.html">guides.rubyonrails.org/i18n.html</a>
+<a
+href="http://zargony.com/2009/01/09/selecting-the-locale-for-a-request">zargony.com/2009/01/09/selecting-the-locale-for-a-request</a>
+</p>
+ <p><a class="source-toggle" href="#"
+ onclick="toggleCode('M000003-source');return false;">[Source]</a></p>
+ <div class="method-source-code" id="M000003-source">
+<pre>
+ <span class="ruby-comment cmt"># File lib/action_controller/muck_application.rb, line 17</span>
+17: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">discover_locale</span>
+18: <span class="ruby-constant">I18n</span>.<span class="ruby-identifier">locale</span> = <span class="ruby-identifier">extract_locale_from_user_selection</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">extract_locale_from_tld</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">extract_locale_from_subdomain</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">extract_locale_from_headers</span> <span class="ruby-operator">||</span> <span class="ruby-constant">I18n</span>.<span class="ruby-identifier">default_locale</span>
+19: <span class="ruby-keyword kw">end</span>
+</pre>
+ </div>
+ </div>
+ </div>
+
+ <div id="method-M000004" class="method-detail">
+ <a name="M000004"></a>
+
+ <div class="method-heading">
+ <a href="#M000004" class="method-signature">
+ <span class="method-name">extract_locale_from_browser</span><span class="method-args">()</span>
+ </a>
+ </div>
+
+ <div class="method-description">
+ <p><a class="source-toggle" href="#"
+ onclick="toggleCode('M000004-source');return false;">[Source]</a></p>
+ <div class="method-source-code" id="M000004-source">
+<pre>
+ <span class="ruby-comment cmt"># File lib/action_controller/muck_application.rb, line 21</span>
+21: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">extract_locale_from_browser</span>
+22: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">http_lang</span> = <span class="ruby-identifier">request</span>.<span class="ruby-identifier">env</span>[<span class="ruby-value str">"HTTP_ACCEPT_LANGUAGE"</span>] <span class="ruby-keyword kw">and</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">http_lang</span>.<span class="ruby-identifier">blank?</span>
+23: <span class="ruby-identifier">browser_locale</span> = <span class="ruby-identifier">http_lang</span>[<span class="ruby-regexp re">/^[a-z]{2}/i</span>].<span class="ruby-identifier">downcase</span> <span class="ruby-operator">+</span> <span class="ruby-value str">'-'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">http_lang</span>[<span class="ruby-value">3</span>,<span class="ruby-value">2</span>].<span class="ruby-identifier">upcase</span>
+24: <span class="ruby-identifier">browser_locale</span>.<span class="ruby-identifier">sub!</span>(<span class="ruby-regexp re">/-US/</span>, <span class="ruby-value str">''</span>)
+25: <span class="ruby-keyword kw">end</span>
+26: <span class="ruby-keyword kw">nil</span>
+27: <span class="ruby-keyword kw">end</span>
+</pre>
+ </div>
+ </div>
+ </div>
+
+ <div id="method-M000006" class="method-detail">
+ <a name="M000006"></a>
+
+ <div class="method-heading">
+ <a href="#M000006" class="method-signature">
+ <span class="method-name">extract_locale_from_headers</span><span class="method-args">()</span>
+ </a>
+ </div>
+
+ <div class="method-description">
+ <p><a class="source-toggle" href="#"
+ onclick="toggleCode('M000006-source');return false;">[Source]</a></p>
+ <div class="method-source-code" id="M000006-source">
+<pre>
+ <span class="ruby-comment cmt"># File lib/action_controller/muck_application.rb, line 38</span>
+38: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">extract_locale_from_headers</span>
+39: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">http_lang</span> = <span class="ruby-identifier">request</span>.<span class="ruby-identifier">headers</span>[<span class="ruby-value str">"HTTP_ACCEPT_LANGUAGE"</span>] <span class="ruby-keyword kw">and</span> <span class="ruby-operator">!</span> <span class="ruby-identifier">http_lang</span>.<span class="ruby-identifier">blank?</span>
+40: <span class="ruby-identifier">preferred_locales</span> = <span class="ruby-identifier">http_lang</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">','</span>).<span class="ruby-identifier">map</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">l</span><span class="ruby-operator">|</span> <span class="ruby-identifier">l</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">';'</span>).<span class="ruby-identifier">first</span> }
+41: <span class="ruby-identifier">accepted_locales</span> = <span class="ruby-identifier">preferred_locales</span>.<span class="ruby-identifier">select</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">l</span><span class="ruby-operator">|</span> <span class="ruby-constant">I18n</span>.<span class="ruby-identifier">available_locales</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">l</span>.<span class="ruby-identifier">to_sym</span>) }
+42: <span class="ruby-identifier">accepted_locales</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-value">? </span><span class="ruby-keyword kw">nil</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">accepted_locales</span>.<span class="ruby-identifier">first</span>.<span class="ruby-identifier">to_sym</span>
+43: <span class="ruby-keyword kw">end</span>
+44: <span class="ruby-keyword kw">end</span>
+</pre>
+ </div>
+ </div>
+ </div>
+
+ <div id="method-M000008" class="method-detail">
+ <a name="M000008"></a>
+
+ <div class="method-heading">
+ <a href="#M000008" class="method-signature">
+ <span class="method-name">extract_locale_from_subdomain</span><span class="method-args">()</span>
+ </a>
+ </div>
+
+ <div class="method-description">
+ <p>
+Get locale code from request subdomain (like <a
+href="http://it.application.local:3000">it.application.local:3000</a>) You
+have to put something like: 127.0.0.1 gr.application.local in your
+/etc/hosts file to try this out locally
+</p>
+ <p><a class="source-toggle" href="#"
+ onclick="toggleCode('M000008-source');return false;">[Source]</a></p>
+ <div class="method-source-code" id="M000008-source">
+<pre>
+ <span class="ruby-comment cmt"># File lib/action_controller/muck_application.rb, line 59</span>
+59: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">extract_locale_from_subdomain</span>
+60: <span class="ruby-identifier">parsed_locale</span> = <span class="ruby-identifier">request</span>.<span class="ruby-identifier">subdomains</span>.<span class="ruby-identifier">first</span>
+61: <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">parsed_locale</span>.<span class="ruby-identifier">blank?</span>
+62: <span class="ruby-constant">I18n</span>.<span class="ruby-identifier">available_locales</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">parsed_locale</span>.<span class="ruby-identifier">to_sym</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">parsed_locale</span>.<span class="ruby-identifier">to_sym</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
+63: <span class="ruby-keyword kw">else</span>
+64: <span class="ruby-keyword kw">nil</span>
+65: <span class="ruby-keyword kw">end</span>
+66: <span class="ruby-keyword kw">end</span>
+</pre>
+ </div>
+ </div>
+ </div>
+
+ <div id="method-M000007" class="method-detail">
+ <a name="M000007"></a>
+
+ <div class="method-heading">
+ <a href="#M000007" class="method-signature">
+ <span class="method-name">extract_locale_from_tld</span><span class="method-args">()</span>
+ </a>
+ </div>
+
+ <div class="method-description">
+ <p>
+Get locale from top-level domain or return nil if such locale is not
+available You have to put something like: # 127.0.0.1 application.com
+127.0.0.1 application.it # 127.0.0.1 application.pl in your /etc/hosts file
+to try this out locally
+</p>
+ <p><a class="source-toggle" href="#"
+ onclick="toggleCode('M000007-source');return false;">[Source]</a></p>
+ <div class="method-source-code" id="M000007-source">
+<pre>
+ <span class="ruby-comment cmt"># File lib/action_controller/muck_application.rb, line 50</span>
+50: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">extract_locale_from_tld</span>
+51: <span class="ruby-identifier">parsed_locale</span> = <span class="ruby-identifier">request</span>.<span class="ruby-identifier">host</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">'.'</span>).<span class="ruby-identifier">last</span>
+52: (<span class="ruby-constant">I18n</span>.<span class="ruby-identifier">available_locales</span>.<span class="ruby-identifier">include?</span> <span class="ruby-identifier">parsed_locale</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">parsed_locale</span>.<span class="ruby-identifier">to_sym</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
+53: <span class="ruby-keyword kw">end</span>
+</pre>
+ </div>
+ </div>
+ </div>
+
+ <div id="method-M000005" class="method-detail">
+ <a name="M000005"></a>
+
+ <div class="method-heading">
+ <a href="#M000005" class="method-signature">
+ <span class="method-name">extract_locale_from_user_selection</span><span class="method-args">()</span>
+ </a>
+ </div>
+
+ <div class="method-description">
+ <p><a class="source-toggle" href="#"
+ onclick="toggleCode('M000005-source');return false;">[Source]</a></p>
+ <div class="method-source-code" id="M000005-source">
+<pre>
+ <span class="ruby-comment cmt"># File lib/action_controller/muck_application.rb, line 29</span>
+29: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">extract_locale_from_user_selection</span>
+30: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:locale</span>] <span class="ruby-operator">&&</span> <span class="ruby-constant">I18n</span>.<span class="ruby-identifier">available_locales</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:locale</span>].<span class="ruby-identifier">to_sym</span>)
+31: <span class="ruby-identifier">cookies</span>[<span class="ruby-value str">'locale'</span>] = { <span class="ruby-identifier">:value</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:locale</span>], <span class="ruby-identifier">:expires</span> =<span class="ruby-operator">></span> <span class="ruby-value">1</span>.<span class="ruby-identifier">year</span>.<span class="ruby-identifier">from_now</span> }
+32: <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:locale</span>].<span class="ruby-identifier">to_sym</span>
+33: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">cookies</span>[<span class="ruby-value str">'locale'</span>] <span class="ruby-operator">&&</span> <span class="ruby-constant">I18n</span>.<span class="ruby-identifier">available_locales</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">cookies</span>[<span class="ruby-value str">'locale'</span>].<span class="ruby-identifier">to_sym</span>)
+34: <span class="ruby-identifier">cookies</span>[<span class="ruby-value str">'locale'</span>].<span class="ruby-identifier">to_sym</span>
+35: <span class="ruby-keyword kw">end</span>
+36: <span class="ruby-keyword kw">end</span>
+</pre>
+ </div>
+ </div>
+ </div>
+
+ <div id="method-M000012" class="method-detail">
+ <a name="M000012"></a>
+
+ <div class="method-heading">
+ <a href="#M000012" class="method-signature">
+ <span class="method-name">get_redirect_to</span><span class="method-args">() {|| ...}</span>
+ </a>
+ </div>
+
+ <div class="method-description">
+ <p><a class="source-toggle" href="#"
+ onclick="toggleCode('M000012-source');return false;">[Source]</a></p>
+ <div class="method-source-code" id="M000012-source">
+<pre>
+ <span class="ruby-comment cmt"># File lib/action_controller/muck_application.rb, line 94</span>
+ 94: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">get_redirect_to</span>
+ 95: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:redirect_to</span>]
+ 96: <span class="ruby-identifier">redirect_to</span> <span class="ruby-identifier">params</span>[<span class="ruby-identifier">:redirect_to</span>]
+ 97: <span class="ruby-keyword kw">else</span>
+ 98: <span class="ruby-keyword kw">yield</span>
+ 99: <span class="ruby-keyword kw">end</span>
+100: <span class="ruby-keyword kw">end</span>
+</pre>
+ </div>
+ </div>
+ </div>
+
+ <div id="method-M000011" class="method-detail">
+ <a name="M000011"></a>
+
+ <div class="method-heading">
+ <a href="#M000011" class="method-signature">
+ <span class="method-name">send_form_email</span><span class="method-args">(params, subject)</span>
+ </a>
+ </div>
+
+ <div class="method-description">
+ <p>
+Use <a href="InstanceMethods.html#M000011">send_form_email</a> to send the
+contents of any form to the support email address
+</p>
+ <p><a class="source-toggle" href="#"
+ onclick="toggleCode('M000011-source');return false;">[Source]</a></p>
+ <div class="method-source-code" id="M000011-source">
+<pre>
+ <span class="ruby-comment cmt"># File lib/action_controller/muck_application.rb, line 87</span>
+87: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">send_form_email</span>(<span class="ruby-identifier">params</span>, <span class="ruby-identifier">subject</span>)
+88: <span class="ruby-identifier">body</span> = []
+89: <span class="ruby-identifier">params</span>.<span class="ruby-identifier">each_pair</span> { <span class="ruby-operator">|</span><span class="ruby-identifier">k</span>,<span class="ruby-identifier">v</span><span class="ruby-operator">|</span> <span class="ruby-identifier">body</span> <span class="ruby-operator"><<</span> <span class="ruby-node">"#{k}: #{v}"</span> }
+90: <span class="ruby-constant">BasicMailer</span>.<span class="ruby-identifier">deliver_mail</span>(<span class="ruby-identifier">:subject</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">subject</span>, <span class="ruby-identifier">:body</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">body</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">"\n"</span>))
+91: <span class="ruby-keyword kw">end</span>
+</pre>
+ </div>
+ </div>
+ </div>
+
+ <div id="method-M000010" class="method-detail">
+ <a name="M000010"></a>
+
+ <div class="method-heading">
+ <a href="#M000010" class="method-signature">
+ <span class="method-name">set_will_paginate_string</span><span class="method-args">()</span>
+ </a>
+ </div>
+
+ <div class="method-description">
+ <p><a class="source-toggle" href="#"
+ onclick="toggleCode('M000010-source');return false;">[Source]</a></p>
+ <div class="method-source-code" id="M000010-source">
+<pre>
+ <span class="ruby-comment cmt"># File lib/action_controller/muck_application.rb, line 76</span>
+76: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">set_will_paginate_string</span>
+77: <span class="ruby-comment cmt"># Because I18n.locale are dynamically determined in ApplicationController, </span>
+78: <span class="ruby-comment cmt"># it should not put in config/initializers/will_paginate.rb</span>
+79: <span class="ruby-constant">WillPaginate</span><span class="ruby-operator">::</span><span class="ruby-constant">ViewHelpers</span>.<span class="ruby-identifier">pagination_options</span>[<span class="ruby-identifier">:previous_label</span>] = <span class="ruby-identifier">t</span>(<span class="ruby-value str">'common.previous_page'</span>)
+80: <span class="ruby-constant">WillPaginate</span><span class="ruby-operator">::</span><span class="ruby-constant">ViewHelpers</span>.<span class="ruby-identifier">pagination_options</span>[<span class="ruby-identifier">:next_label</span>] = <span class="ruby-identifier">t</span>(<span class="ruby-value str">'common.next_page'</span>)
+81: <span class="ruby-keyword kw">end</span>
+</pre>
+ </div>
+ </div>
+ </div>
+
+ <div id="method-M000009" class="method-detail">
+ <a name="M000009"></a>
+
+ <div class="method-heading">
+ <a href="#M000009" class="method-signature">
+ <span class="method-name">setup_paging</span><span class="method-args">()</span>
+ </a>
+ </div>
+
+ <div class="method-description">
+ <p>
+********************************************** Paging methods
+</p>
+ <p><a class="source-toggle" href="#"
+ onclick="toggleCode('M000009-source');return false;">[Source]</a></p>
+ <div class="method-source-code" id="M000009-source">
+<pre>
+ <span class="ruby-comment cmt"># File lib/action_controller/muck_application.rb, line 70</span>
+70: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setup_paging</span>
+71: <span class="ruby-ivar">@page</span> = (<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:page</span>] <span class="ruby-operator">||</span> <span class="ruby-value">1</span>).<span class="ruby-identifier">to_i</span>
+72: <span class="ruby-ivar">@page</span> = <span class="ruby-value">1</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@page</span> <span class="ruby-operator"><</span> <span class="ruby-value">1</span>
+73: <span class="ruby-ivar">@per_page</span> = (<span class="ruby-identifier">params</span>[<span class="ruby-identifier">:per_page</span>] <span class="ruby-operator">||</span> (<span class="ruby-constant">RAILS_ENV</span><span class="ruby-operator">==</span><span class="ruby-value str">'test'</span> <span class="ruby-operator">?</span> <span class="ruby-value">1</span> <span class="ruby-operator">:</span> <span class="ruby-value">40</span>)).<span class="ruby-identifier">to_i</span>
+74: <span class="ruby-keyword kw">end</span>
+</pre>
+ </div>
+ </div>
+ </div>
+
+
+ </div>
</div>
\ No newline at end of file