やりたいこと
プロジェクトメニューにある【概要】と【活動】のタブを削除したい。
こんな感じにしたい。
参考
[Computer Practice]
(http://cpractice.seesaa.net/article/168636970.html)
[Redmineのプラグイン(Plugin)を開発する~個人的まとめ~ @KTakata ]
(https://qiita.com/KTakata/items/d53eec3f71644ca7d9ff)
[Redmineガイド -プラグイン チュートリアル-]
(http://guide.redmine.jp/Plugin_Tutorial/)
動作環境
Redmine 3.4.3
Ruby 2.4.2
Rails 4.2.8
やり方
2つの方法があります。
1つは
[プロジェクトメニューの項目表示順序の変更方法]
(https://qiita.com/tamaryoo/items/b06105b308f727ff13e4)
に書いた方法で[/var/lib/redmine/lib/redmine.rb]の277,278行目の
menu.push :overview, { :controller => 'projects', :action => 'show' }
menu.push :activity, { :controller => 'activities', :action => 'index' }
を削除します。
もう1つはプラグインを作成することで実装することも可能です。
超簡単なので開発できない人でもできると思います。
例:redmine_change_menuuiという名前のプラグインを作る
1. プラグインの土台作成
# export RAILS_ENV="production"
おまじない。
# bundle exec rails generate redmine_plugin redmine_change_menuui
# bundle exec rails generate redmine_plugin_controller redmine_change_menuui # redmine_change_menuui index
# bundle exec rails generate redmine_plugin_model redmine_change_menuui change_menuui_model
# ls /var/lib/redmine/plugins/redmine_change_menuui/
redmine_change_menuuiができているのを確認する
2. init.rbの編集
プラグインのファイルを編集します。
[/var/lib/redmine/plugins/init.rb]
上部の方はプラグインの基本情報(管理画面で表示される情報)を記載。
下部でプロジェクトメニューから消す項目を記載。
気をつけるのはプラグインで実装している項目はエラーとなるので消せません。
Redmine::Plugin.register :redmine_change_menuui do
name 'Change Project Menu UI plugin'
author 'Ryosuke Yamamoto'
description 'Delete overviews and activities from the project menu.'
version '0.0.1'
url 'https://qiita.com/tamaryoo'
author_url 'https://qiita.com/tamaryoo'
Redmine::MenuManager.map :project_menu do |menu|
menu.delete :overview
menu.delete :activity
end
end
3. プラグインの実装
後はいつもどおりにプラグインを実装すれば完了です。(手順は割愛します)