Chris@154: require 'redmine' Chris@154: require 'embedded' Chris@154: Chris@154: Redmine::Plugin.register :embedded do Chris@154: name 'Embedded' Chris@154: author 'Jean-Philippe Lang' Chris@154: description 'Embed various documentations in your projects' Chris@154: version '0.0.1' Chris@154: settings :default => { 'path' => '/var/doc/{PROJECT}/html', Chris@154: 'index' => 'main.html overview-summary.html index.html', Chris@154: 'extensions' => 'html png gif', Chris@154: 'template' => '', Chris@154: 'encoding' => '', Chris@154: 'menu' => 'Embedded' }, Chris@154: :partial => 'settings/embedded' Chris@154: Chris@154: project_module :embedded do Chris@154: permission :view_embedded_doc, {:embedded => :index} Chris@154: end Chris@154: Chris@154: menu :project_menu, :embedded, { :controller => 'embedded', :action => 'index', :path => nil }, Chris@154: :caption => Proc.new { Setting.plugin_embedded['menu'] }, Chris@154: :if => Proc.new { !Setting.plugin_embedded['menu'].blank? } Chris@154: end Chris@154: Chris@154: # Routes Chris@154: class << ActionController::Routing::Routes;self;end.class_eval do Chris@154: define_method :clear!, lambda {} Chris@154: end Chris@154: Chris@154: ActionController::Routing::Routes.draw do |map| Chris@154: map.connect 'embedded/:id/*path', :controller => 'embedded', :action => 'index' Chris@154: end