wiki:EpochFieldPlugin

Epoch (unix time) field, timezone sensitive

Description

Note: on this page descriptions in japanese-Kanji are added after slashes (/).

This plugin will conflict in Trac 1.1.1. see trac:wiki:/TracDev/Proposals/TracTicketsCustomTimeFields and trac:ticket:1942.

This plugin adds the following features: / 以下の二機能があります:

  1. Timezone sensitive date&time field. / 時差を考慮した時刻フィールド
  2. Date & time presentation in report. / 時差を考慮したレポート表示

Bugs/Feature Requests

Existing bugs and feature requests for EpochFieldPlugin are here.

If you have any issues, create a new ticket. / 不具合報告はこちらへ。

Download

Download the zipped source from here.

Source

You can check out EpochFieldPlugin from here using Subversion, or browse the source with Trac.

入手はzip, Subversion, Tracでどうぞ。

Example / 例

Epoch field

Specify format=epoch for the custom-field in trac.ini as follows or use CustomFieldAdminPlugin: / trac.ini または CustomFieldAdminPlugin で、カスタムフィールドの format を epoch と指定します:

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

This plugin uses jquery.datetimeentry.js. Ctrl-Home to current datetime. / Ctrl-Home で現在日時を入力できます。

Epoch report

In the trac.ini file specify the field-names you want to translate from epoch to datetime-string in regular-expressions as follows: / trac.ini で 日時表記したいカラム名を正規表現で指定して:

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

And, for example, create a report query as follows: / たとえば以下のようにSQLを書くと、

SELECT id, summary, ticket.time,
    a.time AS accepted_datetime,
    c.time AS closed_datetime,
    c.author AS Closer
FROM ticket
LEFT JOIN (
    SELECT ticket, author, newvalue AS status, MAX(time) AS time
        FROM ticket_change 
        WHERE field = 'status' AND newvalue = 'accepted'
        GROUP BY ticket, newvalue, author
) AS a ON (a.ticket = ticket.id AND a.status = 'accepted')
LEFT JOIN (
    SELECT ticket, author, newvalue AS status, MAX(time) AS time
        FROM ticket_change 
        WHERE field = 'status' AND newvalue = 'closed'
        GROUP BY ticket, newvalue, author
) AS c ON (c.ticket = ticket.id AND c.status = 'closed')

Then the epoch columns, such as the status change time in the example above, shows as datetime string. / 更新日時といった列を unixtime ではなく日付文字列で表示します。

Recent Changes

15659 by matobaa on 2016-07-11 16:21:25
EpochFieldPlugin: follows changeset:15474
15101 by matobaa on 2015-12-07 04:04:46
epochfieldPlugin: add "Epoch" Macro;
15088 by matobaa on 2015-12-01 16:00:54
EpochFieldPlugin: fix a bug that epoch format is not hold in custom field admin panel by CustomFieldAdminPlugin
(more)

Author/Contributors

Author: matobaa
Maintainer: Matoba Akihiro
Contributors:

Last modified 9 months ago Last modified on Nov 11, 2015, 11:18:12 AM

Attachments (2)

Download all attachments as: .zip