Tracの通知メールを編集
参考:tracの通知メールをカスタマイズしてみる にも書かれていますが、通知メールのカスタマイズって、あまり見あたらないっぽいんですよね・・・。まぁ、多くの場合はデフォルトのままでもさほど困らないのかも知れませんが。
今回の目的は、通知メールの内容をシンプルにすること。PC宛に送信するのなら今のままでも問題ないのですが、携帯宛にも通知する場合、段組(?)の部分がかなり見にくくなってしまうので。
本来ならメールアドレス毎にメールのテンプレートを切り替えることができればいいんでしょうけど、さすがにそこまでPythonの知識があるわけではないので、ざっくりと書き換え。PCに送信した場合でも、それなりに内容がわかるから問題ないでしょう、ってことで(笑
今回修正したファイルは、ticket/notification.pyと、ticket/ticket_notify_email.txtの2ファイル。
1.段組表示をやめる場合は、notifycation.pyのformat_props(self)の以下の部分をコメントアウト。
width = [0, 0, 0, 0]
i = 0
for f in [f['name'] for f in fields if f['type'] != 'textarea']:
if not tkt.values.has_key(f):
continue
fval = tkt[f]
if fval.find('\n') != -1:
continue
idx = 2 * (i % 2)
if len(f) > width[idx]:
width[idx] = len(f)
if len(fval) > width[idx + 1]:
width[idx + 1] = len(fval)
i += 1
format = ('%%%is: %%-%is | ' % (width[0], width[1]),
' %%%is: %%-%is%s' % (width[2], width[3], CRLF))
l = (width[0] + width[1] + 5)
sep = l * '-' + '+' + (self.COLS - l) * '-'
txt = sep + CRLF
代わりに、txt = CRLFという行を追加(txtを初期化しておく必要があるので)。また、以下の部分もコメント化(あるいは変更)。
txt += format[i % 2] % (fname.capitalize(), fval)⇒
i += 1
txt += fname.capitalize() + ' : ' + fval + CRLFのように書き換え。
if i % 2:⇒コメント化
txt += CRLF
txt += sep⇒コメント化
2.メールに含める属性を限定する場合、以下のような感じで処理対象とする属性以外の場合は処理を行わないようにする(太字の部分を追加)。
target = [ 'reporter','owner','type','status' ]
for f in [f for f in fields if f['name'] != 'description']:
fname = f['name']
if not tkt.values.has_key(fname):
continue
if not fname in target:
continue
3.メールのフッターを変更する場合、例えばtemplate/ticket_notify_email.txtの
$project.name <${project.url or abs_href()}>
$project.descr
の2行を削除。
ってな感じでやっていけば、メールのテキストをそれなりにシンプルなものにできる・・・かも知れません(^^;
#なお、カスタムプロパティでtextareaがあった場合の挙動は確認していません。
「Subversion・Trac・etc.」カテゴリの記事
- Kanboard(2017.06.13)
- XML parsing failed : (413 Request Entity Too Large)(2017.06.11)
- TortoiseSVNとクライアント証明書(2012.09.17)
- Trac 1.1.1(dev)(2012.09.15)
- Trac1.0 リリース(2012.09.09)
The comments to this entry are closed.























![アスキー: UNIX MAGAZINE (ユニックス マガジン) 2008年 01月号 [雑誌]](http://ecx.images-amazon.com/images/I/11Z7w19zJ3L.jpg)













Comments