RT future ticket resolve, #13853
[freeside.git] / rt / lib / RT / Transaction_Vendor.pm
1 package RT::Transaction;
2 use strict;
3 use vars qw(%_BriefDescriptions);
4
5 $_BriefDescriptions{'Set'} = sub {
6     my $self = shift;
7     if ( $self->Field eq 'Password' ) {
8         return $self->loc('Password changed');
9     }
10     elsif ( $self->Field eq 'Queue' ) {
11         my $q1 = new RT::Queue( $self->CurrentUser );
12         $q1->Load( $self->OldValue );
13         my $q2 = new RT::Queue( $self->CurrentUser );
14         $q2->Load( $self->NewValue );
15         return $self->loc("[_1] changed from [_2] to [_3]",
16                           $self->loc($self->Field) , $q1->Name , $q2->Name);
17     }
18
19     # Write the date/time change at local time:
20     elsif ($self->Field =~  /Due|Starts|Started|Told|WillResolve/) {
21         my $t1 = new RT::Date($self->CurrentUser);
22         $t1->Set(Format => 'ISO', Value => $self->NewValue);
23         my $t2 = new RT::Date($self->CurrentUser);
24         $t2->Set(Format => 'ISO', Value => $self->OldValue);
25         return $self->loc( "[_1] changed from [_2] to [_3]", $self->loc($self->Field), $t2->AsString, $t1->AsString );
26     }
27     else {
28         return $self->loc( "[_1] changed from [_2] to [_3]",
29                            $self->loc($self->Field),
30                            ($self->OldValue? "'".$self->OldValue ."'" : $self->loc("(no value)")) , "'". $self->NewValue."'" );
31     }
32 };
33
34 1;
35