Sha256: 6a0c9cbfa6aac9fd932b6d73f5ad18653f023dc9fe9a6e9b416d915982da863f
Contents?: true
Size: 1.09 KB
Versions: 10
Compression:
Stored size: 1.09 KB
Contents
module TooltipHelper def p_tooltip(id,options={},&block) output = tooltip_encode_markup(id,options) output += tooltip_encode_script(id,options,&block) end protected def tooltip_encode_markup(id,options={}) clientid = sanitize_to_id(id) options = options.stringify_keys options = options.merge(:id => clientid) content_tag(:div,nil, options) end def tooltip_encode_script(id,options={},&block) options = options.stringify_keys clientid = sanitize_to_id(id) widgetvar = options.has_key?("widgetVar") ? options["widgetVar"] : "widget_"+clientid options_ui = options options_ui = options_ui.merge(:id => clientid) if block_given? content_block = capture(&block) options_ui = options_ui.merge(:content => content_block) end options_ui = options_ui.to_json script = '$(function() {' script += "PrimeFaces.cw('Tooltip','#{widgetvar}',#{options_ui})" script += '});' javascript_tag(script, "id" => clientid+"_s") end end
Version data entries
10 entries across 10 versions & 1 rubygems