wiki:EpochFieldPlugin
Last modified 15 months ago Last modified on 04/02/2012 03:40:41 AM

EpochFieldPlugin

t.h.o に登録しました。

このプラグインは大きく二つの機能があります:

  1. チケットの時刻を扱うフィールドを提供します。
  2. unixtimeで保存された値を日付文字列に変換して表示します。

epoch field

trac.ini (または CustomFieldAdminPlugin?)で以下のように指定すると:

[ticket-custom]
due = text
due.format = epoch

時刻を扱えるカスタムフィールドになります。このフィールドはユーザのタイムゾーンを意識するので、表示する人のタイムゾーン設定によって表現が変わります。pytzを導入している環境では夏時間も考慮します。

epoch report

unixtimeで保存された値をユーザのタイムゾーンでの日付文字列に変換して表示します。

チケットの作成日、更新日などをレポートで使用する場合、'time', 'date', 'created', 'modified', 'datetime' というカラム名であれば日付文字列で表示されますが、それ以外のカラム名はunixtime つまり 16桁の数値として表示されてしまいます。この問題を解決します。

trac.ini で指定したフィールドを日付文字列で表示します。既定値では以下のように表示します。

  • _date で終わるカラム名は日付として、
  • _time で終わるカラム名は時刻として、
  • _datetime で終わるカラム名は日付時刻として

trac.iniのepochfieldセクションで、date_columns, datetime_columns, time_columns を指定できます。たとえば、

[epochfield]
date_columns = .*_date, .*日付 
datetime_columns = .*_datetime, .*日時
time_columns = .*_time, .*時刻

と指定することで、Trac-ja と同様、「日付」「日時」「時刻」で終わるカラム名も文字列で表示します。カンマ区切りで複数の正規表現を並べられます。