Merge pull request #13370 from abhishekjain16/refactor_rails

duplication removed(DRY)
This commit is contained in:
Yves Senn 2013-12-18 03:02:24 -08:00
commit 06dc51a6c0

@ -207,14 +207,7 @@ def image_tag(source, options={})
options[:alt] = options.fetch(:alt){ image_alt(src) }
end
if size = options.delete(:size)
if size =~ %r{\A\d+x\d+\z}
options[:width], options[:height] = size.split('x')
elsif size =~ %r{\A\d+\z}
options[:width] = options[:height] = size
end
end
options[:width], options[:height] = extract_dimensions(options.delete(:size)) if options[:size]
tag("img", options)
end
@ -280,14 +273,7 @@ def image_alt(src)
def video_tag(*sources)
multiple_sources_tag('video', sources) do |options|
options[:poster] = path_to_image(options[:poster]) if options[:poster]
if size = options.delete(:size)
if size =~ %r{\A\d+x\d+\z}
options[:width], options[:height] = size.split('x')
elsif size =~ %r{\A\d+\z}
options[:width] = options[:height] = size
end
end
options[:width], options[:height] = extract_dimensions(options.delete(:size)) if options[:size]
end
end
@ -323,6 +309,14 @@ def multiple_sources_tag(type, sources)
content_tag(type, nil, options)
end
end
def extract_dimensions(size)
if size =~ %r{\A\d+x\d+\z}
size.split('x')
elsif size =~ %r{\A\d+\z}
[size, size]
end
end
end
end
end