[Rt-commit] rt branch, 4.0/date-cf-in-history-and-search, created. rt-4.0.10-125-gf34d637
? sunnavy
sunnavy at bestpractical.com
Fri Mar 22 10:37:38 EDT 2013
The branch, 4.0/date-cf-in-history-and-search has been created
at f34d637c757ba5116411ecd63a45400c6a362d9c (commit)
- Log -----------------------------------------------------------------
commit f34d637c757ba5116411ecd63a45400c6a362d9c
Author: sunnavy <sunnavy at bestpractical.com>
Date: Fri Mar 22 22:36:52 2013 +0800
canonicalize date/datetime cfs in ticket history and search results
diff --git a/lib/RT/Transaction.pm b/lib/RT/Transaction.pm
index 1832aef..857ccd0 100644
--- a/lib/RT/Transaction.pm
+++ b/lib/RT/Transaction.pm
@@ -717,8 +717,9 @@ sub BriefDescription {
my $self = shift;
my $field = $self->loc('CustomField');
+ my $cf;
if ( $self->Field ) {
- my $cf = RT::CustomField->new( $self->CurrentUser );
+ $cf = RT::CustomField->new( $self->CurrentUser );
$cf->SetContextObject( $self->Object );
$cf->Load( $self->Field );
$field = $cf->Name();
@@ -728,6 +729,44 @@ sub BriefDescription {
my $new = $self->NewValue;
my $old = $self->OldValue;
+ if ( $cf ) {
+
+ if ( $cf->Type eq 'DateTime' ) {
+ if ($old) {
+ my $date = RT::Date->new( $self->CurrentUser );
+ $date->Set( Format => 'ISO', Value => $old );
+ $old = $date->AsString;
+ }
+
+ if ($new) {
+ my $date = RT::Date->new( $self->CurrentUser );
+ $date->Set( Format => 'ISO', Value => $new );
+ $new = $date->AsString;
+ }
+ }
+ elsif ( $cf->Type eq 'Date' ) {
+ if ($old) {
+ my $date = RT::Date->new( $self->CurrentUser );
+ $date->Set(
+ Format => 'unknown',
+ Value => $old,
+ Timezone => 'UTC',
+ );
+ $old = $date->AsString( Time => 0, Timezone => 'UTC' );
+ }
+
+ if ($new) {
+ my $date = RT::Date->new( $self->CurrentUser );
+ $date->Set(
+ Format => 'unknown',
+ Value => $new,
+ Timezone => 'UTC',
+ );
+ $new = $date->AsString( Time => 0, Timezone => 'UTC' );
+ }
+ }
+ }
+
if ( !defined($old) || $old eq '' ) {
return $self->loc("[_1] [_2] added", $field, $new);
}
diff --git a/share/html/Elements/ColumnMap b/share/html/Elements/ColumnMap
index ac65459..c7f5818 100644
--- a/share/html/Elements/ColumnMap
+++ b/share/html/Elements/ColumnMap
@@ -112,10 +112,13 @@ my $COLUMN_MAP = {
# Display custom field contents, separated by newlines.
# For Image custom fields we also show a thumbnail here.
my $values = $cf->ValuesForObject( $_[0] );
+
+ my %types = map { $_ => 1 } qw/Image Date DateTime/;
+
my @values = map {
(
- ($cf->Type eq 'Image')
- ? \($m->scomp( '/Elements/ShowCustomFieldImage', Object => $_ ))
+ $types{$cf->Type} ?
+ \($m->scomp( '/Elements/ShowCustomField' . $cf->Type, Object => $_ ))
: $_->Content
),
\'<br />',
-----------------------------------------------------------------------
More information about the Rt-commit
mailing list