aboutsummaryrefslogtreecommitdiffstats
path: root/actionview
Commit message (Collapse)AuthorAgeFilesLines
...
| * Prevent event propogation if element is disabled when event chain begins.Patrick Toomey2017-03-093-1/+38
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The existing UJS event behavior relies on browsers not sending events for various events when an element is disabled. For example, imagine the following: <button type="submit" disabled="disabled">Click me</button> The above button is disabled, so browsers will not trigger a click event and all UJS behavior is prevented. However, imagine a button like this: <button type="submit" disabled="disabled"><strong>Click me</strong></button> The above is treated differently by browsers such as Chrome/Safari. These browsers do not consider the strong tag to be disabled, and will trigger click events. UJS has logic to walk up the DOM to find an associated element subject to UJS behavior. But, this logic does not take into account the disabled status of the element. I originally thought we could simply change the selectors used to match elements to ignore disabled elements. However, UJS disables some elements as part of the event chain. So, an element might match early in the chain and then fail to match later. Instead of changing the selectors I added a callback to the chain that calls `stopEverything` if an element is disabled when the event chain begins.
* | Fix `assert_logged` failureRyuta Kamizono2017-03-231-2/+2
| | | | | | | | | | `'#{name}' file doesn't exist, so no dependencies` was removed in bb04814.
* | Stop complaining about not being able to digest dynamic template partial ↵David Heinemeier Hansson2017-03-221-2/+4
| | | | | | | | names and simplify error logging to a single line when not
* | Start Rails 5.2 developmentMatthew Draper2017-03-223-219/+4
| |
* | Merge pull request #28450 from adamgamble/bug_fix/fix_typo_in_actionviewRafael França2017-03-211-1/+1
|\ \ | | | | | | Fix typo in actionview error message in to_form_params helper method
| * | Fix typo in actionview error messageadamgamble2017-03-171-1/+1
| | |
* | | Always use original url_for when generating direct routesAndrew White2017-03-171-0/+46
|/ / | | | | | | | | | | | | Action View overrides `url_for` in the view context to render paths by default when using `url_for` and this means that direct route helpers don't get the full url when called with the url suffix. To fix this always call the original `url_for`.
* | Merge pull request #28407 from claudiob/changelog-skip-pipelineRichard Schneeman2017-03-131-0/+17
|\ \ | | | | | | Add CHANGELOG for #26226 [ci skip]
| * | Add CHANGELOG for #26226 [ci skip]claudiob2017-03-131-0/+17
| |/
* / Small grammar change + new line for "fixes"Jon Moss2017-03-131-2/+4
|/ | | | [ci skip]
* Deprecate implicit coercion of `ActiveSupport::Duration`Andrew White2017-03-021-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently `ActiveSupport::Duration` implicitly converts to a seconds value when used in a calculation except for the explicit examples of addition and subtraction where the duration is the receiver, e.g: >> 2 * 1.day => 172800 This results in lots of confusion especially when using durations with dates because adding/subtracting a value from a date treats integers as a day and not a second, e.g: >> Date.today => Wed, 01 Mar 2017 >> Date.today + 2 * 1.day => Mon, 10 Apr 2490 To fix this we're implementing `coerce` so that we can provide a deprecation warning with the intent of removing the implicit coercion in Rails 5.2, e.g: >> 2 * 1.day DEPRECATION WARNING: Implicit coercion of ActiveSupport::Duration to a Numeric is deprecated and will raise a TypeError in Rails 5.2. => 172800 In Rails 5.2 it will raise `TypeError`, e.g: >> 2 * 1.day TypeError: ActiveSupport::Duration can't be coerced into Integer This is the same behavior as with other types in Ruby, e.g: >> 2 * "foo" TypeError: String can't be coerced into Integer >> "foo" * 2 => "foofoo" As part of this deprecation add `*` and `/` methods to `AS::Duration` so that calculations that keep the duration as the receiver work correctly whether the final receiver is a `Date` or `Time`, e.g: >> Date.today => Wed, 01 Mar 2017 >> Date.today + 1.day * 2 => Fri, 03 Mar 2017 Fixes #27457.
* Remove `encode_special_chars` option from `strip_tags`Andrew Hood2017-02-273-4/+19
|
* Update package.jsonRafael Mendonça França2017-02-231-1/+1
|
* Preparing for 5.1.0.beta1 releaseRafael Mendonça França2017-02-232-1/+3
|
* Test rails-ujs in our travis matrixRafael Mendonça França2017-02-227-69/+170
|
* Move rails-ujs README and LICENCE to actionviewRafael Mendonça França2017-02-222-0/+69
| | | | We are going to make rails/rails the official repository
* Add custom polymorphic mappingAndrew White2017-02-211-4/+4
| | | | | | | | | | | | | | | | Allow the use of `direct` to specify custom mappings for polymorphic_url, e.g: resource :basket direct(class: "Basket") { [:basket] } This will then generate the following: >> link_to "Basket", @basket => <a href="/basket">Basket</a> More importantly it will generate the correct url when used with `form_for`. Fixes #1769.
* Import rails-ujs v0.1.0 from rails/rails-ujsGuillermo Iguaran2017-02-2011-255/+35
|
* Set correct "routes" in tests casesbogdanvlviv2017-02-202-4/+4
|
* Add assertion to polymorphic_routes_test.rbbogdanvlviv2017-02-201-2/+1
| | | | | | | | | | | | | | | | The assertion will ensure that the behavior doesn't regress. assert_equal "/projects", polymorphic_path("projects") Remove FIXME related to polymorphic_url behavior. polymorphic_url with Symbol or String works equally. Example: default_url_options[:host] = "example.com" polymorphic_url(:projects) # => "http://example.com/projects" polymorphic_url("projects") # => "http://example.com/projects" Related to 37d4415a7b433fcb987b1c6a5b51bf2d8efc5d5e
* Unfreeze interpolated string because it's useless.Stan Lo2017-02-191-1/+1
|
* Add `Style/EmptyLinesAroundMethodBody` in `.rubocop.yml` and remove extra ↵Ryuta Kamizono2017-02-122-2/+0
| | | | empty lines
* Merge pull request #27870 from kenta-s/get-todo-done-in-render_testKasper Timm Hansen2017-02-111-2/+1
|\ | | | | Get TODO done in `render_test`
| * Add information on `:formats` option in action_view_overview.mdkenta-s2017-02-061-2/+1
| |
* | Correct spellingBenjamin Fleischer2017-02-051-1/+1
|/ | | | | | | ``` go get -u github.com/client9/misspell/cmd/misspell misspell -w -error -source=text . ```
* Fix CI failure caused by aa647b46cce55ec12f5895e403c0d1b85502c8e0Ryuta Kamizono2017-02-021-1/+1
|
* Fix test failures only seen when executed via bin/testAkira Matsuda2017-02-021-1/+1
| | | | | sub_template_message distracts Rails.root from its message only when Rails.root is defined, and Rails.root is defined at tools/test.rb
* module Blog; class Post appears twice in AV testsAkira Matsuda2017-02-021-3/+3
| | | | This causes TypeError when loaded separately
* DRY fake models for testingAkira Matsuda2017-02-022-37/+7
|
* call `gem` `erubis` before requireyuuji.yaginuma2017-02-011-0/+1
| | | | For inform that need to add `erubis` to gemfile.
* Merge pull request #27795 from meagar/fix-missing-partial-iterationRafael França2017-01-314-1/+12
|\ | | | | Fix missing partial iteration
| * Merge branch 'master' into fix-missing-partial-iterationMatthew Eagar2017-01-262-2/+2
| |\
| * \ Merge branch 'master' into fix-missing-partial-iterationMatthew Eagar2017-01-2510-77/+197
| |\ \
| * | | Add partial iteration variable to template keysMatthew Eagar2017-01-254-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | When rendering heterogeneous collection using `render @collection` or `render partial: @collection`, the expected `<partial_name>_iteration` variable is missing due to `find_template` not having the name of the iteration variable included in its cache keys.
* | | | Merge pull request #27858 from mtsmfm/fix-inherit-from-deprecated-erubisRafael França2017-01-313-1/+12
|\ \ \ \ | | | | | | | | | | Fix inherit from deprecated `ActionView::Template::Handlers::Erubis`
| * | | | Fix inherit from deprecated `ActionView::Template::Handlers::Erubis`Fumiaki MATSUSHIMA2017-02-013-1/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | There are some classes inherit from `ActionView::Template::Handlers::Erubis`. (ex. https://github.com/haml/haml/blob/4.0.7/lib/haml/helpers/safe_erubis_template.rb#L3) ``` Class.new(ActionView::Template::Handlers::Erubis) # => TypeError: superclass must be a Class (ActiveSupport::Deprecation::DeprecatedConstantProxy given) ```
* | | | | Merge pull request #27758 from kenta-s/neglected-todo-in-render_testArthur Nogueira Neves2017-01-311-2/+1
|\ \ \ \ \ | |/ / / / |/| | | | Get neglected TODO done in render_test
| * | | | Get neglected TODO done in render_testkenta-s2017-01-241-2/+1
| | | | |
* | | | | Merge pull request #27738 from kenta-s/remove-unused-argument-formatsRafael França2017-01-312-27/+27
|\ \ \ \ \ | | | | | | | | | | | | Remove unused argument `formats`
| * | | | | Remove unused argument `formats`kenta-s2017-01-202-27/+27
| | | | | |
* | | | | | Improve insufficient test for `safe_join`kenta-s2017-01-301-2/+13
| | | | | |
* | | | | | use rails-html-sanitizer >= 1.0.3Toshi MARUYAMA2017-01-271-1/+1
| |_|_|_|/ |/| | | | | | | | | | | | | | CVE-2015-7579 says rails-html-sanitizer 1.0.2 has XSS vulnerability.
* | | | | s/an/a/Akira Matsuda2017-01-262-2/+2
| |_|_|/ |/| | | | | | | | | | | [ci skip]
* | | | Fix grammar 'an hyphen' -> 'a hyphen' [ci skip]kenta-s2017-01-251-1/+1
| | | |
* | | | Merge pull request #27796 from yui-knk/keep_separator_wasAndrew White2017-01-251-1/+2
|\ \ \ \ | | | | | | | | | | Keep the value of `$,` and restore it
| * | | | Keep the value of `$,` and restore ityui-knk2017-01-251-1/+2
| | |_|/ | |/| | | | | | | | | | | | | | | | | | As unit tests, we do not know the value of `$,` when this test case started. It' better to keep the value when the test case fnished.
* / | | Change ActionView ERB Handler from Erubis to ErubiJeremy Evans2017-01-258-75/+194
|/ / / | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Erubi offers the following advantages for Rails: * Works with ruby's --enable-frozen-string-literal option * Has 88% smaller memory footprint * Does no freedom patching (Erubis adds a method to Kernel) * Has simpler internals (1 file, <150 lines of code) * Has an open development model (Erubis doesn't have a public source control repository or bug tracker) * Is not dead (Erubis hasn't been updated since 2011) Erubi is a simplified fork of Erubis that contains just the parts that are generally needed (which includes the parts that Rails uses). The only intentional difference in behavior is that it does not include support for <%=== tags for debug output. That could be added to the ActionView ERB handler if it is desired. The Erubis template handler remains in a deprecated state so that code that accesses it directly does not break. It can be removed after Rails 5.1.
* | / Remove unnecessary comments in cache_helper.rb [ci skip]kenta-s2017-01-211-2/+0
| |/ |/|
* | Add missing tests for ActionView::Template::Textkenta-s2017-01-201-0/+16
| |
* | `find_templates` should be able to handle 5 argumentskenta-s2017-01-191-2/+2
|/