Sha256: 76bd623892cb3fd16d6498fc4d86d5751dcce146e20c6f206a4735ae0f5516f4
Contents?: true
Size: 1.72 KB
Versions: 2
Compression:
Stored size: 1.72 KB
Contents
module Merb module Helpers module Tag # Creates a generic HTML tag. You can invoke it a variety of ways. # # tag :div # # <div></div> # # tag :div, 'content' # # <div>content</div> # # tag :div, :class => 'class' # # <div class="class"></div> # # tag :div, 'content', :class => 'class' # # <div class="class">content</div> # # tag :div do # 'content' # end # # <div>content</div> # # tag :div, :class => 'class' do # 'content' # end # # <div class="class">content</div> # def tag(name, contents = nil, attrs = {}, &block) attrs = contents if contents.is_a?(Hash) contents = capture(&block) if block_given? open_tag(name, attrs) + contents.to_s + close_tag(name) end # Creates the opening tag with attributes for the provided +name+ # attrs is a hash where all members will be mapped to key="value" # # Note: This tag will need to be closed def open_tag(name, attrs = nil) "<#{name}#{' ' + attrs.to_html_attributes if attrs && !attrs.empty?}>" end # Creates a closing tag def close_tag(name) "</#{name}>" end # Creates a self closing tag. Like <br/> or <img src="..."/> # # +name+ : the name of the tag to create # +attrs+ : a hash where all members will be mapped to key="value" def self_closing_tag(name, attrs = nil) "<#{name}#{' ' + attrs.to_html_attributes if attrs && !attrs.empty?}/>" end end end end class Merb::Controller #:nodoc: include Merb::Helpers::Tag end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
merb_helpers-0.9.2 | lib/merb_helpers/tag_helpers.rb |
merb_helpers-0.9.3 | lib/merb_helpers/tag_helpers.rb |