EpochFieldPlugin
t.h.o に登録しました。
このプラグインは大きく二つの機能があります:
- チケットの時刻を扱うフィールドを提供します。
- 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 と同様、「日付」「日時」「時刻」で終わるカラム名も文字列で表示します。カンマ区切りで複数の正規表現を並べられます。