2014-01-26 17:05:34 -05:00
|
|
|
* Added `config.action_view.raise_on_missing_translations` to define whether an
|
|
|
|
error should be raised for missing translations.
|
|
|
|
|
2014-01-30 05:12:46 -05:00
|
|
|
Fixes #13196.
|
2014-01-26 17:05:34 -05:00
|
|
|
|
|
|
|
*Kassio Borges*
|
|
|
|
|
2014-01-09 17:47:14 -05:00
|
|
|
* Improved ERB dependency detection. New argument types and formattings for the `render`
|
|
|
|
calls can be matched.
|
|
|
|
|
2014-01-30 05:12:46 -05:00
|
|
|
Fixes #13074, #13116.
|
2014-01-09 17:47:14 -05:00
|
|
|
|
|
|
|
*João Britto*
|
|
|
|
|
2014-01-30 05:12:46 -05:00
|
|
|
* Use `display:none` instead of `display:inline` for hidden fields.
|
2012-06-03 05:07:54 -04:00
|
|
|
|
2014-01-30 05:12:46 -05:00
|
|
|
Fixes #6403.
|
2012-06-03 05:07:54 -04:00
|
|
|
|
|
|
|
*Gaelian Ditchburn*
|
|
|
|
|
2013-12-21 08:02:47 -05:00
|
|
|
* The `video_tag` helper accepts a number as `:size`
|
|
|
|
|
|
|
|
The `:size` option of the `video_tag` helper now can be specified
|
|
|
|
with a stringified number. The `width` and `height` attributes of
|
|
|
|
the generated tag will be the same.
|
|
|
|
|
|
|
|
*Kuldeep Aggarwal*
|
|
|
|
|
2013-12-06 14:05:59 -05:00
|
|
|
* A Cycle object should accept an array and cycle through it as it would with a set of
|
|
|
|
comma-separated objects.
|
2013-11-26 15:09:52 -05:00
|
|
|
|
|
|
|
arr = [1,2,3]
|
|
|
|
cycle(arr) # => '1'
|
|
|
|
cycle(arr) # => '2'
|
|
|
|
cycle(arr) # => '3'
|
|
|
|
|
2013-12-06 14:05:59 -05:00
|
|
|
Previously, it would return the array as a string, because it took the array as a
|
|
|
|
single object:
|
2013-11-26 15:09:52 -05:00
|
|
|
|
|
|
|
arr = [1,2,3]
|
|
|
|
cycle(arr) # => '[1,2,3]'
|
|
|
|
cycle(arr) # => '[1,2,3]'
|
|
|
|
cycle(arr) # => '[1,2,3]'
|
|
|
|
|
|
|
|
*Kristian Freeman*
|
|
|
|
|
2013-12-01 01:50:21 -05:00
|
|
|
* Label tags generated by collection helpers only inherit the `:index` and
|
|
|
|
`:namespace` from the input, because only these attributes modifies the
|
|
|
|
`for` attribute of the label. Also, the input attributes don't have
|
|
|
|
precedence over the label attributes anymore.
|
|
|
|
|
|
|
|
Before:
|
|
|
|
|
|
|
|
collection = [[1, true, { class: 'foo' }]]
|
|
|
|
f.collection_check_boxes :options, collection, :second, :first do |b|
|
|
|
|
b.label(class: 'my_custom_class')
|
|
|
|
end
|
|
|
|
|
|
|
|
# => <label class="foo" for="user_active_true">1</label>
|
|
|
|
|
|
|
|
After:
|
|
|
|
|
|
|
|
collection = [[1, true, { class: 'foo' }]]
|
|
|
|
f.collection_check_boxes :options, collection, :second, :first do |b|
|
|
|
|
b.label(class: 'my_custom_class')
|
|
|
|
end
|
|
|
|
|
|
|
|
# => <label class="my_custom_class" for="user_active_true">1</label>
|
|
|
|
|
|
|
|
*Andriel Nuernberg*
|
|
|
|
|
2013-11-27 05:36:10 -05:00
|
|
|
* Fixed a long-standing bug in `json_escape` that causes quotation marks to be stripped.
|
2013-12-04 12:43:42 -05:00
|
|
|
This method also escapes the \u2028 and \u2029 unicode newline characters which are
|
|
|
|
treated as \n in JavaScript. This matches the behaviour of the AS::JSON encoder. (The
|
|
|
|
original change in the encoder was introduced in #10534.)
|
2013-11-27 05:36:10 -05:00
|
|
|
|
|
|
|
*Godfrey Chan*
|
|
|
|
|
2013-11-22 08:14:41 -05:00
|
|
|
* `ActionView::MissingTemplate` includes underscore when raised for a partial.
|
|
|
|
|
|
|
|
Fixes #13002.
|
|
|
|
|
|
|
|
*Yves Senn*
|
|
|
|
|
2014-01-30 05:12:46 -05:00
|
|
|
* Use `set_backtrace` instead of instance variable `@backtrace` in ActionView exceptions.
|
2013-10-30 11:48:09 -04:00
|
|
|
|
|
|
|
*Shimpei Makimoto*
|
|
|
|
|
2014-01-30 05:12:46 -05:00
|
|
|
* Fix `simple_format` escapes own output when passing `sanitize: true`.
|
2013-11-08 11:13:59 -05:00
|
|
|
|
|
|
|
*Paul Seidemann*
|
|
|
|
|
2013-11-09 13:44:32 -05:00
|
|
|
* Ensure `ActionView::Digestor.cache` is correctly cleaned up when
|
|
|
|
combining recursive templates with `ActionView::Resolver.caching = false`.
|
2013-11-08 11:13:59 -05:00
|
|
|
|
2013-10-14 18:23:37 -04:00
|
|
|
*wyaeld*
|
|
|
|
|
2013-09-24 20:07:24 -04:00
|
|
|
* Fix `collection_check_boxes` generated hidden input to use the name attribute provided
|
|
|
|
in the options hash.
|
|
|
|
|
|
|
|
*Angel N. Sciortino*
|
|
|
|
|
2013-11-09 13:44:32 -05:00
|
|
|
* Fix some edge cases for AV `select` helper with `:selected` option.
|
2013-09-23 10:48:23 -04:00
|
|
|
|
|
|
|
*Bogdan Gusiev*
|
|
|
|
|
2014-01-30 05:12:46 -05:00
|
|
|
* Ability to pass a block to the `select` helper.
|
|
|
|
|
|
|
|
Example:
|
2013-09-23 07:25:42 -04:00
|
|
|
|
2013-09-23 10:11:26 -04:00
|
|
|
<%= select(report, "campaign_ids") do %>
|
|
|
|
<% available_campaigns.each do |c| -%>
|
|
|
|
<%= content_tag(:option, c.name, value: c.id, data: { tags: c.tags.to_json }) %>
|
|
|
|
<% end -%>
|
|
|
|
<% end -%>
|
2013-09-23 07:25:42 -04:00
|
|
|
|
|
|
|
*Bogdan Gusiev*
|
|
|
|
|
2013-11-09 13:44:32 -05:00
|
|
|
* Handle `:namespace` form option in collection labels.
|
2013-09-22 09:37:12 -04:00
|
|
|
|
|
|
|
*Vasiliy Ermolovich*
|
|
|
|
|
2013-11-09 13:44:32 -05:00
|
|
|
* Fix `form_for` when both `namespace` and `as` options are present.
|
2013-09-06 07:41:24 -04:00
|
|
|
|
|
|
|
`as` option no longer overwrites `namespace` option when generating
|
2013-11-09 13:44:32 -05:00
|
|
|
html id attribute of the form element.
|
2013-09-06 07:41:24 -04:00
|
|
|
|
|
|
|
*Adam Niedzielski*
|
|
|
|
|
2013-09-12 12:25:21 -04:00
|
|
|
* Fix `excerpt` when `:separator` is `nil`.
|
2013-07-25 16:56:26 -04:00
|
|
|
|
|
|
|
*Paul Nikitochkin*
|
|
|
|
|
2013-10-31 10:29:16 -04:00
|
|
|
* Only cache template digests if `config.cache_template_loading` is true.
|
2013-08-05 16:36:47 -04:00
|
|
|
|
2013-08-27 13:10:37 -04:00
|
|
|
*Josh Lauer*, *Justin Ridgewell*
|
2013-08-05 16:36:47 -04:00
|
|
|
|
2013-07-15 09:59:18 -04:00
|
|
|
* Fixed a bug where the lookup details were not being taken into account
|
|
|
|
when caching the digest of a template - changes to the details now
|
|
|
|
cause a different cache key to be used.
|
|
|
|
|
|
|
|
*Daniel Schierbeck*
|
|
|
|
|
2013-08-01 14:10:36 -04:00
|
|
|
* Added an `extname` hash option for `javascript_include_tag` method.
|
|
|
|
|
|
|
|
Before:
|
|
|
|
|
|
|
|
javascript_include_tag('templates.jst')
|
|
|
|
# => <script src="/javascripts/templates.jst.js"></script>
|
|
|
|
|
|
|
|
After:
|
|
|
|
|
|
|
|
javascript_include_tag('templates.jst', extname: false )
|
|
|
|
# => <script src="/javascripts/templates.jst"></script>
|
|
|
|
|
|
|
|
*Nathan Stitt*
|
|
|
|
|
2013-08-01 09:43:45 -04:00
|
|
|
* Fix `current_page?` when the URL contains escaped characters and the
|
2013-08-02 03:03:35 -04:00
|
|
|
original URL is using the hexadecimal lowercased.
|
2013-08-01 09:43:45 -04:00
|
|
|
|
|
|
|
*Rafael Mendonça França*
|
|
|
|
|
2013-07-23 08:29:24 -04:00
|
|
|
* Fix `text_area` to behave like `text_field` when `nil` is given as
|
|
|
|
value.
|
|
|
|
|
|
|
|
Before:
|
|
|
|
|
|
|
|
f.text_field :field, value: nil #=> <input value="">
|
|
|
|
f.text_area :field, value: nil #=> <textarea>value of field</textarea>
|
|
|
|
|
|
|
|
After:
|
|
|
|
|
|
|
|
f.text_area :field, value: nil #=> <textarea></textarea>
|
|
|
|
|
|
|
|
*Joel Cogen*
|
|
|
|
|
2013-07-20 08:36:27 -04:00
|
|
|
* Element of the `grouped_options_for_select` can
|
|
|
|
optionally contain html attributes as the last element of the array.
|
|
|
|
|
|
|
|
grouped_options_for_select(
|
2013-07-22 13:26:20 -04:00
|
|
|
[["North America", [['United States','US'],"Canada"], data: { foo: 'bar' }]]
|
2013-07-20 08:36:27 -04:00
|
|
|
)
|
|
|
|
|
|
|
|
*Vasiliy Ermolovich*
|
|
|
|
|
2013-07-14 13:11:43 -04:00
|
|
|
* Fix default rendered format problem when calling `render` without :content_type option.
|
|
|
|
It should return :html. Fix #11393.
|
|
|
|
|
2014-01-30 05:12:46 -05:00
|
|
|
*Gleb Mazovetskiy*, *Oleg*, *kennyj*
|
2013-07-14 13:11:43 -04:00
|
|
|
|
2013-07-07 13:26:20 -04:00
|
|
|
* Fix `link_to` with block and url hashes.
|
|
|
|
|
|
|
|
Before:
|
|
|
|
|
|
|
|
link_to(action: 'bar', controller: 'foo') { content_tag(:span, 'Example site') }
|
|
|
|
# => "<a action=\"bar\" controller=\"foo\"><span>Example site</span></a>"
|
|
|
|
|
|
|
|
After:
|
|
|
|
|
|
|
|
link_to(action: 'bar', controller: 'foo') { content_tag(:span, 'Example site') }
|
2013-07-18 09:35:15 -04:00
|
|
|
# => "<a href=\"/foo/bar\"><span>Example site</span></a>"
|
2013-07-07 13:26:20 -04:00
|
|
|
|
|
|
|
*Murahashi Sanemat Kenichi*
|
|
|
|
|
2013-07-07 12:44:16 -04:00
|
|
|
* Fix "Stack Level Too Deep" error when redering recursive partials.
|
|
|
|
|
|
|
|
Fixes #11340.
|
|
|
|
|
|
|
|
*Rafael Mendonça França*
|
|
|
|
|
2013-07-05 12:01:51 -04:00
|
|
|
* Added an `enforce_utf8` hash option for `form_tag` method.
|
|
|
|
|
|
|
|
Control to output a hidden input tag with name `utf8` without monkey
|
|
|
|
patching.
|
|
|
|
|
|
|
|
Before:
|
|
|
|
|
|
|
|
form_tag
|
|
|
|
# => '<form>..<input name="utf8" type="hidden" value="✓" />..</form>'
|
|
|
|
|
|
|
|
After:
|
|
|
|
|
|
|
|
form_tag
|
|
|
|
# => '<form>..<input name="utf8" type="hidden" value="✓" />..</form>'
|
|
|
|
|
|
|
|
form_tag({}, { :enforce_utf8 => false })
|
|
|
|
# => '<form>....</form>'
|
|
|
|
|
|
|
|
*ma2gedev*
|
|
|
|
|
2013-07-02 21:46:23 -04:00
|
|
|
* Remove the deprecated `include_seconds` argument from `distance_of_time_in_words`,
|
|
|
|
pass in an `:include_seconds` hash option to use this feature.
|
|
|
|
|
|
|
|
*Carlos Antonio da Silva*
|
|
|
|
|
|
|
|
* Remove deprecated block passing to `FormBuilder#new`.
|
2013-07-01 16:24:36 -04:00
|
|
|
|
|
|
|
*Vipul A M*
|
|
|
|
|
2013-06-27 23:44:31 -04:00
|
|
|
* Pick `DateField` `DateTimeField` and `ColorField` values from stringified options allowing use of symbol keys with helpers.
|
|
|
|
|
|
|
|
*Jon Rowe*
|
|
|
|
|
2013-06-27 14:39:17 -04:00
|
|
|
* Remove the deprecated `prompt` argument from `grouped_options_for_select`,
|
|
|
|
pass in a `:prompt` hash option to use this feature.
|
2013-06-27 13:50:58 -04:00
|
|
|
|
|
|
|
*kennyj*
|
|
|
|
|
2013-06-24 15:19:38 -04:00
|
|
|
* Always escape the result of `link_to_unless` method.
|
|
|
|
|
|
|
|
Before:
|
|
|
|
|
|
|
|
link_to_unless(true, '<b>Showing</b>', 'github.com')
|
|
|
|
# => "<b>Showing</b>"
|
|
|
|
|
|
|
|
After:
|
|
|
|
|
|
|
|
link_to_unless(true, '<b>Showing</b>', 'github.com')
|
|
|
|
# => "<b>Showing</b>"
|
|
|
|
|
|
|
|
*dtaniwaki*
|
|
|
|
|
2013-06-20 13:06:52 -04:00
|
|
|
* Use a case insensitive URI Regexp for #asset_path.
|
|
|
|
|
|
|
|
This fix a problem where the same asset path using different case are generating
|
|
|
|
different URIs.
|
|
|
|
|
|
|
|
Before:
|
|
|
|
|
|
|
|
image_tag("HTTP://google.com")
|
|
|
|
# => "<img alt=\"Google\" src=\"/assets/HTTP://google.com\" />"
|
|
|
|
image_tag("http://google.com")
|
|
|
|
# => "<img alt=\"Google\" src=\"http://google.com\" />"
|
|
|
|
|
|
|
|
After:
|
|
|
|
|
|
|
|
image_tag("HTTP://google.com")
|
|
|
|
# => "<img alt=\"Google\" src=\"HTTP://google.com\" />"
|
|
|
|
image_tag("http://google.com")
|
|
|
|
# => "<img alt=\"Google\" src=\"http://google.com\" />"
|
|
|
|
|
|
|
|
*David Celis*
|
|
|
|
|
|
|
|
* Element of the `collection_check_boxes` and `collection_radio_buttons` can
|
|
|
|
optionally contain html attributes as the last element of the array.
|
|
|
|
|
|
|
|
*Vasiliy Ermolovich*
|
|
|
|
|
|
|
|
* Update the HTML `BOOLEAN_ATTRIBUTES` in `ActionView::Helpers::TagHelper`
|
|
|
|
to conform to the latest HTML 5.1 spec. Add attributes `allowfullscreen`,
|
|
|
|
`default`, `inert`, `sortable`, `truespeed`, `typemustmatch`. Fix attribute
|
|
|
|
`seamless` (previously misspelled `seemless`).
|
|
|
|
|
|
|
|
*Alex Peattie*
|
|
|
|
|
|
|
|
* Fix an issue where partials with a number in the filename weren't being digested for cache dependencies.
|
|
|
|
|
|
|
|
*Bryan Ricker*
|
|
|
|
|
|
|
|
* First release, ActionView extracted from ActionPack
|
|
|
|
|
|
|
|
*Piotr Sarnacki*, *Łukasz Strzałkowski*
|
|
|
|
|
2013-06-24 15:19:38 -04:00
|
|
|
Please check [4-0-stable (ActionPack's CHANGELOG)](https://github.com/rails/rails/blob/4-0-stable/actionpack/CHANGELOG.md) for previous changes.
|