Sha256: 0d81ecde6d44f814d92460660c0c2631f4d87f8bd34b42a07969bec6bdb2f91b
Contents?: true
Size: 1.95 KB
Versions: 2
Compression:
Stored size: 1.95 KB
Contents
module HomePage module ApplicationHelper include AutoHtml # Taken from https://github.com/seyhunak/twitter-bootstrap-rails # Modified to support html in flash message def bootstrap_flash_raw flash_messages = [] flash.each do |type, message| flash.delete(type) # Skip Devise :timeout and :timedout flags next if type == :timeout next if type == :timedout content = type.to_s == "filter" ? "" : content_tag(:button, raw("×"), :class => "close", "data-dismiss" => "alert") type = :success if ["notice", "filter"].include? type.to_s type = :danger if ["alert", "error", "recaptcha_error"].include? type.to_s content += raw(message) text = content_tag(:div, content, :class => "alert fade in alert-#{type}") flash_messages << text if message end flash_messages.join("\n").html_safe end def markdown(text) syntax_highlighter( auto_html(text) do youtube(width: 515, height: 300) dailymotion(width: 515, height: 300) vimeo(width: 515, height: 300) google_video(width: 515, height: 300) image redcarpet( renderer: Redcarpet::Render::XHTML.new( no_images: true, no_styles: true, hard_wrap: true, with_toc_data: true ), markdown_options: { no_intra_emphasis: true, autolink: true, fenced_code_blocks: true } ) link :target => "_blank", :rel => "nofollow" end.gsub(/(>https?:\/\/[^\<\\]+)/) do |match| truncate(match) end.gsub('<pre>', '').gsub('</pre>', '') ).html_safe end def syntax_highlighter(html) doc = Nokogiri::HTML(html) doc.search("//code[@class]").each do |code| code.replace Albino.colorize(code.text.rstrip, code[:class]) end doc.to_s end end end
Version data entries
2 entries across 2 versions & 1 rubygems
Version | Path |
---|---|
home_page-0.0.5 | app/helpers/home_page/application_helper.rb |
home_page-0.0.4 | app/helpers/home_page/application_helper.rb |