From 9c669d54b7d7525327dfd8da8f2d5b93519de9d8 Mon Sep 17 00:00:00 2001 From: ameya86 Date: Wed, 6 Feb 2013 21:19:33 +0900 Subject: [PATCH] =?UTF-8?q?"=E6=B4=BB=E5=8B=95"=E3=81=AB=E5=AF=BE=E5=BF=9C?= =?UTF-8?q?=20/=20Add=20"Activity"?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.rdoc | 9 +++++++-- app/models/already_read.rb | 26 ++++++++++++++++++++++++++ config/locales/en.yml | 6 ++++-- config/locales/ja.yml | 6 ++++-- init.rb | 5 ++++- lib/already_read/issue_patch.rb | 2 +- sample/already_read1.png | Bin 0 -> 30648 bytes sample/already_read2.png | Bin 0 -> 22270 bytes 8 files changed, 46 insertions(+), 8 deletions(-) create mode 100644 sample/already_read1.png create mode 100644 sample/already_read2.png diff --git a/README.rdoc b/README.rdoc index b587ce5..0e8bf9a 100644 --- a/README.rdoc +++ b/README.rdoc @@ -6,7 +6,7 @@ == インストール -1. RAILS_ROOT/vendor/pluginsに配置する。 +1. RAILS_ROOT/pluginsに配置する。 2. rake db:migrate_plugins RAILS_ENV=production を実行する。 @@ -20,7 +20,7 @@ rake db:migrate:plugin RAILS_ENV=production VERSION=0 NAME=redmine_already_read を実行する。 -2. RAILS_ROOT/vendor/pluginsから削除する。 +2. RAILS_ROOT/pluginsから削除する。 3. Redmineを再起動する。 @@ -35,6 +35,11 @@ == 更新履歴 +=== Version 0.0.3 + +"活動"にチケットを読んだことが残るようにしました。 + + === Version 0.0.2 フィルターが正しく表示されていなかったのを修正。 diff --git a/app/models/already_read.rb b/app/models/already_read.rb index 671d333..fb57a2c 100644 --- a/app/models/already_read.rb +++ b/app/models/already_read.rb @@ -3,4 +3,30 @@ class AlreadyRead < ActiveRecord::Base belongs_to :issue validates_presence_of :user, :issue + + # "活動"に表示されるようにイベントをプロバイダを登録する + acts_as_event :title => Proc.new {|o| "#{o.issue.tracker.name} ##{o.issue.id} (#{o.issue.status}): #{o.issue.subject}"}, + :type => 'issue-note', + :author => :user, + :url => Proc.new {|o| {:controller => 'issues', :action => 'show', :id => o.issue.id}} + + acts_as_activity_provider :find_options => {:include => [ {:issue => [:project, :tracker, :status]}, :user ]}, + :author_key => :user_id, :type => 'issues' + + # "活動"で参照するための閲覧スコープ + scope :visible, + lambda {|*args| { :include => {:issue => :project}, + :conditions => Issue.visible_condition(args.shift || User.current, *args) } } + + # 状態の説明 + # "活動"で参照する + def description + return l(:activity_already_read) + end + + # 属するプロジェクト + # "活動"で参照する + def project + return self.issue.project + end end diff --git a/config/locales/en.yml b/config/locales/en.yml index 40b1661..7c32db8 100644 --- a/config/locales/en.yml +++ b/config/locales/en.yml @@ -3,5 +3,7 @@ en: field_already_read_date: Read Date label_already_read: Read - label_read: Read - label_unread: Unread + label_already_read_read: Read + label_already_read_unread: Unread + + activity_already_read: Read diff --git a/config/locales/ja.yml b/config/locales/ja.yml index 6c52dfa..d2cc34a 100644 --- a/config/locales/ja.yml +++ b/config/locales/ja.yml @@ -3,5 +3,7 @@ ja: field_already_read_date: 読んだ日時 label_already_read: 既読 - label_read: 既読 - label_unread: 未読 + label_already_read_read: 既読 + label_already_read_unread: 未読 + + activity_already_read: 読みました diff --git a/init.rb b/init.rb index bf8ab95..7acc6f0 100644 --- a/init.rb +++ b/init.rb @@ -8,7 +8,10 @@ name 'Redmine Already Read plugin' author 'OZAWA Yasuhiro' description 'Markup read issues.' - version '0.0.2' + version '0.0.3' url 'https://github.com/ameya86/redmine_already_read' author_url 'http://blog.livedoor.jp/ameya86/' + + # "活動"にチケットイベントとして登録 + activity_provider :issues, :class_name => 'AlreadyRead' end diff --git a/lib/already_read/issue_patch.rb b/lib/already_read/issue_patch.rb index c575da7..36136e4 100644 --- a/lib/already_read/issue_patch.rb +++ b/lib/already_read/issue_patch.rb @@ -26,7 +26,7 @@ class Issue < ActiveRecord::Base # 状態を文字で返す def already_read(user = User.current) - return (already_read?(user))? l(:label_read) : l(:label_unread) + return (already_read?(user))? l(:label_already_read_read) : l(:label_already_read_unread) end # 既読ならtrueを返す diff --git a/sample/already_read1.png b/sample/already_read1.png new file mode 100644 index 0000000000000000000000000000000000000000..94aa79815ec5ae074f08f5cd7df27acc15a1a635 GIT binary patch literal 30648 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 literal 0 HcmV?d00001 diff --git a/sample/already_read2.png b/sample/already_read2.png new file mode 100644 index 0000000000000000000000000000000000000000..828618937b8e3798257e36470794c3a3c19fd6bd GIT binary patch literal 22270 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