annotate vendor/plugins/redmine_bibliography/init.rb @ 1070:858f042e8d11 bibplugin_cache

Created a patch for the ProjectsHelper to replace the one previously created for the Projects controller.
author luisf <luis.figueira@eecs.qmul.ac.uk>
date Wed, 21 Nov 2012 14:42:12 +0000
parents e11d8d13ebc5
children fe32745aaa3d
rev   line source
luis@298 1 require 'redmine'
luis@454 2 require 'dispatcher'
luis@454 3
luis@945 4 require 'bibtex'
luis@945 5 require 'citeproc'
luis@945 6
luis@945 7
luis@1068 8 RAILS_DEFAULT_LOGGER.info 'Starting Bibliography Plugin for Redmine'
luis@454 9
luis@454 10 # Patches to the Redmine core.
luis@454 11 Dispatcher.to_prepare :redmine_model_dependencies do
luis@454 12 require_dependency 'project'
luis@466 13 require_dependency 'user'
luis@651 14 require_dependency 'mailer'
luis@454 15
luis@454 16 unless Project.included_modules.include? Bibliography::ProjectPublicationsPatch
luis@454 17 Project.send(:include, Bibliography::ProjectPublicationsPatch)
luis@454 18 end
luis@466 19
luis@483 20 unless User.included_modules.include? Bibliography::UserAuthorPatch
luis@483 21 User.send(:include, Bibliography::UserAuthorPatch)
luis@466 22 end
luis@649 23
luis@651 24 unless Mailer.included_modules.include? Bibliography::MailerPatch
luis@651 25 Mailer.send(:include, Bibliography::MailerPatch)
luis@649 26 end
luis@649 27
luis@1070 28 unless ProjectsHelper.included_modules.include?(Bibliography::ProjectsHelperPatch)
luis@1070 29 ProjectsHelper.send(:include, Bibliography::ProjectsHelperPatch)
luis@1068 30 end
luis@454 31 end
luis@298 32
luis@455 33
luis@455 34 # Plugin Info
luis@298 35 Redmine::Plugin.register :redmine_bibliography do
luis@298 36 name 'Redmine Bibliography plugin'
luis@298 37 author 'Chris Cannam, Luis Figueira'
luis@455 38 description 'This is a bibliography management plugin for Redmine'
luis@298 39 version '0.0.1'
luis@298 40 url 'http://example.com/path/to/plugin'
luis@298 41 author_url 'http://example.com/about'
luis@376 42
chris@835 43 settings :default => { 'menu' => 'Publications' }, :partial => 'settings/bibliography'
luis@454 44
luis@455 45 project_module :redmine_bibliography do
luis@630 46 permission :publications, { :publications => :index }, :public => true
luis@630 47 permission :edit_publication, {:publications => [:edit, :update]}
luis@630 48 permission :add_publication, {:publications => [:new, :create]}
luis@632 49 permission :delete_publication, {:publications => :destroy}
luis@632 50
luis@455 51 end
luis@454 52
luis@455 53 # extending the Project Menu
luis@456 54 menu :project_menu, :publications, { :controller => 'publications', :action => 'index', :path => nil }, :after => :activity, :param => :project_id, :caption => Proc.new { Setting.plugin_redmine_bibliography['menu'] },
luis@455 55 :if => Proc.new { !Setting.plugin_redmine_bibliography['menu'].blank? }
luis@1068 56
luis@614 57 end