mack-javascript 0.7.1 → 0.7.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. data/lib/mack-javascript.rb +4 -0
  2. data/lib/mack-javascript/helpers/jquery_helper.rb +6 -6
  3. data/lib/mack-javascript/helpers/script_generator.rb +4 -1
  4. data/lib/mack-javascript/view_helpers/html_helpers.rb +8 -4
  5. metadata +2 -30
  6. data/doc/classes/JavascriptGenerator.html +0 -162
  7. data/doc/classes/Mack.html +0 -133
  8. data/doc/classes/Mack/JavaScript/Framework/Jquery.html +0 -491
  9. data/doc/classes/Mack/JavaScript/Framework/Prototype.html +0 -438
  10. data/doc/classes/Mack/JavaScript/ScriptGenerator.html +0 -367
  11. data/doc/classes/Mack/Rendering/Engine/Rjs.html +0 -185
  12. data/doc/classes/Mack/Rendering/Engine/Rjs/ViewTemplateHelpers.html +0 -140
  13. data/doc/classes/Mack/Rendering/Type/Js.html +0 -180
  14. data/doc/classes/Mack/Testing/Helpers.html +0 -144
  15. data/doc/classes/Mack/ViewHelpers/HtmlHelpers.html +0 -240
  16. data/doc/classes/Mack/ViewHelpers/StringHelpers.html +0 -143
  17. data/doc/created.rid +0 -1
  18. data/doc/files/README.html +0 -111
  19. data/doc/files/lib/mack-javascript/generators/javascript_generator_rb.html +0 -113
  20. data/doc/files/lib/mack-javascript/helpers/jquery_helper_rb.html +0 -101
  21. data/doc/files/lib/mack-javascript/helpers/prototype_helper_rb.html +0 -101
  22. data/doc/files/lib/mack-javascript/helpers/script_generator_rb.html +0 -101
  23. data/doc/files/lib/mack-javascript/helpers/testing_helpers_rb.html +0 -101
  24. data/doc/files/lib/mack-javascript/rendering/engine/rjs_rb.html +0 -101
  25. data/doc/files/lib/mack-javascript/rendering/type/js_rb.html +0 -101
  26. data/doc/files/lib/mack-javascript/view_helpers/html_helpers_rb.html +0 -101
  27. data/doc/files/lib/mack-javascript/view_helpers/string_helpers_rb.html +0 -101
  28. data/doc/files/lib/mack-javascript_rb.html +0 -107
  29. data/doc/fr_class_index.html +0 -37
  30. data/doc/fr_file_index.html +0 -37
  31. data/doc/fr_method_index.html +0 -69
  32. data/doc/index.html +0 -24
  33. data/doc/rdoc-style.css +0 -208
@@ -16,3 +16,7 @@ dir_globs.each do |d|
16
16
  require d
17
17
  end
18
18
 
19
+ dir_globs = Dir.glob(File.join(fl, "view_helpers", "**/*.rb"))
20
+ dir_globs.each do |d|
21
+ require d
22
+ end
@@ -7,7 +7,7 @@ module Mack
7
7
  insertion = position.to_s.downcase
8
8
  insertion = 'append' if insertion == 'bottom'
9
9
  insertion = 'prepend' if insertion == 'top'
10
- "$(\"##{id}\").#{insertion}('#{html}')"
10
+ "$(\'##{id}\').#{insertion}('#{html}')"
11
11
  end
12
12
 
13
13
  def replace_html(id, html)
@@ -15,23 +15,23 @@ module Mack
15
15
  end
16
16
 
17
17
  def replace(id, html)
18
- "$(\"##{id}\").replaceWith('#{html}')"
18
+ "$(\'##{id}\').replaceWith('#{html}')"
19
19
  end
20
20
 
21
21
  def remove(*ids)
22
- "$(\"##{ids.join(',#')}\").remove()"
22
+ "$(\'##{ids.join(',#')}\').remove()"
23
23
  end
24
24
 
25
25
  def show(*ids)
26
- "$(\"##{ids.join(',#')}\").show()"
26
+ "$(\'##{ids.join(',#')}\').show()"
27
27
  end
28
28
 
29
29
  def hide(*ids)
30
- "$(\"##{ids.join(',#')}\").hide()"
30
+ "$(\'##{ids.join(',#')}\').hide()"
31
31
  end
32
32
 
33
33
  def toggle(*ids)
34
- "$(\"##{ids.join(',#')}\").toggle()"
34
+ "$(\'##{ids.join(',#')}\').toggle()"
35
35
  end
36
36
 
37
37
 
@@ -39,10 +39,13 @@ module Mack
39
39
  class << self
40
40
 
41
41
  def framework
42
- "Mack::JavaScript::Framework::#{framework_name}".constantize
42
+ ivar_cache('framework_constant') do
43
+ "Mack::JavaScript::Framework::#{framework_name}".constantize
44
+ end
43
45
  end
44
46
 
45
47
  def framework=(args)
48
+ @framework_constant = nil
46
49
  @@framework_name = args.camelcase
47
50
  end
48
51
 
@@ -15,9 +15,9 @@ module Mack
15
15
  # $('my_hidden_div').show();
16
16
  # </script>
17
17
  def update_page(&block)
18
- sg = Mack::JavaScript::ScriptGenerator.new
19
- yield(sg)
20
- "<script type='#{Mack::Utils::MimeTypes[:js]}'>\n" + sg.to_s.gsub(';', ";\n") + "</script>"
18
+ gs = js
19
+ yield(gs)
20
+ "<script type='#{Mack::Utils::MimeTypes[:js]}'>\n" + gs.to_s.gsub(';', ";\n") + "</script>"
21
21
  end
22
22
 
23
23
  def link_to_remote(link_text, ajax_options, options = {})
@@ -27,7 +27,7 @@ module Mack
27
27
  def link_to_function(link_text, *args, &block)
28
28
  function = args[0] || ''
29
29
  options = args[1] || {}
30
- function = yield(Mack::JavaScript::ScriptGenerator.new).chop if block_given?
30
+ function = yield(js).chop if block_given?
31
31
  options[:onclick] = (options[:onclick] ? "#{options[:onclick]}; " : "") + "#{function}; return false;"
32
32
  link_to(link_text, '#', options)
33
33
  end
@@ -37,6 +37,10 @@ module Mack
37
37
  Mack::JavaScript::ScriptGenerator.framework.remote_function(options)
38
38
  end
39
39
 
40
+ def js
41
+ Mack::JavaScript::ScriptGenerator.new
42
+ end
43
+
40
44
  end
41
45
  end
42
46
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: mack-javascript
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.7.1
4
+ version: 0.7.1.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Gerardo Pis-Lopez
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2008-09-08 00:00:00 -04:00
12
+ date: 2008-09-14 00:00:00 -04:00
13
13
  default_executable:
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
@@ -50,34 +50,6 @@ files:
50
50
  - lib/mack-javascript/view_helpers/string_helpers.rb
51
51
  - lib/mack-javascript.rb
52
52
  - README
53
- - doc/classes/JavascriptGenerator.html
54
- - doc/classes/Mack/JavaScript/Framework/Jquery.html
55
- - doc/classes/Mack/JavaScript/Framework/Prototype.html
56
- - doc/classes/Mack/JavaScript/ScriptGenerator.html
57
- - doc/classes/Mack/Rendering/Engine/Rjs/ViewTemplateHelpers.html
58
- - doc/classes/Mack/Rendering/Engine/Rjs.html
59
- - doc/classes/Mack/Rendering/Type/Js.html
60
- - doc/classes/Mack/Testing/Helpers.html
61
- - doc/classes/Mack/ViewHelpers/HtmlHelpers.html
62
- - doc/classes/Mack/ViewHelpers/StringHelpers.html
63
- - doc/classes/Mack.html
64
- - doc/created.rid
65
- - doc/files/lib/mack-javascript/generators/javascript_generator_rb.html
66
- - doc/files/lib/mack-javascript/helpers/jquery_helper_rb.html
67
- - doc/files/lib/mack-javascript/helpers/prototype_helper_rb.html
68
- - doc/files/lib/mack-javascript/helpers/script_generator_rb.html
69
- - doc/files/lib/mack-javascript/helpers/testing_helpers_rb.html
70
- - doc/files/lib/mack-javascript/rendering/engine/rjs_rb.html
71
- - doc/files/lib/mack-javascript/rendering/type/js_rb.html
72
- - doc/files/lib/mack-javascript/view_helpers/html_helpers_rb.html
73
- - doc/files/lib/mack-javascript/view_helpers/string_helpers_rb.html
74
- - doc/files/lib/mack-javascript_rb.html
75
- - doc/files/README.html
76
- - doc/fr_class_index.html
77
- - doc/fr_file_index.html
78
- - doc/fr_method_index.html
79
- - doc/index.html
80
- - doc/rdoc-style.css
81
53
  has_rdoc: true
82
54
  homepage: http://www.mackframework.com
83
55
  post_install_message:
@@ -1,162 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Class: JavascriptGenerator</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Class</strong></td>
53
- <td class="class-name-in-header">JavascriptGenerator</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../files/lib/mack-javascript/generators/javascript_generator_rb.html">
59
- lib/mack-javascript/generators/javascript_generator.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- <tr class="top-aligned-row">
66
- <td><strong>Parent:</strong></td>
67
- <td>
68
- Genosaurus
69
- </td>
70
- </tr>
71
- </table>
72
- </div>
73
- <!-- banner header -->
74
-
75
- <div id="bodyContent">
76
-
77
-
78
-
79
- <div id="contextContent">
80
-
81
- <div id="description">
82
- <p>
83
- This will generate required RJS support in your application.
84
- </p>
85
- <p>
86
- example:
87
- </p>
88
- <pre>
89
- rake generate:javascript
90
- </pre>
91
-
92
- </div>
93
-
94
-
95
- </div>
96
-
97
- <div id="method-list">
98
- <h3 class="section-bar">Methods</h3>
99
-
100
- <div class="name-list">
101
- <a href="#M000001">setup</a>&nbsp;&nbsp;
102
- </div>
103
- </div>
104
-
105
- </div>
106
-
107
-
108
- <!-- if includes -->
109
-
110
- <div id="section">
111
-
112
-
113
-
114
-
115
-
116
-
117
-
118
-
119
- <!-- if method_list -->
120
- <div id="methods">
121
- <h3 class="section-bar">Public Instance methods</h3>
122
-
123
- <div id="method-M000001" class="method-detail">
124
- <a name="M000001"></a>
125
-
126
- <div class="method-heading">
127
- <a href="#M000001" class="method-signature">
128
- <span class="method-name">setup</span><span class="method-args">()</span>
129
- </a>
130
- </div>
131
-
132
- <div class="method-description">
133
- <p><a class="source-toggle" href="#"
134
- onclick="toggleCode('M000001-source');return false;">[Source]</a></p>
135
- <div class="method-source-code" id="M000001-source">
136
- <pre>
137
- <span class="ruby-comment cmt"># File lib/mack-javascript/generators/javascript_generator.rb, line 8</span>
138
- 8: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setup</span>
139
- 9: <span class="ruby-identifier">error</span> = <span class="ruby-value str">%{ 'js_framework' is not specified in your app_config/default.yml file.
140
- 10: To fix this error, please open your {PROJ}/config/app_config/default.yml file, then uncomment
141
- 11: the line that says &quot;# js_framework: jquery&quot; (or prototype, if you specified prototype as the js framework).
142
- 12: Once you have uncomment that line, please re-run 'rake generate:javascript' again. Thanks!}</span>
143
- 13: <span class="ruby-identifier">raise</span> <span class="ruby-identifier">error</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">app_config</span>.<span class="ruby-identifier">mack</span>.<span class="ruby-identifier">js_framework</span>
144
- 14: <span class="ruby-keyword kw">end</span>
145
- </pre>
146
- </div>
147
- </div>
148
- </div>
149
-
150
-
151
- </div>
152
-
153
-
154
- </div>
155
-
156
-
157
- <div id="validator-badges">
158
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
159
- </div>
160
-
161
- </body>
162
- </html>
@@ -1,133 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Module: Mack</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Module</strong></td>
53
- <td class="class-name-in-header">Mack</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../files/lib/mack-javascript/helpers/jquery_helper_rb.html">
59
- lib/mack-javascript/helpers/jquery_helper.rb
60
- </a>
61
- <br />
62
- <a href="../files/lib/mack-javascript/helpers/prototype_helper_rb.html">
63
- lib/mack-javascript/helpers/prototype_helper.rb
64
- </a>
65
- <br />
66
- <a href="../files/lib/mack-javascript/helpers/script_generator_rb.html">
67
- lib/mack-javascript/helpers/script_generator.rb
68
- </a>
69
- <br />
70
- <a href="../files/lib/mack-javascript/helpers/testing_helpers_rb.html">
71
- lib/mack-javascript/helpers/testing_helpers.rb
72
- </a>
73
- <br />
74
- <a href="../files/lib/mack-javascript/rendering/engine/rjs_rb.html">
75
- lib/mack-javascript/rendering/engine/rjs.rb
76
- </a>
77
- <br />
78
- <a href="../files/lib/mack-javascript/rendering/type/js_rb.html">
79
- lib/mack-javascript/rendering/type/js.rb
80
- </a>
81
- <br />
82
- <a href="../files/lib/mack-javascript/view_helpers/html_helpers_rb.html">
83
- lib/mack-javascript/view_helpers/html_helpers.rb
84
- </a>
85
- <br />
86
- <a href="../files/lib/mack-javascript/view_helpers/string_helpers_rb.html">
87
- lib/mack-javascript/view_helpers/string_helpers.rb
88
- </a>
89
- <br />
90
- </td>
91
- </tr>
92
-
93
- </table>
94
- </div>
95
- <!-- banner header -->
96
-
97
- <div id="bodyContent">
98
-
99
-
100
-
101
- <div id="contextContent">
102
-
103
-
104
-
105
- </div>
106
-
107
-
108
- </div>
109
-
110
-
111
- <!-- if includes -->
112
-
113
- <div id="section">
114
-
115
-
116
-
117
-
118
-
119
-
120
-
121
-
122
- <!-- if method_list -->
123
-
124
-
125
- </div>
126
-
127
-
128
- <div id="validator-badges">
129
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
130
- </div>
131
-
132
- </body>
133
- </html>
@@ -1,491 +0,0 @@
1
- <?xml version="1.0" encoding="iso-8859-1"?>
2
- <!DOCTYPE html
3
- PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
4
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
5
-
6
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
7
- <head>
8
- <title>Class: Mack::JavaScript::Framework::Jquery</title>
9
- <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
10
- <meta http-equiv="Content-Script-Type" content="text/javascript" />
11
- <link rel="stylesheet" href="../../../.././rdoc-style.css" type="text/css" media="screen" />
12
- <script type="text/javascript">
13
- // <![CDATA[
14
-
15
- function popupCode( url ) {
16
- window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
17
- }
18
-
19
- function toggleCode( id ) {
20
- if ( document.getElementById )
21
- elem = document.getElementById( id );
22
- else if ( document.all )
23
- elem = eval( "document.all." + id );
24
- else
25
- return false;
26
-
27
- elemStyle = elem.style;
28
-
29
- if ( elemStyle.display != "block" ) {
30
- elemStyle.display = "block"
31
- } else {
32
- elemStyle.display = "none"
33
- }
34
-
35
- return true;
36
- }
37
-
38
- // Make codeblocks hidden by default
39
- document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
40
-
41
- // ]]>
42
- </script>
43
-
44
- </head>
45
- <body>
46
-
47
-
48
-
49
- <div id="classHeader">
50
- <table class="header-table">
51
- <tr class="top-aligned-row">
52
- <td><strong>Class</strong></td>
53
- <td class="class-name-in-header">Mack::JavaScript::Framework::Jquery</td>
54
- </tr>
55
- <tr class="top-aligned-row">
56
- <td><strong>In:</strong></td>
57
- <td>
58
- <a href="../../../../files/lib/mack-javascript/helpers/jquery_helper_rb.html">
59
- lib/mack-javascript/helpers/jquery_helper.rb
60
- </a>
61
- <br />
62
- </td>
63
- </tr>
64
-
65
- <tr class="top-aligned-row">
66
- <td><strong>Parent:</strong></td>
67
- <td>
68
- Object
69
- </td>
70
- </tr>
71
- </table>
72
- </div>
73
- <!-- banner header -->
74
-
75
- <div id="bodyContent">
76
-
77
-
78
-
79
- <div id="contextContent">
80
-
81
-
82
-
83
- </div>
84
-
85
- <div id="method-list">
86
- <h3 class="section-bar">Methods</h3>
87
-
88
- <div class="name-list">
89
- <a href="#M000021">build_callbacks</a>&nbsp;&nbsp;
90
- <a href="#M000022">build_update</a>&nbsp;&nbsp;
91
- <a href="#M000016">hide</a>&nbsp;&nbsp;
92
- <a href="#M000011">insert_html</a>&nbsp;&nbsp;
93
- <a href="#M000019">options_for_ajax</a>&nbsp;&nbsp;
94
- <a href="#M000020">options_for_javascript</a>&nbsp;&nbsp;
95
- <a href="#M000018">remote_function</a>&nbsp;&nbsp;
96
- <a href="#M000014">remove</a>&nbsp;&nbsp;
97
- <a href="#M000013">replace</a>&nbsp;&nbsp;
98
- <a href="#M000012">replace_html</a>&nbsp;&nbsp;
99
- <a href="#M000015">show</a>&nbsp;&nbsp;
100
- <a href="#M000017">toggle</a>&nbsp;&nbsp;
101
- </div>
102
- </div>
103
-
104
- </div>
105
-
106
-
107
- <!-- if includes -->
108
-
109
- <div id="section">
110
-
111
-
112
-
113
-
114
-
115
-
116
-
117
-
118
- <!-- if method_list -->
119
- <div id="methods">
120
- <h3 class="section-bar">Public Class methods</h3>
121
-
122
- <div id="method-M000016" class="method-detail">
123
- <a name="M000016"></a>
124
-
125
- <div class="method-heading">
126
- <a href="#M000016" class="method-signature">
127
- <span class="method-name">hide</span><span class="method-args">(*ids)</span>
128
- </a>
129
- </div>
130
-
131
- <div class="method-description">
132
- <p><a class="source-toggle" href="#"
133
- onclick="toggleCode('M000016-source');return false;">[Source]</a></p>
134
- <div class="method-source-code" id="M000016-source">
135
- <pre>
136
- <span class="ruby-comment cmt"># File lib/mack-javascript/helpers/jquery_helper.rb, line 29</span>
137
- 29: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">hide</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">ids</span>)
138
- 30: <span class="ruby-node">&quot;$(\&quot;##{ids.join(',#')}\&quot;).hide()&quot;</span>
139
- 31: <span class="ruby-keyword kw">end</span>
140
- </pre>
141
- </div>
142
- </div>
143
- </div>
144
-
145
- <div id="method-M000011" class="method-detail">
146
- <a name="M000011"></a>
147
-
148
- <div class="method-heading">
149
- <a href="#M000011" class="method-signature">
150
- <span class="method-name">insert_html</span><span class="method-args">(position, id, html)</span>
151
- </a>
152
- </div>
153
-
154
- <div class="method-description">
155
- <p><a class="source-toggle" href="#"
156
- onclick="toggleCode('M000011-source');return false;">[Source]</a></p>
157
- <div class="method-source-code" id="M000011-source">
158
- <pre>
159
- <span class="ruby-comment cmt"># File lib/mack-javascript/helpers/jquery_helper.rb, line 6</span>
160
- 6: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">insert_html</span>(<span class="ruby-identifier">position</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">html</span>)
161
- 7: <span class="ruby-identifier">insertion</span> = <span class="ruby-identifier">position</span>.<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">downcase</span>
162
- 8: <span class="ruby-identifier">insertion</span> = <span class="ruby-value str">'append'</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">insertion</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'bottom'</span>
163
- 9: <span class="ruby-identifier">insertion</span> = <span class="ruby-value str">'prepend'</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">insertion</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'top'</span>
164
- 10: <span class="ruby-node">&quot;$(\&quot;##{id}\&quot;).#{insertion}('#{html}')&quot;</span>
165
- 11: <span class="ruby-keyword kw">end</span>
166
- </pre>
167
- </div>
168
- </div>
169
- </div>
170
-
171
- <div id="method-M000018" class="method-detail">
172
- <a name="M000018"></a>
173
-
174
- <div class="method-heading">
175
- <a href="#M000018" class="method-signature">
176
- <span class="method-name">remote_function</span><span class="method-args">(options)</span>
177
- </a>
178
- </div>
179
-
180
- <div class="method-description">
181
- <p>
182
- def draggable(id, options = {})
183
- </p>
184
- <pre>
185
- record @context.send(:draggable_element_js, id, options)
186
- </pre>
187
- <p>
188
- end
189
- </p>
190
- <p>
191
- def visual_effect(name, id = nil, options = {})
192
- </p>
193
- <pre>
194
- record @context.send(:visual_effect, name, id, options)
195
- </pre>
196
- <p>
197
- end
198
- </p>
199
- <p>
200
- def drop_receiving(id, options = {})
201
- </p>
202
- <pre>
203
- record @context.send(:drop_receiving_element_js, id, options)
204
- </pre>
205
- <p>
206
- end
207
- </p>
208
- <p><a class="source-toggle" href="#"
209
- onclick="toggleCode('M000018-source');return false;">[Source]</a></p>
210
- <div class="method-source-code" id="M000018-source">
211
- <pre>
212
- <span class="ruby-comment cmt"># File lib/mack-javascript/helpers/jquery_helper.rb, line 50</span>
213
- 50: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">remote_function</span>(<span class="ruby-identifier">options</span>)
214
- 51: <span class="ruby-identifier">javascript_options</span> = <span class="ruby-identifier">options_for_ajax</span>(<span class="ruby-identifier">options</span>)
215
- 52: <span class="ruby-identifier">update</span> = <span class="ruby-value str">''</span>
216
- 53: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:update</span>] <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:update</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Hash</span>)
217
- 54: <span class="ruby-identifier">update</span> = []
218
- 55: <span class="ruby-identifier">update</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;success:'#{options[:update][:success]}'&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:update</span>][<span class="ruby-identifier">:success</span>]
219
- 56: <span class="ruby-identifier">update</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;failure:'#{options[:update][:failure]}'&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:update</span>][<span class="ruby-identifier">:failure</span>]
220
- 57: <span class="ruby-identifier">update</span> = <span class="ruby-value str">'{'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">update</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">','</span>) <span class="ruby-operator">+</span> <span class="ruby-value str">'}'</span>
221
- 58: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:update</span>]
222
- 59: <span class="ruby-identifier">update</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;'#{options[:update]}'&quot;</span>
223
- 60: <span class="ruby-keyword kw">end</span>
224
- 61:
225
- 62: <span class="ruby-identifier">function</span> = <span class="ruby-node">&quot;$.ajax(#{javascript_options})&quot;</span>
226
- 63:
227
- 64: <span class="ruby-identifier">function</span> = <span class="ruby-node">&quot;#{options[:before]}; #{function}&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:before</span>]
228
- 65: <span class="ruby-identifier">function</span> = <span class="ruby-node">&quot;#{function}; #{options[:after]}&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:after</span>]
229
- 66: <span class="ruby-identifier">function</span> = <span class="ruby-node">&quot;if (#{options[:condition]}) { #{function}; }&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:condition</span>]
230
- 67: <span class="ruby-identifier">function</span> = <span class="ruby-node">&quot;if (confirm('#{escape_javascript(options[:confirm])}')) { #{function}; }&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:confirm</span>]
231
- 68: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">function</span>
232
- 69: <span class="ruby-keyword kw">end</span>
233
- </pre>
234
- </div>
235
- </div>
236
- </div>
237
-
238
- <div id="method-M000014" class="method-detail">
239
- <a name="M000014"></a>
240
-
241
- <div class="method-heading">
242
- <a href="#M000014" class="method-signature">
243
- <span class="method-name">remove</span><span class="method-args">(*ids)</span>
244
- </a>
245
- </div>
246
-
247
- <div class="method-description">
248
- <p><a class="source-toggle" href="#"
249
- onclick="toggleCode('M000014-source');return false;">[Source]</a></p>
250
- <div class="method-source-code" id="M000014-source">
251
- <pre>
252
- <span class="ruby-comment cmt"># File lib/mack-javascript/helpers/jquery_helper.rb, line 21</span>
253
- 21: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">remove</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">ids</span>)
254
- 22: <span class="ruby-node">&quot;$(\&quot;##{ids.join(',#')}\&quot;).remove()&quot;</span>
255
- 23: <span class="ruby-keyword kw">end</span>
256
- </pre>
257
- </div>
258
- </div>
259
- </div>
260
-
261
- <div id="method-M000013" class="method-detail">
262
- <a name="M000013"></a>
263
-
264
- <div class="method-heading">
265
- <a href="#M000013" class="method-signature">
266
- <span class="method-name">replace</span><span class="method-args">(id, html)</span>
267
- </a>
268
- </div>
269
-
270
- <div class="method-description">
271
- <p><a class="source-toggle" href="#"
272
- onclick="toggleCode('M000013-source');return false;">[Source]</a></p>
273
- <div class="method-source-code" id="M000013-source">
274
- <pre>
275
- <span class="ruby-comment cmt"># File lib/mack-javascript/helpers/jquery_helper.rb, line 17</span>
276
- 17: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">replace</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">html</span>)
277
- 18: <span class="ruby-node">&quot;$(\&quot;##{id}\&quot;).replaceWith('#{html}')&quot;</span>
278
- 19: <span class="ruby-keyword kw">end</span>
279
- </pre>
280
- </div>
281
- </div>
282
- </div>
283
-
284
- <div id="method-M000012" class="method-detail">
285
- <a name="M000012"></a>
286
-
287
- <div class="method-heading">
288
- <a href="#M000012" class="method-signature">
289
- <span class="method-name">replace_html</span><span class="method-args">(id, html)</span>
290
- </a>
291
- </div>
292
-
293
- <div class="method-description">
294
- <p><a class="source-toggle" href="#"
295
- onclick="toggleCode('M000012-source');return false;">[Source]</a></p>
296
- <div class="method-source-code" id="M000012-source">
297
- <pre>
298
- <span class="ruby-comment cmt"># File lib/mack-javascript/helpers/jquery_helper.rb, line 13</span>
299
- 13: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">replace_html</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">html</span>)
300
- 14: <span class="ruby-identifier">insert_html</span>(<span class="ruby-identifier">:html</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">html</span>)
301
- 15: <span class="ruby-keyword kw">end</span>
302
- </pre>
303
- </div>
304
- </div>
305
- </div>
306
-
307
- <div id="method-M000015" class="method-detail">
308
- <a name="M000015"></a>
309
-
310
- <div class="method-heading">
311
- <a href="#M000015" class="method-signature">
312
- <span class="method-name">show</span><span class="method-args">(*ids)</span>
313
- </a>
314
- </div>
315
-
316
- <div class="method-description">
317
- <p><a class="source-toggle" href="#"
318
- onclick="toggleCode('M000015-source');return false;">[Source]</a></p>
319
- <div class="method-source-code" id="M000015-source">
320
- <pre>
321
- <span class="ruby-comment cmt"># File lib/mack-javascript/helpers/jquery_helper.rb, line 25</span>
322
- 25: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">show</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">ids</span>)
323
- 26: <span class="ruby-node">&quot;$(\&quot;##{ids.join(',#')}\&quot;).show()&quot;</span>
324
- 27: <span class="ruby-keyword kw">end</span>
325
- </pre>
326
- </div>
327
- </div>
328
- </div>
329
-
330
- <div id="method-M000017" class="method-detail">
331
- <a name="M000017"></a>
332
-
333
- <div class="method-heading">
334
- <a href="#M000017" class="method-signature">
335
- <span class="method-name">toggle</span><span class="method-args">(*ids)</span>
336
- </a>
337
- </div>
338
-
339
- <div class="method-description">
340
- <p><a class="source-toggle" href="#"
341
- onclick="toggleCode('M000017-source');return false;">[Source]</a></p>
342
- <div class="method-source-code" id="M000017-source">
343
- <pre>
344
- <span class="ruby-comment cmt"># File lib/mack-javascript/helpers/jquery_helper.rb, line 33</span>
345
- 33: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">toggle</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">ids</span>)
346
- 34: <span class="ruby-node">&quot;$(\&quot;##{ids.join(',#')}\&quot;).toggle()&quot;</span>
347
- 35: <span class="ruby-keyword kw">end</span>
348
- </pre>
349
- </div>
350
- </div>
351
- </div>
352
-
353
- <h3 class="section-bar">Protected Class methods</h3>
354
-
355
- <div id="method-M000021" class="method-detail">
356
- <a name="M000021"></a>
357
-
358
- <div class="method-heading">
359
- <a href="#M000021" class="method-signature">
360
- <span class="method-name">build_callbacks</span><span class="method-args">(options)</span>
361
- </a>
362
- </div>
363
-
364
- <div class="method-description">
365
- <p><a class="source-toggle" href="#"
366
- onclick="toggleCode('M000021-source');return false;">[Source]</a></p>
367
- <div class="method-source-code" id="M000021-source">
368
- <pre>
369
- <span class="ruby-comment cmt"># File lib/mack-javascript/helpers/jquery_helper.rb, line 93</span>
370
- 93: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">build_callbacks</span>(<span class="ruby-identifier">options</span>)
371
- 94: <span class="ruby-identifier">callbacks</span> = {}
372
- 95: <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:beforeSend</span>] = <span class="ruby-value str">''</span>;
373
- 96: [<span class="ruby-identifier">:uninitialized</span>,<span class="ruby-identifier">:loading</span>,<span class="ruby-identifier">:loaded</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span>
374
- 97: <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:beforeSend</span>] <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">options</span>[<span class="ruby-identifier">key</span>].<span class="ruby-identifier">last</span> <span class="ruby-operator">==</span> <span class="ruby-value str">';'</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">key</span>) <span class="ruby-operator">:</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">key</span>) <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">';'</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">key</span>]
375
- 98: <span class="ruby-keyword kw">end</span>
376
- 99: <span class="ruby-identifier">options</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">:beforeSend</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:beforeSend</span>].<span class="ruby-identifier">blank?</span>
377
- 100: <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:error</span>] = <span class="ruby-identifier">options</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">:failure</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:failure</span>]
378
- 101: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:update</span>]
379
- 102: <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:success</span>] = <span class="ruby-identifier">build_update</span>(<span class="ruby-identifier">options</span>) <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">options</span>[<span class="ruby-identifier">:success</span>] <span class="ruby-operator">?</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:success</span>] <span class="ruby-operator">:</span> <span class="ruby-value str">''</span>)
380
- 103: <span class="ruby-keyword kw">end</span>
381
- 104: <span class="ruby-identifier">options</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">callback</span>, <span class="ruby-identifier">code</span><span class="ruby-operator">|</span>
382
- 105: <span class="ruby-keyword kw">if</span> [<span class="ruby-identifier">:beforeSend</span>, <span class="ruby-identifier">:complete</span>, <span class="ruby-identifier">:error</span>, <span class="ruby-identifier">:success</span> ].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">callback</span>)
383
- 106: <span class="ruby-identifier">callbacks</span>[<span class="ruby-identifier">callback</span>] = <span class="ruby-node">&quot;function(request){#{code}}&quot;</span>
384
- 107: <span class="ruby-keyword kw">end</span>
385
- 108: <span class="ruby-keyword kw">end</span>
386
- 109: <span class="ruby-identifier">callbacks</span>
387
- 110: <span class="ruby-keyword kw">end</span>
388
- </pre>
389
- </div>
390
- </div>
391
- </div>
392
-
393
- <div id="method-M000022" class="method-detail">
394
- <a name="M000022"></a>
395
-
396
- <div class="method-heading">
397
- <a href="#M000022" class="method-signature">
398
- <span class="method-name">build_update</span><span class="method-args">(options)</span>
399
- </a>
400
- </div>
401
-
402
- <div class="method-description">
403
- <p><a class="source-toggle" href="#"
404
- onclick="toggleCode('M000022-source');return false;">[Source]</a></p>
405
- <div class="method-source-code" id="M000022-source">
406
- <pre>
407
- <span class="ruby-comment cmt"># File lib/mack-javascript/helpers/jquery_helper.rb, line 112</span>
408
- 112: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">build_update</span>(<span class="ruby-identifier">options</span>)
409
- 113: <span class="ruby-identifier">insertion</span> = <span class="ruby-value str">'html'</span>
410
- 114: <span class="ruby-identifier">insertion</span> = <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:position</span>].<span class="ruby-identifier">to_s</span>.<span class="ruby-identifier">downcase</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:position</span>]
411
- 115: <span class="ruby-identifier">insertion</span> = <span class="ruby-value str">'append'</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">insertion</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'bottom'</span>
412
- 116: <span class="ruby-identifier">insertion</span> = <span class="ruby-value str">'prepend'</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">insertion</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'top'</span>
413
- 117: <span class="ruby-node">&quot;$('##{options[:update]}').#{insertion}(request);&quot;</span>
414
- 118: <span class="ruby-keyword kw">end</span>
415
- </pre>
416
- </div>
417
- </div>
418
- </div>
419
-
420
- <div id="method-M000019" class="method-detail">
421
- <a name="M000019"></a>
422
-
423
- <div class="method-heading">
424
- <a href="#M000019" class="method-signature">
425
- <span class="method-name">options_for_ajax</span><span class="method-args">(options)</span>
426
- </a>
427
- </div>
428
-
429
- <div class="method-description">
430
- <p><a class="source-toggle" href="#"
431
- onclick="toggleCode('M000019-source');return false;">[Source]</a></p>
432
- <div class="method-source-code" id="M000019-source">
433
- <pre>
434
- <span class="ruby-comment cmt"># File lib/mack-javascript/helpers/jquery_helper.rb, line 72</span>
435
- 72: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">options_for_ajax</span>(<span class="ruby-identifier">options</span>)
436
- 73: <span class="ruby-identifier">js_options</span> = <span class="ruby-identifier">build_callbacks</span>(<span class="ruby-identifier">options</span>)
437
- 74: <span class="ruby-identifier">js_options</span>[<span class="ruby-value str">'url'</span>] = <span class="ruby-node">&quot;'#{options[:url]}'&quot;</span>
438
- 75: <span class="ruby-identifier">js_options</span>[<span class="ruby-value str">'async'</span>] = <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:type</span>] <span class="ruby-operator">!=</span> <span class="ruby-identifier">:synchronous</span>
439
- 76: <span class="ruby-identifier">js_options</span>[<span class="ruby-value str">'type'</span>] = <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:method</span>] <span class="ruby-operator">?</span> <span class="ruby-node">&quot;'#{options[:method]}'&quot;</span> <span class="ruby-operator">:</span> <span class="ruby-value str">&quot;'post'&quot;</span>
440
- 77: <span class="ruby-identifier">js_options</span>[<span class="ruby-value str">'dataType'</span>] = <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:datatype</span>] <span class="ruby-operator">?</span> <span class="ruby-node">&quot;'#{options[:datatype]}'&quot;</span> <span class="ruby-operator">:</span> (<span class="ruby-identifier">options</span>[<span class="ruby-identifier">:update</span>] <span class="ruby-operator">?</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-operator">:</span> <span class="ruby-value str">&quot;'script'&quot;</span>)
441
- 78:
442
- 79: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:form</span>]
443
- 80: <span class="ruby-identifier">js_options</span>[<span class="ruby-value str">'data'</span>] = <span class="ruby-value str">&quot;$.param($(this).serializeArray())&quot;</span>
444
- 81: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:submit</span>]
445
- 82: <span class="ruby-identifier">js_options</span>[<span class="ruby-value str">'data'</span>] = <span class="ruby-node">&quot;$(\&quot;##{options[:submit]}\&quot;).serializeArray()&quot;</span>
446
- 83: <span class="ruby-keyword kw">elsif</span> <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:with</span>]
447
- 84: <span class="ruby-identifier">js_options</span>[<span class="ruby-value str">'data'</span>] = <span class="ruby-identifier">options</span>[<span class="ruby-identifier">:with</span>].<span class="ruby-identifier">gsub</span>(<span class="ruby-value str">'Form.serialize(this.form)'</span>,<span class="ruby-value str">'$.param($(this.form).serializeArray())'</span>)
448
- 85: <span class="ruby-keyword kw">end</span>
449
- 86: <span class="ruby-identifier">options_for_javascript</span>(<span class="ruby-identifier">js_options</span>.<span class="ruby-identifier">reject</span> {<span class="ruby-operator">|</span><span class="ruby-identifier">key</span>, <span class="ruby-identifier">value</span><span class="ruby-operator">|</span> <span class="ruby-identifier">value</span>.<span class="ruby-identifier">nil?</span>})
450
- 87: <span class="ruby-keyword kw">end</span>
451
- </pre>
452
- </div>
453
- </div>
454
- </div>
455
-
456
- <div id="method-M000020" class="method-detail">
457
- <a name="M000020"></a>
458
-
459
- <div class="method-heading">
460
- <a href="#M000020" class="method-signature">
461
- <span class="method-name">options_for_javascript</span><span class="method-args">(options)</span>
462
- </a>
463
- </div>
464
-
465
- <div class="method-description">
466
- <p><a class="source-toggle" href="#"
467
- onclick="toggleCode('M000020-source');return false;">[Source]</a></p>
468
- <div class="method-source-code" id="M000020-source">
469
- <pre>
470
- <span class="ruby-comment cmt"># File lib/mack-javascript/helpers/jquery_helper.rb, line 89</span>
471
- 89: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">options_for_javascript</span>(<span class="ruby-identifier">options</span>)
472
- 90: <span class="ruby-value str">'{'</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">options</span>.<span class="ruby-identifier">map</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-node">&quot;#{k}:#{v}&quot;</span>}.<span class="ruby-identifier">sort</span>.<span class="ruby-identifier">join</span>(<span class="ruby-value str">', '</span>) <span class="ruby-operator">+</span> <span class="ruby-value str">'}'</span>
473
- 91: <span class="ruby-keyword kw">end</span>
474
- </pre>
475
- </div>
476
- </div>
477
- </div>
478
-
479
-
480
- </div>
481
-
482
-
483
- </div>
484
-
485
-
486
- <div id="validator-badges">
487
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
488
- </div>
489
-
490
- </body>
491
- </html>