Browse Source

Adds support for :plugin option to image_tag helper.

git-svn-id: svn+ssh://rubyforge.org/var/svn/redmine/trunk@9559 e93f8b46-1217-0410-a6f0-8f06a7374b81
tags/2.0.0
Jean-Philippe Lang 12 years ago
parent
commit
da43f785be
2 changed files with 20 additions and 0 deletions
  1. 12
    0
      app/helpers/application_helper.rb
  2. 8
    0
      test/unit/helpers/application_helper_test.rb

+ 12
- 0
app/helpers/application_helper.rb View File

@@ -1065,6 +1065,18 @@ module ApplicationHelper
super sources, options
end

# Overrides Rails' image_tag with plugins support.
# Examples:
# image_tag('image.png') # => picks defaults image.png
# image_tag('image.png', :plugin => 'foo) # => picks image.png from plugin's assets
#
def image_tag(source, options={})
if plugin = options.delete(:plugin)
source = "/plugin_assets/#{plugin}/images/#{source}"
end
super source, options
end

# Overrides Rails' javascript_include_tag with plugins support
# Examples:
# javascript_include_tag('scripts') # => picks scripts.js from defaults

+ 8
- 0
test/unit/helpers/application_helper_test.rb View File

@@ -1054,6 +1054,14 @@ RAW
assert_match 'href="/plugin_assets/foo/stylesheets/styles.css"', stylesheet_link_tag("styles", :plugin => :foo)
end

def test_image_tag_should_pick_the_default_image
assert_match 'src="/images/image.png"', image_tag("image.png")
end

def test_image_tag_sfor_plugin_should_pick_the_plugin_image
assert_match 'src="/plugin_assets/foo/images/image.png"', image_tag("image.png", :plugin => :foo)
end

def test_javascript_include_tag_should_pick_the_default_javascript
assert_match 'src="/javascripts/scripts.js"', javascript_include_tag("scripts")
end

Loading…
Cancel
Save