« Tracの通知メールを編集 | Main | GridModifyPlugin »

2008.09.03

BatchModifyPlugin

BatchModifyPlugin

多数のチケットのステータスを一括して変更する必要があるような場合、1件ずつ開いて更新していくのはかなり面倒・・・(一括変更が発生するかどうかはチケットの運用スタイルにもよると思いますが)。そんなときは、BatchModifyPluginでサクッと処理。

普通にソースを取得してインストールし、プラグインを有効にし、ユーザに然るべき権限を与えるだけでクエリの画面から選択したチケットのステータスを一括して変更することが可能となります。

・カスタマイズされたワークフローにも対応(チケットのステータスを増やしている場合でもOK)。
・カスタムプロパティにも対応。
・一括コメントの登録が可能。

ってな感じで、なかなかいい感じです。ただし、デフォルトでは通知メールの送信を行うことはできません。ってことで、メールの送信を行うように書き換え。修正対象はbatchmod/web_ui.py

1.メール送信クラスをインポート。以下の行をソースコードの最初の方に追加。

from trac.ticket.notification import TicketNotifyEmail

2.メール送信処理を記述。
 r3918 の時点ではTODO: Send email notifications - copied from ticket.web_uiというコメントが記載されておりますので、将来的には標準で対応されるかと思いますが、とりあえずはこの部分を書き換え。ソースコードのコメントアウトを解除し、変数名としてticketを使用しているところを、tに書き換え。また、modtime=nowの部分を、modtime=t.time_changedに変更。
 このままだと、変更の有無にかかわらずメールが送信されてしまうので、より厳密に行うのであれば、t.save_changes(req.authname, comment)の戻り値で制御を分ける必要があるかと。

また、「メール送信」チェックボックスを使用するのであれば、あわせてbatchmod/templates/batchmod.htmlの編集も必要となります。

#0.11用のプラグインしか試していません。

|

« Tracの通知メールを編集 | Main | GridModifyPlugin »

Subversion・Trac・etc.」カテゴリの記事

Comments

Post a comment



(Not displayed with comment.)


Comments are moderated, and will not appear on this weblog until the author has approved them.



TrackBack


Listed below are links to weblogs that reference BatchModifyPlugin:

» BatchModifyPlugin(2) [気の向くままに・・・]
BatchModifyPluginの補足。 現在のバージョンでは、 ・カスタマイ [Read More]

Tracked on 2008.09.11 21:02

« Tracの通知メールを編集 | Main | GridModifyPlugin »