aboutsummaryrefslogtreecommitdiffstats
path: root/actionview/lib/action_view/helpers
Commit message (Collapse)AuthorAgeFilesLines
* docs, `select` and friends with `multiple=true` include a blank string.Yves Senn2014-07-171-5/+3
| | | | | | | | | | | | | | [Jonas Baumann & Yves Senn] The submitted params from a select with `multiple: true` look as follows: ``` {post: {category: [""]}} {post: {category: ["", "Category 1", "Category 2"]}} ``` This is a follow up to #1552.
* Fix broken list formatting [ci skip]noinkling2014-07-171-5/+5
|
* Merge pull request #16161 from jpawlyn/masterAndrew White2014-07-151-1/+1
|\ | | | | Fix empty host for an asset url when asset_host proc returns nil
| * Return an absolute instead of relative path from an asset url in the case of ↵Jolyon Pawlyn2014-07-151-1/+1
| | | | | | | | the `asset_host` proc returning nil
* | Fix typos like `a html` to `an html` and 'an mail' to 'an email'. [ci skip]Santosh Wadghule2014-07-141-1/+1
|/
* Include missing module in tag_helperCarlos Antonio da Silva2014-07-091-0/+1
| | | | | | | | | Since 6857415187810f1289068a448268264d0cf0844f we are using #safe_join to join the content when an Array is given, so we must include the dependent module here to make sure it's available when this module is used alone. This was making Simple Form tests to fail with current master due to the missing dependency.
* [ci skip] /javascript/ -> JavaScript - cover whole appAkshay Vishnoi2014-07-041-2/+2
|
* Use if/elseRafael Mendonça França2014-06-301-2/+5
| | | | | Since we are using both branches of the code is preferable to use if/else over the early return.
* Add String support for min/max attributes on DatetimeFieldTodd Bealmear2014-06-302-2/+55
|
* Tiny documentation fixes [ci skip]Robin Dupret2014-06-291-1/+1
|
* Rename options param of #time_ago_in_words to match API changeMax Kramer2014-06-281-2/+2
| | | Rename `include_seconds_or_options` to `options` to match 6b9356a (which removed the deprecation introduced by #6077). This has no functional impact because the parameter is passed directly through, but makes it clearer that the parameter no longer supports a boolean as input.
* Deal with regex match groups in excerptGareth Rees2014-06-241-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Original implementation has bugs if the regex contains a match group. Example: excerpt('This is a beautiful? morning', /\b(beau\w*)\b/i, :radius => 5) Expected: "...is a beautiful? mor..." Actual: "...is a beautifulbeaut..." The original phrase was being converted to a regex and returning the text either side of the phrase as expected: 'This is a beautiful? morning'.split(/beautiful/i, 2) # => ["This is a ", "? morning"] When we have a match with groups the match is returned in the array. Quoting the ruby docs: "If pattern is a Regexp, str is divided where the pattern matches. [...] If pattern contains groups, the respective matches will be returned in the array as well." 'This is a beautiful? morning'.split(/\b(beau\w*)\b/iu, 2) # => ["This is a ", "beautiful", "? morning"] If we assume we want to split on the first match – this fix makes that assumption – we can pass the already assigned `phrase` variable as the place to split (because we already know that a match exists from line 168). Originally spotted by Louise Crow (@crowbot) at https://github.com/mysociety/alaveteli/pull/1557
* Merge pull request #15732 from kuldeepaggarwal/correct-assets-ouputRafael Mendonça França2014-06-232-15/+15
|\ | | | | [ci skip] correct output for asset_helper methods
| * [ci skip] correct output for asset_helper methodsKuldeep Aggarwal2014-06-162-15/+15
| | | | | | | | see cc255d3
* | Merge pull request #15450 from aditya-kapoor/remove-nbsp-debugRafael Mendonça França2014-06-191-6/+6
|\ \ | | | | | | remove unnecessary gsub for space in ActionView::Helpers#debug
| * | remove unnecessary substitution for space in ActionView::Helpers#debugAditya Kapoor2014-06-141-6/+6
| |/
* | 'TextHelper#highlight' now accepts a block to highlight the matched words.Lucas Mazza2014-06-191-3/+14
| | | | | | | | | | | | | | | | The helper will yield each matched word, and you can use this instead of the ':highlighter' option for more complex replacing logic: highlight('My email is me@work.com', EMAIL_REGEXP) { |m| mail_to(m) } # => 'My email is <a href="mailto:me@work.com">me@work.com</a>'
* | highlight() now accepts regular expressions as well.Jan Szumiec2014-06-191-4/+6
| |
* | excerpt() now accepts regular expression instances as phrases.Jan Szumiec2014-06-191-3/+7
| |
* | [ci skip] /javascript/ ~> JavaScriptAditya Kapoor2014-06-171-1/+1
|/
* Merge pull request #15693 from pdg137/enforce_utf8Matthew Draper2014-06-143-7/+7
|\ | | | | | | In actionview, eliminate calls to tag that use html_safe parameter values.
| * In actionview, eliminate calls to tag that use html_safe parameter values. ↵Paul Grayson2014-06-133-8/+7
|/ | | | This is generally unnecessary, since tag handles string quoting, except in one case (utf8_enforcer_tag) where we want to specify the encoding ourselves.
* Merge pull request #15654 from pdg137/masterMatthew Draper2014-06-132-6/+9
|\ | | | | | | In tag helper, honor html_safe on arrays; also make safe_join more similar to Array.join
| * In tag helper, honor html_safe on array parameters; also make safe_join more ↵Paul Grayson2014-06-122-7/+19
|/ | | | similar to Array.join by first calling flatten.
* [ci skip] Fix doc for javascript_helperAditya Kapoor2014-06-111-1/+7
|
* [ci skip] Add Docs for strip_insignificant_zeros option in number helpersAkshay Vishnoi2014-06-101-10/+8
|
* [ci skip] Correct output and use valid options of number helpersAkshay Vishnoi2014-06-101-2/+2
|
* Unwrap another html_escapeMatthew Draper2014-06-071-2/+2
| | | | /cc @tenderlove
* eliminate more wasteful allocationsAaron Patterson2014-06-061-2/+2
|
* Merge pull request #15513 from zenspider/remove_flush_output_bufferAaron Patterson2014-06-051-9/+0
|\ | | | | Removed CaptureHelper#flush_output_buffer as it is only used in tests.
| * Removed CaptureHelper#flush_output_buffer as it is only used in tests.Ryan Davis2014-06-041-9/+0
| | | | | | | | reviewed: @tenderlove
* | document include_blank's usage with a string [ci skip]Greg Molnar2014-06-051-1/+4
| |
* | Revert "Correct Documentation for asset_tag_helpers"Rafael Mendonça França2014-06-041-17/+16
|/ | | | | | | | | | This reverts commit c22a253d1a72602331db1eba3e91bc945eff2346. Reason: Our documentation assumes the assets are in the proper place and we are using the default Rails stack. With the default Rails stack and the assets being in the correct place the assets helpers uses the `/assets` prefix.
* call `capture` fewer times from `form_for`Aaron Patterson2014-06-022-4/+4
|
* drastically reduce object allocationsAaron Patterson2014-06-021-2/+2
| | | | | | | | | | before this change, we were allocating AS::SafeBuffer objects that were being interpolated in to a string, so the safe buffer object was being thrown away. This change only allocates a string (vs a string *and* a safebuffer) and interpolates the string. On my test application, this reduced the AS::SafeBuffer objects from 1527k per request to about 500 per request.
* [ci skip] correct doc for ActionView::Helpers::DebugHelperAditya Kapoor2014-05-311-5/+1
|
* Update documentation for setting asset_host to a Proc, mention that the ↵Manuel Meurer2014-05-311-1/+4
| | | | request parameter might not be supplied [ci skip]
* Fix documentation簡煒航 (Jian Weihang)2014-05-291-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | To prevent `ArgumentError`, `config.action_view.sanitized_allowed_attributes` should be assigned by an array instead of a list. ``` /Users/tonytonyjan/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/set.rb:98:in `do_with_enum': value must be enumerable (ArgumentError) from /Users/tonytonyjan/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/set.rb:355:in `merge' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/actionview-4.1.1/lib/action_view/helpers/sanitize_helper.rb:211:in `sanitized_allowed_attributes=' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/actionview-4.1.1/lib/action_view/railtie.rb:26:in `block (3 levels) in <class:Railtie>' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/actionview-4.1.1/lib/action_view/railtie.rb:25:in `each' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/actionview-4.1.1/lib/action_view/railtie.rb:25:in `block (2 levels) in <class:Railtie>' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.1/lib/active_support/lazy_load_hooks.rb:38:in `instance_eval' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.1/lib/active_support/lazy_load_hooks.rb:38:in `execute_hook' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.1/lib/active_support/lazy_load_hooks.rb:28:in `block in on_load' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.1/lib/active_support/lazy_load_hooks.rb:27:in `each' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/activesupport-4.1.1/lib/active_support/lazy_load_hooks.rb:27:in `on_load' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/actionview-4.1.1/lib/action_view/railtie.rb:24:in `block in <class:Railtie>' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/initializable.rb:30:in `instance_exec' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/initializable.rb:30:in `run' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/initializable.rb:55:in `block in run_initializers' from /Users/tonytonyjan/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:226:in `block in tsort_each' from /Users/tonytonyjan/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:348:in `block (2 levels) in each_strongly_connected_component' from /Users/tonytonyjan/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:427:in `each_strongly_connected_component_from' from /Users/tonytonyjan/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:347:in `block in each_strongly_connected_component' from /Users/tonytonyjan/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:345:in `each' from /Users/tonytonyjan/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:345:in `call' from /Users/tonytonyjan/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:345:in `each_strongly_connected_component' from /Users/tonytonyjan/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:224:in `tsort_each' from /Users/tonytonyjan/.rvm/rubies/ruby-2.1.2/lib/ruby/2.1.0/tsort.rb:205:in `tsort_each' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/initializable.rb:54:in `run_initializers' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/application.rb:288:in `initialize!' from /Users/tonytonyjan/Dropbox/home/codes/penta_ruby/config/environment.rb:5:in `<top (required)>' from /Users/tonytonyjan/Dropbox/home/codes/penta_ruby/config.ru:3:in `require' from /Users/tonytonyjan/Dropbox/home/codes/penta_ruby/config.ru:3:in `block in <main>' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/rack-1.5.2/lib/rack/builder.rb:55:in `instance_eval' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/rack-1.5.2/lib/rack/builder.rb:55:in `initialize' from /Users/tonytonyjan/Dropbox/home/codes/penta_ruby/config.ru:in `new' from /Users/tonytonyjan/Dropbox/home/codes/penta_ruby/config.ru:in `<main>' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/rack-1.5.2/lib/rack/builder.rb:49:in `eval' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/rack-1.5.2/lib/rack/builder.rb:49:in `new_from_string' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/rack-1.5.2/lib/rack/builder.rb:40:in `parse_file' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/rack-1.5.2/lib/rack/server.rb:277:in `build_app_and_options_from_config' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/rack-1.5.2/lib/rack/server.rb:199:in `app' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/commands/server.rb:50:in `app' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/rack-1.5.2/lib/rack/server.rb:314:in `wrapped_app' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/commands/server.rb:130:in `log_to_stdout' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/commands/server.rb:67:in `start' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:81:in `block in server' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:76:in `tap' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:76:in `server' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/commands/commands_tasks.rb:40:in `run_command!' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/railties-4.1.1/lib/rails/commands.rb:17:in `<top (required)>' from /Users/tonytonyjan/Dropbox/home/codes/penta_ruby/bin/rails:8:in `require' from /Users/tonytonyjan/Dropbox/home/codes/penta_ruby/bin/rails:8:in `<top (required)>' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/client/rails.rb:27:in `load' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/client/rails.rb:27:in `call' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/client/command.rb:7:in `call' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/client.rb:26:in `run' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/bin/spring:48:in `<top (required)>' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/binstub.rb:11:in `load' from /Users/tonytonyjan/.rvm/gems/ruby-2.1.2/gems/spring-1.1.3/lib/spring/binstub.rb:11:in `<top (required)>' from /Users/tonytonyjan/Dropbox/home/codes/penta_ruby/bin/spring:16:in `require' from /Users/tonytonyjan/Dropbox/home/codes/penta_ruby/bin/spring:16:in `<top (required)>' from bin/rails:3:in `load' from bin/rails:3:in `<main>' ```
* correct docs for (asset|image)_path [ci skip]Aditya Kapoor2014-05-271-14/+14
|
* correct doc for (audio|video)_tag [ci skip]Aditya Kapoor2014-05-271-10/+10
|
* Correct Documentation for asset_tag_helpersAditya Kapoor2014-05-261-15/+16
|
* Convert source to string if it is present.Juanito Fatas2014-05-251-1/+1
|
* update docs to include html id for select_tagOmar Ismail2014-05-231-2/+2
|
* Merge pull request #15021 from hubertlepicki/allow_custom_host_in_asset_urlRafael Mendonça França2014-05-161-2/+10
|\ | | | | | | Allow custom asset host to be passed in asset_url
| * Improve documentation for asset_urlHubert Łępicki2014-05-081-1/+8
| | | | | | | | Updated CHANGELOG.md with entry about :host in asset_url
| * Allow custom asset host to be passed in asset_urlHubert Łępicki2014-05-081-1/+2
| |
* | Fix assertion order and :scissors: extra spacesCarlos Antonio da Silva2014-05-131-2/+1
| |
* | Merge pull request #15068 from josepjaume/patch-1Aaron Patterson2014-05-131-0/+2
|\ \ | | | | | | Dup options hash to prevent modifications
| * | Dup options hash to prevent modificationsJosep Jaume Rey2014-05-131-0/+2
| |/ | | | | | | `options[:default]` and `options[:raise]` can be mistakenly added to the `options` hash. This can be a problem if you're reusing the same object.
* / :cry::gun: use an empty hash for magical speed.Aaron Patterson2014-05-121-1/+5
|/ | | | | | For some reason, if the hash is empty, we choose "optimized" routes. I am not sure how or why optimized routes differ from regular routes. But, if we make sure the hash is empty, we get a nice speed improvement.