def menu_link(text, target, icon=nil, attributes={}) # Find path path = target.is_a?(String) ? target : target.path raise RuntimeError, "Cannot create a link to #{target.inspect} because this target is not outputted (its routing rule returns nil)" if path.nil? # Check for current page if @item_rep && @item_rep.path == path activestr = " class='active'" else activestr = "" end # Handle the icon iconstr = icon ? "" : "" # Join attributes attributes = attributes.inject('') do |memo, (key, value)| memo + key.to_s + '="' + h(value) + '" ' end # Create link "