[Rt-commit] r19073 - in rt/3.8/trunk: lib/RT/Approval/Rule t/approval
clkao at bestpractical.com
clkao at bestpractical.com
Tue Apr 7 01:33:42 EDT 2009
Author: clkao
Date: Tue Apr 7 01:33:42 2009
New Revision: 19073
Modified:
rt/3.8/trunk/etc/RT_Config.pm.in
rt/3.8/trunk/lib/RT/Approval/Rule/Rejected.pm
rt/3.8/trunk/t/approval/basic.t
Log:
Make rejected approval send notes to the requestors by default,
with an option to turn it off.
Modified: rt/3.8/trunk/etc/RT_Config.pm.in
==============================================================================
--- rt/3.8/trunk/etc/RT_Config.pm.in (original)
+++ rt/3.8/trunk/etc/RT_Config.pm.in Tue Apr 7 01:33:42 2009
@@ -1389,6 +1389,23 @@
=back
+=head1 Approval Configuration
+
+Configration for the approvl system
+
+=over 4
+
+=item C<$ApprovalRejectionNotes>
+
+Should rejection notes be sent to the requestors? The default is true.
+
+=cut
+
+Set($ApprovalRejectionNotes, 1);
+
+
+=back
+
=head1 Miscellaneous Configuration
=over 4
Modified: rt/3.8/trunk/lib/RT/Approval/Rule/Rejected.pm
==============================================================================
--- rt/3.8/trunk/lib/RT/Approval/Rule/Rejected.pm (original)
+++ rt/3.8/trunk/lib/RT/Approval/Rule/Rejected.pm Tue Apr 7 01:33:42 2009
@@ -65,10 +65,19 @@
my $self = shift;
if ( my ($rejected) =
$self->TicketObj->AllDependedOnBy( Type => 'ticket' ) ) {
+ my $note = '';
+ if ( RT->Config->Get('ApprovalRejectionNotes') ) {
+ my $t = $self->TicketObj->Transactions;
+ while ( my $o = $t->Next ) {
+ next unless $o->Type eq 'Correspond';
+ $note .= $o->Content . "\n" if $o->ContentObj;
+ }
+ }
+
my $template = $self->GetTemplate('Approval Rejected',
TicketObj => $rejected,
Approval => $self->TicketObj,
- Notes => '');
+ Notes => $note);
$rejected->Correspond( MIMEObj => $template->MIMEObj );
$rejected->SetStatus(
Modified: rt/3.8/trunk/t/approval/basic.t
==============================================================================
--- rt/3.8/trunk/t/approval/basic.t (original)
+++ rt/3.8/trunk/t/approval/basic.t Tue Apr 7 01:33:42 2009
@@ -8,7 +8,7 @@
or plan skip_all => 'require Email::Abstract and Test::Email';
}
-plan tests => 38;
+plan tests => 39;
use RT;
use RT::Test;
@@ -202,8 +202,8 @@
);
RT::I18N::SetMIMEEntityToUTF8($notes); # convert text parts into utf-8
-# my ( $notesval, $notesmsg ) = $dependson_cfo->Correspond( MIMEObj => $notes );
-# ok($notesval, $notesmsg);
+ my ( $notesval, $notesmsg ) = $dependson_cfo->Correspond( MIMEObj => $notes );
+ ok($notesval, $notesmsg);
my ($ok, $msg) = $dependson_cfo->SetStatus( Status => 'rejected' );
ok($ok, "cfo can approve - $msg");
@@ -211,7 +211,7 @@
} { from => qr/RT System/,
to => 'minion at company.com',
subject => qr/Ticket Rejected: PO for stationary/,
- body => qr/rejected by CFO/
+ body => qr/rejected by CFO.*out of resources/s,
};
$t->Load($t->id);$dependson_ceo->Load($dependson_ceo->id);
More information about the Rt-commit
mailing list