wiki:EpochFieldPlugin

Version 19 (modified by figaro, 5 years ago) (diff)

Cosmetic changes

Epoch (unix time) field, timezone sensitive

Description

Note: in this page, after slashes, descriptions in japanese-KANJI are added.

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 [download:epochfieldplugin here].

Source

You can check out EpochFieldPlugin from here using Subversion, or browse the source with Trac.
入手は[download:epochfieldplugin 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 14:21:25
EpochFieldPlugin: follows changeset:15474
15101 by matobaa on 2015-12-07 03:04:46
epochfieldPlugin: add "Epoch" Macro;
15088 by matobaa on 2015-12-01 15: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: matobaa
Contributors:

Attachments (2)

Download all attachments as: .zip