Skip to content

Commit

Permalink
task #9: Code block disappeared in IE8
Browse files Browse the repository at this point in the history
  • Loading branch information
Dominik Chmaj authored and Dominik Chmaj committed Sep 16, 2015
1 parent 7a786ee commit fece080
Show file tree
Hide file tree
Showing 3 changed files with 32 additions and 7 deletions.
3 changes: 3 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
source 'https://rubygems.org'

gem 'useragent'
4 changes: 2 additions & 2 deletions lib/highlightjs_highlighting.rb
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
module HighlightjsHighlighting
class << self
def highlight_by_filename(text, filename)
Rails.logger.warn "redmine_highlightjs: syntax by filename #{filename}"
Rails.logger.info "redmine_highlightjs: syntax by filename #{filename}"
end

def highlight_by_language(text, language)
Rails.logger.warn "redmine_highlightjs: syntax #{language}"
Rails.logger.info "redmine_highlightjs: syntax #{language}"
end
end
end
32 changes: 27 additions & 5 deletions lib/hooks/view_highlighted_hook.rb
Original file line number Diff line number Diff line change
Expand Up @@ -2,16 +2,38 @@ module Highlightjs
module Hooks
class ViewHighlightedHook < Redmine::Hook::ViewListener
def view_layouts_base_html_head(context={})
setting = Setting.plugin_redmine_highlightjs[:theme]
setting = 'monokai_sublime' if setting.nil? || setting.empty?
return stylesheet_link_tag("themes/#{setting}.css", :plugin => "redmine_highlightjs", :media => "screen") +
# stylesheet_link_tag("numberlines.css", :plugin => "redmine_highlightjs", :media => "screen") +

request = context[:request].env['HTTP_USER_AGENT']
user_agent = UserAgent.parse(request)

if SupportedBrowsers.detect { |browser| user_agent >= browser }
Rails.logger.info "redmine_highlightjs2: supported browser: #{user_agent}"
Redmine::SyntaxHighlighting.highlighter = 'Highlightjs'
setting = Setting.plugin_redmine_highlightjs[:theme]
setting = 'monokai_sublime' if setting.nil? || setting.empty?
return stylesheet_link_tag("themes/#{setting}.css", :plugin => "redmine_highlightjs", :media => "screen") +
stylesheet_link_tag("fixes.css", :plugin => "redmine_highlightjs", :media => "screen") +
javascript_include_tag('highlight.pack.min.js', :plugin => 'redmine_highlightjs') +
# javascript_include_tag('numberlines.js', :plugin => 'redmine_highlightjs') +
javascript_include_tag('loader.js', :plugin => 'redmine_highlightjs')
else
Rails.logger.info "redmine_highlightjs2: *NOT* supported browser: #{user_agent}"
return '';
end

end
end

private

Browser = Struct.new(:browser, :version)

SupportedBrowsers = [
Browser.new('Safari', '2'),
Browser.new('Firefox', '3'),
Browser.new('Chrome', '10'),
Browser.new('Internet Explorer', '9')
]

end
end

0 comments on commit fece080

Please sign in to comment.