module ApplicationHelper def nav_link_to(text, url, html_options = nil) if url.include?(params[:controller]) || (%w(tag_alias tag_implication).include?(params[:controller]) && url =~ /\/tag/) klass = "current-page" else klass = nil end (%{
  • } + link_to(text, url, html_options) + "
  • ").html_safe end def format_text(text, options = {}) DText.parse(text) end def id_to_color(id) r = id % 255 g = (id >> 8) % 255 b = (id >> 16) % 255 "rgb(#{r}, #{g}, #{b})" end def tag_header(tags) unless tags.blank? '/' + Tag.scan_query(tags).map {|t| link_to(h(t.tr("_", " ")), posts_path(:tags => t))}.join("+") end end def compact_time(time) if time > Time.now.beginning_of_day time.strftime("%H:%M") elsif time > Time.now.beginning_of_year time.strftime("%b %e") else time.strftime("%b %e, %Y") end end def print_preview(post, options = {}) unless Danbooru.config.can_see_post?(post, @current_user) return "" end options = {:blacklist => true}.merge(options) blacklist = options[:blacklist] ? "blacklisted" : "" width, height = post.preview_dimensions image_id = options[:image_id] image_id = %{id="#{h(image_id)}"} if image_id title = "#{h(post.cached_tags)} rating:#{post.rating} score:#{post.score} uploader:#{h(post.uploader_name)}" content_for(:blacklist) {"Post.register(#{post.to_json});\n"} if options[:blacklist] %{ #{title} } end end