actionpack 4.0.1 → 4.2.11.1

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of actionpack might be problematic. Click here for more details.

Files changed (241) hide show
  1. checksums.yaml +5 -5
  2. data/CHANGELOG.md +402 -1173
  3. data/MIT-LICENSE +1 -1
  4. data/README.rdoc +7 -7
  5. data/lib/abstract_controller/base.rb +39 -7
  6. data/lib/abstract_controller/callbacks.rb +32 -53
  7. data/lib/abstract_controller/collector.rb +11 -1
  8. data/lib/abstract_controller/helpers.rb +26 -16
  9. data/lib/abstract_controller/railties/routes_helpers.rb +3 -3
  10. data/lib/abstract_controller/rendering.rb +57 -127
  11. data/lib/abstract_controller/url_for.rb +1 -1
  12. data/lib/abstract_controller.rb +1 -2
  13. data/lib/action_controller/base.rb +19 -10
  14. data/lib/action_controller/caching/fragments.rb +7 -1
  15. data/lib/action_controller/caching.rb +2 -12
  16. data/lib/action_controller/log_subscriber.rb +29 -20
  17. data/lib/action_controller/metal/conditional_get.rb +37 -12
  18. data/lib/action_controller/metal/data_streaming.rb +1 -1
  19. data/lib/action_controller/metal/etag_with_template_digest.rb +50 -0
  20. data/lib/action_controller/metal/exceptions.rb +1 -1
  21. data/lib/action_controller/metal/flash.rb +17 -0
  22. data/lib/action_controller/metal/force_ssl.rb +2 -2
  23. data/lib/action_controller/metal/head.rb +8 -6
  24. data/lib/action_controller/metal/helpers.rb +6 -2
  25. data/lib/action_controller/metal/http_authentication.rb +45 -23
  26. data/lib/action_controller/metal/instrumentation.rb +9 -6
  27. data/lib/action_controller/metal/live.rb +173 -20
  28. data/lib/action_controller/metal/mime_responds.rb +127 -232
  29. data/lib/action_controller/metal/params_wrapper.rb +16 -9
  30. data/lib/action_controller/metal/rack_delegation.rb +1 -1
  31. data/lib/action_controller/metal/redirecting.rb +34 -26
  32. data/lib/action_controller/metal/renderers.rb +39 -12
  33. data/lib/action_controller/metal/rendering.rb +41 -14
  34. data/lib/action_controller/metal/request_forgery_protection.rb +147 -19
  35. data/lib/action_controller/metal/streaming.rb +19 -21
  36. data/lib/action_controller/metal/strong_parameters.rb +166 -22
  37. data/lib/action_controller/metal/testing.rb +0 -1
  38. data/lib/action_controller/metal/url_for.rb +11 -12
  39. data/lib/action_controller/metal.rb +14 -8
  40. data/lib/action_controller/model_naming.rb +1 -1
  41. data/lib/action_controller/railtie.rb +5 -1
  42. data/lib/action_controller/test_case.rb +160 -94
  43. data/lib/action_controller.rb +2 -18
  44. data/lib/action_dispatch/http/cache.rb +5 -4
  45. data/lib/action_dispatch/http/filter_parameters.rb +2 -2
  46. data/lib/action_dispatch/http/filter_redirect.rb +5 -4
  47. data/lib/action_dispatch/http/headers.rb +46 -10
  48. data/lib/action_dispatch/http/mime_negotiation.rb +31 -4
  49. data/lib/action_dispatch/http/mime_type.rb +25 -26
  50. data/lib/action_dispatch/http/mime_types.rb +1 -0
  51. data/lib/action_dispatch/http/parameter_filter.rb +1 -1
  52. data/lib/action_dispatch/http/parameters.rb +25 -41
  53. data/lib/action_dispatch/http/request.rb +49 -32
  54. data/lib/action_dispatch/http/response.rb +127 -25
  55. data/lib/action_dispatch/http/upload.rb +9 -21
  56. data/lib/action_dispatch/http/url.rb +97 -70
  57. data/lib/action_dispatch/journey/formatter.rb +35 -19
  58. data/lib/action_dispatch/journey/gtg/builder.rb +3 -3
  59. data/lib/action_dispatch/journey/gtg/simulator.rb +10 -7
  60. data/lib/action_dispatch/journey/gtg/transition_table.rb +23 -33
  61. data/lib/action_dispatch/journey/nfa/dot.rb +2 -2
  62. data/lib/action_dispatch/journey/nfa/simulator.rb +1 -1
  63. data/lib/action_dispatch/journey/nfa/transition_table.rb +5 -5
  64. data/lib/action_dispatch/journey/nodes/node.rb +4 -0
  65. data/lib/action_dispatch/journey/parser.rb +51 -59
  66. data/lib/action_dispatch/journey/parser.y +12 -10
  67. data/lib/action_dispatch/journey/path/pattern.rb +16 -19
  68. data/lib/action_dispatch/journey/route.rb +8 -19
  69. data/lib/action_dispatch/journey/router/strexp.rb +9 -6
  70. data/lib/action_dispatch/journey/router/utils.rb +54 -18
  71. data/lib/action_dispatch/journey/router.rb +53 -75
  72. data/lib/action_dispatch/journey/routes.rb +4 -0
  73. data/lib/action_dispatch/journey/scanner.rb +5 -5
  74. data/lib/action_dispatch/journey/visitors.rb +81 -60
  75. data/lib/action_dispatch/journey/visualizer/fsm.css +0 -4
  76. data/lib/action_dispatch/journey/visualizer/index.html.erb +2 -2
  77. data/lib/action_dispatch/middleware/callbacks.rb +7 -7
  78. data/lib/action_dispatch/middleware/cookies.rb +119 -43
  79. data/lib/action_dispatch/middleware/debug_exceptions.rb +32 -13
  80. data/lib/action_dispatch/middleware/exception_wrapper.rb +60 -20
  81. data/lib/action_dispatch/middleware/flash.rb +37 -24
  82. data/lib/action_dispatch/middleware/params_parser.rb +2 -2
  83. data/lib/action_dispatch/middleware/public_exceptions.rb +12 -3
  84. data/lib/action_dispatch/middleware/reloader.rb +11 -2
  85. data/lib/action_dispatch/middleware/remote_ip.rb +40 -54
  86. data/lib/action_dispatch/middleware/request_id.rb +1 -1
  87. data/lib/action_dispatch/middleware/session/cache_store.rb +3 -3
  88. data/lib/action_dispatch/middleware/session/cookie_store.rb +8 -7
  89. data/lib/action_dispatch/middleware/show_exceptions.rb +6 -2
  90. data/lib/action_dispatch/middleware/ssl.rb +10 -7
  91. data/lib/action_dispatch/middleware/static.rb +79 -23
  92. data/lib/action_dispatch/middleware/templates/rescues/{_request_and_response.erb → _request_and_response.html.erb} +0 -0
  93. data/lib/action_dispatch/middleware/templates/rescues/_request_and_response.text.erb +23 -0
  94. data/lib/action_dispatch/middleware/templates/rescues/_source.erb +21 -19
  95. data/lib/action_dispatch/middleware/templates/rescues/_trace.html.erb +52 -0
  96. data/lib/action_dispatch/middleware/templates/rescues/_trace.text.erb +9 -0
  97. data/lib/action_dispatch/middleware/templates/rescues/{diagnostics.erb → diagnostics.html.erb} +1 -1
  98. data/lib/action_dispatch/middleware/templates/rescues/diagnostics.text.erb +9 -0
  99. data/lib/action_dispatch/middleware/templates/rescues/layout.erb +6 -0
  100. data/lib/action_dispatch/middleware/templates/rescues/missing_template.html.erb +11 -0
  101. data/lib/action_dispatch/middleware/templates/rescues/missing_template.text.erb +3 -0
  102. data/lib/action_dispatch/middleware/templates/rescues/{routing_error.erb → routing_error.html.erb} +3 -1
  103. data/lib/action_dispatch/middleware/templates/rescues/routing_error.text.erb +11 -0
  104. data/lib/action_dispatch/middleware/templates/rescues/template_error.html.erb +20 -0
  105. data/lib/action_dispatch/middleware/templates/rescues/template_error.text.erb +7 -0
  106. data/lib/action_dispatch/middleware/templates/rescues/{unknown_action.erb → unknown_action.html.erb} +1 -1
  107. data/lib/action_dispatch/middleware/templates/rescues/unknown_action.text.erb +3 -0
  108. data/lib/action_dispatch/middleware/templates/routes/_table.html.erb +120 -64
  109. data/lib/action_dispatch/railtie.rb +5 -2
  110. data/lib/action_dispatch/request/session.rb +12 -0
  111. data/lib/action_dispatch/request/utils.rb +35 -0
  112. data/lib/action_dispatch/routing/endpoint.rb +10 -0
  113. data/lib/action_dispatch/routing/inspector.rb +11 -17
  114. data/lib/action_dispatch/routing/mapper.rb +519 -312
  115. data/lib/action_dispatch/routing/polymorphic_routes.rb +204 -79
  116. data/lib/action_dispatch/routing/redirection.rb +51 -26
  117. data/lib/action_dispatch/routing/route_set.rb +331 -206
  118. data/lib/action_dispatch/routing/routes_proxy.rb +5 -4
  119. data/lib/action_dispatch/routing/url_for.rb +19 -5
  120. data/lib/action_dispatch/routing.rb +9 -6
  121. data/lib/action_dispatch/testing/assertions/dom.rb +2 -26
  122. data/lib/action_dispatch/testing/assertions/response.rb +9 -15
  123. data/lib/action_dispatch/testing/assertions/routing.rb +22 -22
  124. data/lib/action_dispatch/testing/assertions/selector.rb +2 -429
  125. data/lib/action_dispatch/testing/assertions/tag.rb +2 -134
  126. data/lib/action_dispatch/testing/assertions.rb +11 -7
  127. data/lib/action_dispatch/testing/integration.rb +31 -29
  128. data/lib/action_dispatch/testing/test_request.rb +1 -1
  129. data/lib/action_dispatch/testing/test_response.rb +1 -5
  130. data/lib/action_dispatch.rb +5 -8
  131. data/lib/action_pack/gem_version.rb +15 -0
  132. data/lib/action_pack/version.rb +4 -7
  133. data/lib/action_pack.rb +1 -1
  134. metadata +77 -159
  135. data/lib/abstract_controller/layouts.rb +0 -423
  136. data/lib/abstract_controller/view_paths.rb +0 -96
  137. data/lib/action_controller/deprecated/integration_test.rb +0 -5
  138. data/lib/action_controller/deprecated.rb +0 -7
  139. data/lib/action_controller/metal/responder.rb +0 -287
  140. data/lib/action_controller/record_identifier.rb +0 -31
  141. data/lib/action_controller/vendor/html-scanner.rb +0 -5
  142. data/lib/action_dispatch/middleware/templates/rescues/_trace.erb +0 -24
  143. data/lib/action_dispatch/middleware/templates/rescues/missing_template.erb +0 -7
  144. data/lib/action_dispatch/middleware/templates/rescues/template_error.erb +0 -43
  145. data/lib/action_view/base.rb +0 -201
  146. data/lib/action_view/buffers.rb +0 -49
  147. data/lib/action_view/context.rb +0 -36
  148. data/lib/action_view/dependency_tracker.rb +0 -93
  149. data/lib/action_view/digestor.rb +0 -113
  150. data/lib/action_view/flows.rb +0 -76
  151. data/lib/action_view/helpers/active_model_helper.rb +0 -49
  152. data/lib/action_view/helpers/asset_tag_helper.rb +0 -320
  153. data/lib/action_view/helpers/asset_url_helper.rb +0 -355
  154. data/lib/action_view/helpers/atom_feed_helper.rb +0 -203
  155. data/lib/action_view/helpers/cache_helper.rb +0 -196
  156. data/lib/action_view/helpers/capture_helper.rb +0 -216
  157. data/lib/action_view/helpers/controller_helper.rb +0 -25
  158. data/lib/action_view/helpers/csrf_helper.rb +0 -30
  159. data/lib/action_view/helpers/date_helper.rb +0 -1083
  160. data/lib/action_view/helpers/debug_helper.rb +0 -39
  161. data/lib/action_view/helpers/form_helper.rb +0 -1880
  162. data/lib/action_view/helpers/form_options_helper.rb +0 -838
  163. data/lib/action_view/helpers/form_tag_helper.rb +0 -785
  164. data/lib/action_view/helpers/javascript_helper.rb +0 -117
  165. data/lib/action_view/helpers/number_helper.rb +0 -441
  166. data/lib/action_view/helpers/output_safety_helper.rb +0 -38
  167. data/lib/action_view/helpers/record_tag_helper.rb +0 -106
  168. data/lib/action_view/helpers/rendering_helper.rb +0 -90
  169. data/lib/action_view/helpers/sanitize_helper.rb +0 -256
  170. data/lib/action_view/helpers/tag_helper.rb +0 -173
  171. data/lib/action_view/helpers/tags/base.rb +0 -148
  172. data/lib/action_view/helpers/tags/check_box.rb +0 -64
  173. data/lib/action_view/helpers/tags/checkable.rb +0 -16
  174. data/lib/action_view/helpers/tags/collection_check_boxes.rb +0 -44
  175. data/lib/action_view/helpers/tags/collection_helpers.rb +0 -84
  176. data/lib/action_view/helpers/tags/collection_radio_buttons.rb +0 -36
  177. data/lib/action_view/helpers/tags/collection_select.rb +0 -28
  178. data/lib/action_view/helpers/tags/color_field.rb +0 -25
  179. data/lib/action_view/helpers/tags/date_field.rb +0 -13
  180. data/lib/action_view/helpers/tags/date_select.rb +0 -72
  181. data/lib/action_view/helpers/tags/datetime_field.rb +0 -22
  182. data/lib/action_view/helpers/tags/datetime_local_field.rb +0 -19
  183. data/lib/action_view/helpers/tags/datetime_select.rb +0 -8
  184. data/lib/action_view/helpers/tags/email_field.rb +0 -8
  185. data/lib/action_view/helpers/tags/file_field.rb +0 -8
  186. data/lib/action_view/helpers/tags/grouped_collection_select.rb +0 -29
  187. data/lib/action_view/helpers/tags/hidden_field.rb +0 -8
  188. data/lib/action_view/helpers/tags/label.rb +0 -66
  189. data/lib/action_view/helpers/tags/month_field.rb +0 -13
  190. data/lib/action_view/helpers/tags/number_field.rb +0 -18
  191. data/lib/action_view/helpers/tags/password_field.rb +0 -12
  192. data/lib/action_view/helpers/tags/radio_button.rb +0 -31
  193. data/lib/action_view/helpers/tags/range_field.rb +0 -8
  194. data/lib/action_view/helpers/tags/search_field.rb +0 -24
  195. data/lib/action_view/helpers/tags/select.rb +0 -40
  196. data/lib/action_view/helpers/tags/tel_field.rb +0 -8
  197. data/lib/action_view/helpers/tags/text_area.rb +0 -18
  198. data/lib/action_view/helpers/tags/text_field.rb +0 -29
  199. data/lib/action_view/helpers/tags/time_field.rb +0 -13
  200. data/lib/action_view/helpers/tags/time_select.rb +0 -8
  201. data/lib/action_view/helpers/tags/time_zone_select.rb +0 -20
  202. data/lib/action_view/helpers/tags/url_field.rb +0 -8
  203. data/lib/action_view/helpers/tags/week_field.rb +0 -13
  204. data/lib/action_view/helpers/tags.rb +0 -39
  205. data/lib/action_view/helpers/text_helper.rb +0 -443
  206. data/lib/action_view/helpers/translation_helper.rb +0 -107
  207. data/lib/action_view/helpers/url_helper.rb +0 -635
  208. data/lib/action_view/helpers.rb +0 -58
  209. data/lib/action_view/locale/en.yml +0 -56
  210. data/lib/action_view/log_subscriber.rb +0 -30
  211. data/lib/action_view/lookup_context.rb +0 -241
  212. data/lib/action_view/model_naming.rb +0 -12
  213. data/lib/action_view/path_set.rb +0 -77
  214. data/lib/action_view/railtie.rb +0 -43
  215. data/lib/action_view/record_identifier.rb +0 -84
  216. data/lib/action_view/renderer/abstract_renderer.rb +0 -47
  217. data/lib/action_view/renderer/partial_renderer.rb +0 -492
  218. data/lib/action_view/renderer/renderer.rb +0 -50
  219. data/lib/action_view/renderer/streaming_template_renderer.rb +0 -103
  220. data/lib/action_view/renderer/template_renderer.rb +0 -96
  221. data/lib/action_view/routing_url_for.rb +0 -107
  222. data/lib/action_view/tasks/dependencies.rake +0 -17
  223. data/lib/action_view/template/error.rb +0 -138
  224. data/lib/action_view/template/handlers/builder.rb +0 -26
  225. data/lib/action_view/template/handlers/erb.rb +0 -146
  226. data/lib/action_view/template/handlers/raw.rb +0 -11
  227. data/lib/action_view/template/handlers.rb +0 -53
  228. data/lib/action_view/template/resolver.rb +0 -326
  229. data/lib/action_view/template/text.rb +0 -34
  230. data/lib/action_view/template/types.rb +0 -57
  231. data/lib/action_view/template.rb +0 -339
  232. data/lib/action_view/test_case.rb +0 -270
  233. data/lib/action_view/testing/resolvers.rb +0 -50
  234. data/lib/action_view/vendor/html-scanner/html/document.rb +0 -68
  235. data/lib/action_view/vendor/html-scanner/html/node.rb +0 -532
  236. data/lib/action_view/vendor/html-scanner/html/sanitizer.rb +0 -188
  237. data/lib/action_view/vendor/html-scanner/html/selector.rb +0 -830
  238. data/lib/action_view/vendor/html-scanner/html/tokenizer.rb +0 -107
  239. data/lib/action_view/vendor/html-scanner/html/version.rb +0 -11
  240. data/lib/action_view/vendor/html-scanner.rb +0 -20
  241. data/lib/action_view.rb +0 -93
@@ -1,66 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class Label < Base # :nodoc:
5
- def initialize(object_name, method_name, template_object, content_or_options = nil, options = nil)
6
- options ||= {}
7
-
8
- content_is_options = content_or_options.is_a?(Hash)
9
- if content_is_options
10
- options.merge! content_or_options
11
- @content = nil
12
- else
13
- @content = content_or_options
14
- end
15
-
16
- super(object_name, method_name, template_object, options)
17
- end
18
-
19
- def render(&block)
20
- options = @options.stringify_keys
21
- tag_value = options.delete("value")
22
- name_and_id = options.dup
23
-
24
- if name_and_id["for"]
25
- name_and_id["id"] = name_and_id["for"]
26
- else
27
- name_and_id.delete("id")
28
- end
29
-
30
- add_default_name_and_id_for_value(tag_value, name_and_id)
31
- options.delete("index")
32
- options.delete("namespace")
33
- options.delete("multiple")
34
- options["for"] = name_and_id["id"] unless options.key?("for")
35
-
36
- if block_given?
37
- content = @template_object.capture(&block)
38
- else
39
- content = if @content.blank?
40
- @object_name.gsub!(/\[(.*)_attributes\]\[\d\]/, '.\1')
41
- method_and_value = tag_value.present? ? "#{@method_name}.#{tag_value}" : @method_name
42
-
43
- if object.respond_to?(:to_model)
44
- key = object.class.model_name.i18n_key
45
- i18n_default = ["#{key}.#{method_and_value}".to_sym, ""]
46
- end
47
-
48
- i18n_default ||= ""
49
- I18n.t("#{@object_name}.#{method_and_value}", :default => i18n_default, :scope => "helpers.label").presence
50
- else
51
- @content.to_s
52
- end
53
-
54
- content ||= if object && object.class.respond_to?(:human_attribute_name)
55
- object.class.human_attribute_name(@method_name)
56
- end
57
-
58
- content ||= @method_name.humanize
59
- end
60
-
61
- label_tag(name_and_id["id"], content, options)
62
- end
63
- end
64
- end
65
- end
66
- end
@@ -1,13 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class MonthField < DatetimeField # :nodoc:
5
- private
6
-
7
- def format_date(value)
8
- value.try(:strftime, "%Y-%m")
9
- end
10
- end
11
- end
12
- end
13
- end
@@ -1,18 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class NumberField < TextField # :nodoc:
5
- def render
6
- options = @options.stringify_keys
7
-
8
- if range = options.delete("in") || options.delete("within")
9
- options.update("min" => range.min, "max" => range.max)
10
- end
11
-
12
- @options = options
13
- super
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,12 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class PasswordField < TextField # :nodoc:
5
- def render
6
- @options = {:value => nil}.merge!(@options)
7
- super
8
- end
9
- end
10
- end
11
- end
12
- end
@@ -1,31 +0,0 @@
1
- require 'action_view/helpers/tags/checkable'
2
-
3
- module ActionView
4
- module Helpers
5
- module Tags # :nodoc:
6
- class RadioButton < Base # :nodoc:
7
- include Checkable
8
-
9
- def initialize(object_name, method_name, template_object, tag_value, options)
10
- @tag_value = tag_value
11
- super(object_name, method_name, template_object, options)
12
- end
13
-
14
- def render
15
- options = @options.stringify_keys
16
- options["type"] = "radio"
17
- options["value"] = @tag_value
18
- options["checked"] = "checked" if input_checked?(object, options)
19
- add_default_name_and_id_for_value(@tag_value, options)
20
- tag("input", options)
21
- end
22
-
23
- private
24
-
25
- def checked?(value)
26
- value.to_s == @tag_value.to_s
27
- end
28
- end
29
- end
30
- end
31
- end
@@ -1,8 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class RangeField < NumberField # :nodoc:
5
- end
6
- end
7
- end
8
- end
@@ -1,24 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class SearchField < TextField # :nodoc:
5
- def render
6
- options = @options.stringify_keys
7
-
8
- if options["autosave"]
9
- if options["autosave"] == true
10
- options["autosave"] = request.host.split(".").reverse.join(".")
11
- end
12
- options["results"] ||= 10
13
- end
14
-
15
- if options["onsearch"]
16
- options["incremental"] = true unless options.has_key?("incremental")
17
- end
18
-
19
- super
20
- end
21
- end
22
- end
23
- end
24
- end
@@ -1,40 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class Select < Base # :nodoc:
5
- def initialize(object_name, method_name, template_object, choices, options, html_options)
6
- @choices = choices
7
- @choices = @choices.to_a if @choices.is_a?(Range)
8
- @html_options = html_options
9
-
10
- super(object_name, method_name, template_object, options)
11
- end
12
-
13
- def render
14
- option_tags_options = {
15
- :selected => @options.fetch(:selected) { value(@object) },
16
- :disabled => @options[:disabled]
17
- }
18
-
19
- option_tags = if grouped_choices?
20
- grouped_options_for_select(@choices, option_tags_options)
21
- else
22
- options_for_select(@choices, option_tags_options)
23
- end
24
-
25
- select_content_tag(option_tags, @options, @html_options)
26
- end
27
-
28
- private
29
-
30
- # Grouped choices look like this:
31
- #
32
- # [nil, []]
33
- # { nil => [] }
34
- def grouped_choices?
35
- !@choices.empty? && @choices.first.respond_to?(:last) && Array === @choices.first.last
36
- end
37
- end
38
- end
39
- end
40
- end
@@ -1,8 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class TelField < TextField # :nodoc:
5
- end
6
- end
7
- end
8
- end
@@ -1,18 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class TextArea < Base # :nodoc:
5
- def render
6
- options = @options.stringify_keys
7
- add_default_name_and_id(options)
8
-
9
- if size = options.delete("size")
10
- options["cols"], options["rows"] = size.split("x") if size.respond_to?(:split)
11
- end
12
-
13
- content_tag("textarea", options.delete("value") { value_before_type_cast(object) }, options)
14
- end
15
- end
16
- end
17
- end
18
- end
@@ -1,29 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class TextField < Base # :nodoc:
5
- def render
6
- options = @options.stringify_keys
7
- options["size"] = options["maxlength"] unless options.key?("size")
8
- options["type"] ||= field_type
9
- options["value"] = options.fetch("value") { value_before_type_cast(object) } unless field_type == "file"
10
- options["value"] &&= ERB::Util.html_escape(options["value"])
11
- add_default_name_and_id(options)
12
- tag("input", options)
13
- end
14
-
15
- class << self
16
- def field_type
17
- @field_type ||= self.name.split("::").last.sub("Field", "").downcase
18
- end
19
- end
20
-
21
- private
22
-
23
- def field_type
24
- self.class.field_type
25
- end
26
- end
27
- end
28
- end
29
- end
@@ -1,13 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class TimeField < DatetimeField # :nodoc:
5
- private
6
-
7
- def format_date(value)
8
- value.try(:strftime, "%T.%L")
9
- end
10
- end
11
- end
12
- end
13
- end
@@ -1,8 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class TimeSelect < DateSelect # :nodoc:
5
- end
6
- end
7
- end
8
- end
@@ -1,20 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class TimeZoneSelect < Base # :nodoc:
5
- def initialize(object_name, method_name, template_object, priority_zones, options, html_options)
6
- @priority_zones = priority_zones
7
- @html_options = html_options
8
-
9
- super(object_name, method_name, template_object, options)
10
- end
11
-
12
- def render
13
- select_content_tag(
14
- time_zone_options_for_select(value(@object) || @options[:default], @priority_zones, @options[:model] || ActiveSupport::TimeZone), @options, @html_options
15
- )
16
- end
17
- end
18
- end
19
- end
20
- end
@@ -1,8 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class UrlField < TextField # :nodoc:
5
- end
6
- end
7
- end
8
- end
@@ -1,13 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags # :nodoc:
4
- class WeekField < DatetimeField # :nodoc:
5
- private
6
-
7
- def format_date(value)
8
- value.try(:strftime, "%Y-W%W")
9
- end
10
- end
11
- end
12
- end
13
- end
@@ -1,39 +0,0 @@
1
- module ActionView
2
- module Helpers
3
- module Tags #:nodoc:
4
- extend ActiveSupport::Autoload
5
-
6
- autoload :Base
7
- autoload :CheckBox
8
- autoload :CollectionCheckBoxes
9
- autoload :CollectionRadioButtons
10
- autoload :CollectionSelect
11
- autoload :ColorField
12
- autoload :DateField
13
- autoload :DateSelect
14
- autoload :DatetimeField
15
- autoload :DatetimeLocalField
16
- autoload :DatetimeSelect
17
- autoload :EmailField
18
- autoload :FileField
19
- autoload :GroupedCollectionSelect
20
- autoload :HiddenField
21
- autoload :Label
22
- autoload :MonthField
23
- autoload :NumberField
24
- autoload :PasswordField
25
- autoload :RadioButton
26
- autoload :RangeField
27
- autoload :SearchField
28
- autoload :Select
29
- autoload :TelField
30
- autoload :TextArea
31
- autoload :TextField
32
- autoload :TimeField
33
- autoload :TimeSelect
34
- autoload :TimeZoneSelect
35
- autoload :UrlField
36
- autoload :WeekField
37
- end
38
- end
39
- end