[Rt-commit] rt branch, 3.9-trunk, updated. rt-3.9.4-181-g6160683
? sunnavy
sunnavy at bestpractical.com
Wed Oct 20 04:00:44 EDT 2010
The branch, 3.9-trunk has been updated
via 6160683c58469be4f59f97e0b65645b49e396e17 (commit)
via 243d28c20528e9a04445c13c122243e24ecee091 (commit)
via e96138073f69ed354f882c95d04ec6c34ac7db96 (commit)
from 42be2d45c1ec305a5c64e8d356ee1ffe33464d1b (commit)
Summary of changes:
lib/RT/Interface/Email.pm | 35 ++++++++++++++++++-
lib/RT/Transaction_Overlay.pm | 7 ++++
share/html/Ticket/Forward.html | 8 ++--
t/web/ticket_forward.t | 73 ++++++++++++++++++++++++++++++++++++++++
4 files changed, 117 insertions(+), 6 deletions(-)
create mode 100644 t/web/ticket_forward.t
- Log -----------------------------------------------------------------
commit e96138073f69ed354f882c95d04ec6c34ac7db96
Author: sunnavy <sunnavy at bestpractical.com>
Date: Wed Oct 20 15:43:24 2010 +0800
warning fix
diff --git a/share/html/Ticket/Forward.html b/share/html/Ticket/Forward.html
index de4afa7..1ad025f 100644
--- a/share/html/Ticket/Forward.html
+++ b/share/html/Ticket/Forward.html
@@ -57,7 +57,7 @@
<form action="Forward.html" name="ForwardMessage" method="post">
% $m->callback( CallbackName => 'FormStart', ARGSRef => \%ARGS );
<input type="hidden" class="hidden" name="id" value="<% $id %>" /><br />
-<input type="hidden" class="hidden" name="QuoteTransaction" value="<% $ARGS{'QuoteTransaction'} %>" />
+<input type="hidden" class="hidden" name="QuoteTransaction" value="<% $ARGS{'QuoteTransaction'} || '' %>" />
<table border="0">
@@ -65,13 +65,13 @@
<td><% $TicketObj->Subject %></td></tr>
<tr><td align="right"><&|/l&>To</&>:</td>
-<td><input name="To" size="60" value="<% $ARGS{'To'} %>" /></td></tr>
+<td><input name="To" size="60" value="<% $ARGS{'To'} || '' %>" /></td></tr>
<tr><td align="right"><&|/l&>Cc</&>:</td>
-<td><input name="Cc" size="60" value="<% $ARGS{'Cc'} %>" /></td></tr>
+<td><input name="Cc" size="60" value="<% $ARGS{'Cc'} || '' %>" /></td></tr>
<tr><td align="right"><&|/l&>BCc</&>:</td>
-<td><input name="Bcc" size="60" value="<% $ARGS{'Bcc'} %>" /></td></tr>
+<td><input name="Bcc" size="60" value="<% $ARGS{'Bcc'} || '' %>" /></td></tr>
</table>
commit 243d28c20528e9a04445c13c122243e24ecee091
Author: sunnavy <sunnavy at bestpractical.com>
Date: Wed Oct 20 15:45:21 2010 +0800
record forward records to txn
diff --git a/lib/RT/Interface/Email.pm b/lib/RT/Interface/Email.pm
index 0567740..92d3022 100755
--- a/lib/RT/Interface/Email.pm
+++ b/lib/RT/Interface/Email.pm
@@ -614,7 +614,19 @@ sub ForwardTransaction {
my $entity = $txn->ContentAsMIME;
- return SendForward( %args, Entity => $entity, Transaction => $txn );
+ my ( $ret, $msg ) = SendForward( %args, Entity => $entity, Transaction => $txn );
+ if ($ret) {
+ my $ticket = $txn->TicketObj;
+ my ( $ret, $msg ) = $ticket->_NewTransaction(
+ Type => 'Forward Transaction',
+ Field => $txn->id,
+ Data => join ', ', grep { length } $args{To}, $args{Cc}, $args{Bcc},
+ );
+ unless ($ret) {
+ $RT::Logger->error("Failed to create transaction: $msg");
+ }
+ }
+ return ( $ret, $msg );
}
=head2 ForwardTicket TICKET, To => '', Cc => '', Bcc => ''
@@ -640,7 +652,26 @@ sub ForwardTicket {
map $_->ContentAsMIME,
@{ $txns->ItemsArrayRef };
- return SendForward( %args, Entity => $entity, Ticket => $ticket, Template => 'Forward Ticket' );
+ my ( $ret, $msg ) = SendForward(
+ %args,
+ Entity => $entity,
+ Ticket => $ticket,
+ Template => 'Forward Ticket',
+ );
+
+ if ($ret) {
+ my ( $ret, $msg ) = $ticket->_NewTransaction(
+ Type => 'Forward Ticket',
+ Field => $ticket->id,
+ Data => join ', ', grep { length } $args{To}, $args{Cc}, $args{Bcc},
+ );
+ unless ($ret) {
+ $RT::Logger->error("Failed to create transaction: $msg");
+ }
+ }
+
+ return ( $ret, $msg );
+
}
=head2 SendForward Entity => undef, Ticket => undef, Transaction => undef, Template => undef, To => '', Cc => '', Bcc => ''
diff --git a/lib/RT/Transaction_Overlay.pm b/lib/RT/Transaction_Overlay.pm
index a480927..e03f133 100755
--- a/lib/RT/Transaction_Overlay.pm
+++ b/lib/RT/Transaction_Overlay.pm
@@ -668,6 +668,13 @@ sub BriefDescription {
elsif ( $type =~ /SystemError/ ) {
return $self->loc("System error");
}
+ elsif ( $type =~ /Forward Transaction/ ) {
+ return $self->loc( "Forwarded Transaction #[_1] to [_2]",
+ $self->Field, $self->Data );
+ }
+ elsif ( $type =~ /Forward Ticket/ ) {
+ return $self->loc( "Forwarded Ticket to [_1]", $self->Data );
+ }
if ( my $code = $_BriefDescriptions{$type} ) {
return $code->($self);
commit 6160683c58469be4f59f97e0b65645b49e396e17
Author: sunnavy <sunnavy at bestpractical.com>
Date: Wed Oct 20 15:45:52 2010 +0800
/Ticket/Forward.html test
diff --git a/t/web/ticket_forward.t b/t/web/ticket_forward.t
new file mode 100644
index 0000000..045cdf5
--- /dev/null
+++ b/t/web/ticket_forward.t
@@ -0,0 +1,73 @@
+#!/usr/bin/perl
+
+use strict;
+use warnings;
+
+use RT::Test tests => 19;
+my ( $baseurl, $m ) = RT::Test->started_ok;
+ok $m->login, 'logged in as root';
+
+RT::Test->set_mail_catcher;
+$m->get_ok( $baseurl . '/Ticket/Create.html?Queue=1' );
+
+$m->form_number(3);
+$m->submit_form(
+ form_number => 3,
+ fields => {
+ Subject => 'test forward',
+ Content => 'this is content',
+ },
+);
+$m->content_like( qr/Ticket \d+ created/i, 'created the ticket' );
+RT::Test->clean_caught_mails;
+
+diag "Foward Ticket" if $ENV{TEST_VERBOSE};
+{
+ $m->follow_link_ok( { text => 'Forward' },
+ 'follow 1st Forward to forward ticket' );
+
+ $m->submit_form(
+ form_number => 3,
+ fields => {
+ To => 'rt-test, rt-to at example.com',
+ Cc => 'rt-cc at example.com',
+ },
+ button => 'ForwardAndReturn'
+ );
+ $m->content_contains( 'Send email successfully', 'sent mail msg' );
+ $m->content_contains(
+'Forwarded Ticket to rt-test, rt-to at example.com, rt-cc at example.com',
+ 'txn msg'
+ );
+ my ($mail) = RT::Test->fetch_caught_mails;
+ like( $mail, qr!Subject: test forward!, 'Subject field' );
+ like( $mail, qr!To: rt-test, rt-to\@example.com!, 'To field' );
+ like( $mail, qr!Cc: rt-cc\@example.com!, 'Cc field' );
+ like( $mail, qr!This is a forward of ticket!, 'content' );
+}
+
+diag "Foward Transaction" if $ENV{TEST_VERBOSE};
+{
+ $m->follow_link_ok( { text => 'Forward', n => 2 }, 'follow 2nd Forward' );
+ $m->submit_form(
+ form_number => 3,
+ fields => {
+ To => 'rt-test, rt-to at example.com',
+ Cc => 'rt-cc at example.com',
+ Bcc => 'rt-bcc at example.com'
+ },
+ button => 'ForwardAndReturn'
+ );
+ $m->content_contains( 'Send email successfully', 'sent mail msg' );
+ $m->content_like(
+qr/Forwarded Transaction #\d+ to rt-test, rt-to\@example.com, rt-cc\@example.com, rt-bcc\@example.com/,
+ 'txn msg'
+ );
+ my ($mail) = RT::Test->fetch_caught_mails;
+ like( $mail, qr!Subject: test forward!, 'Subject field' );
+ like( $mail, qr!To: rt-test, rt-to\@example.com!, 'To field' );
+ like( $mail, qr!Cc: rt-cc\@example.com!, 'Cc field' );
+ like( $mail, qr!Bcc: rt-bcc\@example.com!, 'Bcc field' );
+ like( $mail, qr!This is a forward of transaction!, 'content' );
+}
+
-----------------------------------------------------------------------
More information about the Rt-commit
mailing list