annotate vendor/plugins/redmine_bibliography/init.rb @ 632:84a746383a5b feature_36

Feature #241 - new permission (delete publication) added.
author luisf <luis.figueira@eecs.qmul.ac.uk>
date Wed, 31 Aug 2011 18:07:56 +0100
parents d91ee0e196e5
children 0aef0738823b
rev   line source
luis@298 1 require 'redmine'
luis@454 2 require 'dispatcher'
luis@454 3
luis@455 4 RAILS_DEFAULT_LOGGER.info 'Starting Bibliography Plugin for RedMine'
luis@454 5
luis@454 6 # Patches to the Redmine core.
luis@454 7 Dispatcher.to_prepare :redmine_model_dependencies do
luis@454 8 require_dependency 'project'
luis@466 9 require_dependency 'user'
luis@454 10
luis@454 11 unless Project.included_modules.include? Bibliography::ProjectPublicationsPatch
luis@454 12 Project.send(:include, Bibliography::ProjectPublicationsPatch)
luis@454 13 end
luis@466 14
luis@483 15 unless User.included_modules.include? Bibliography::UserAuthorPatch
luis@483 16 User.send(:include, Bibliography::UserAuthorPatch)
luis@466 17 end
luis@454 18 end
luis@298 19
luis@455 20
luis@455 21 # Plugin Info
luis@298 22 Redmine::Plugin.register :redmine_bibliography do
luis@298 23 name 'Redmine Bibliography plugin'
luis@298 24 author 'Chris Cannam, Luis Figueira'
luis@455 25 description 'This is a bibliography management plugin for Redmine'
luis@298 26 version '0.0.1'
luis@298 27 url 'http://example.com/path/to/plugin'
luis@298 28 author_url 'http://example.com/about'
luis@376 29
luis@455 30 settings :default => { 'menu' => 'Bibliography' }, :partial => 'settings/bibliography'
luis@454 31
luis@455 32 project_module :redmine_bibliography do
luis@630 33 permission :publications, { :publications => :index }, :public => true
luis@630 34 permission :edit_publication, {:publications => [:edit, :update]}
luis@630 35 permission :add_publication, {:publications => [:new, :create]}
luis@632 36 permission :delete_publication, {:publications => :destroy}
luis@632 37
luis@455 38 end
luis@454 39
luis@455 40 # extending the Project Menu
luis@456 41 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 42 :if => Proc.new { !Setting.plugin_redmine_bibliography['menu'].blank? }
luis@455 43
luis@614 44 end