From a6737a8116e6145d1556a5359078103734f26a34 Mon Sep 17 00:00:00 2001 From: Alexander Sulfrian Date: Sun, 25 Jan 2015 17:13:14 +0100 Subject: Add AddCc and AddBcc. AddBcc does not work because the default template does not support to prefill the bcc. --- DefaultRecipient.sopm | 2 ++ Kernel/Modules/AdminDefaultRecipient.pm | 4 +-- Kernel/Output/HTML/DefaultRecipient.pm | 23 +++++++++++++--- .../Output/HTML/Standard/AdminDefaultRecipient.tt | 16 +++++++++++ Kernel/System/DefaultRecipient.pm | 31 +++++++++++++--------- 5 files changed, 59 insertions(+), 17 deletions(-) diff --git a/DefaultRecipient.sopm b/DefaultRecipient.sopm index 5f3a160..4ee8dd0 100644 --- a/DefaultRecipient.sopm +++ b/DefaultRecipient.sopm @@ -25,6 +25,8 @@ + + diff --git a/Kernel/Modules/AdminDefaultRecipient.pm b/Kernel/Modules/AdminDefaultRecipient.pm index df730ee..1704bd1 100644 --- a/Kernel/Modules/AdminDefaultRecipient.pm +++ b/Kernel/Modules/AdminDefaultRecipient.pm @@ -74,7 +74,7 @@ sub Run { my $DefaultRecipientObject = $Kernel::OM->Get('Kernel::System::DefaultRecipient'); my @NewIDs = $Self->{ParamObject}->GetArray( Param => 'IDs' ); my ( %GetParam, %Errors ); - for my $Parameter (qw(ID Title RemoveTo AddTo Comment)) { + for my $Parameter (qw(ID Title RemoveTo AddTo AddCc AddBcc Comment)) { $GetParam{$Parameter} = $Self->{ParamObject}->GetParam( Param => $Parameter ); @@ -164,7 +164,7 @@ sub Run { my @NewIDs = $Self->{ParamObject}->GetArray( Param => 'IDs' ); my ( %GetParam, %Errors ); - for my $Parameter (qw(ID Title RemoveTo AddTo Comment)) { + for my $Parameter (qw(ID Title RemoveTo AddTo AddCc AddBcc Comment)) { $GetParam{$Parameter} = $Self->{ParamObject}->GetParam( Param => $Parameter ); } diff --git a/Kernel/Output/HTML/DefaultRecipient.pm b/Kernel/Output/HTML/DefaultRecipient.pm index 775abb2..3965d9a 100644 --- a/Kernel/Output/HTML/DefaultRecipient.pm +++ b/Kernel/Output/HTML/DefaultRecipient.pm @@ -64,7 +64,9 @@ sub Run { ); my $RemoveTo = 0; - my @Addresses = (); + my @ToAddresses = (); + my @CcAddresses = (); + my @BccAddresses = (); foreach my $ID ( values %MappedDefaultRecipient ) { my %DefaultRecipient = $Self->{DefaultRecipientObject}->Get( ID => $ID, @@ -72,7 +74,13 @@ sub Run { $RemoveTo = 1 if $DefaultRecipient{RemoveTo}; if ( $DefaultRecipient{AddTo} ne '' ) { - push @Addresses, $DefaultRecipient{AddTo}; + push @ToAddresses, $DefaultRecipient{AddTo}; + } + if ( $DefaultRecipient{AddCc} ne '' ) { + push @CcAddresses, $DefaultRecipient{AddCc}; + } + if ( $DefaultRecipient{AddBcc} ne '' ) { + push @BccAddresses, $DefaultRecipient{AddBcc}; } } @@ -88,7 +96,7 @@ sub Run { } # add new addresses - foreach my $Address ( @Addresses ) { + foreach my $Address ( @ToAddresses ) { $Self->{LayoutObject}->Block( Name => 'PreFilledToRow', Data => { @@ -97,6 +105,15 @@ sub Run { ); } + foreach my $Address ( @CcAddresses ) { + $Self->{LayoutObject}->Block( + Name => 'PreFilledCcRow', + Data => { + Email => $Address, + }, + ); + } + return $Param{Data}; } diff --git a/Kernel/Output/HTML/Standard/AdminDefaultRecipient.tt b/Kernel/Output/HTML/Standard/AdminDefaultRecipient.tt index 03ec6a3..84d4dbb 100644 --- a/Kernel/Output/HTML/Standard/AdminDefaultRecipient.tt +++ b/Kernel/Output/HTML/Standard/AdminDefaultRecipient.tt @@ -72,6 +72,8 @@ [% Translate("Title") | html %] [% Translate("Remove 'To'") | html %] [% Translate("New 'To'") | html %] + [% Translate("New 'Cc'") | html %] + [% Translate("New 'Bcc'") | html %] [% Translate("Comment") | html %] [% Translate("Changed") | html %] [% Translate("Created") | html %] @@ -96,6 +98,8 @@ [% Translate(Data.RemoveToYesNo) | html %] [% Data.AddTo | html %] + [% Data.AddCc | html %] + [% Data.AddBcc | html %] [% Data.Comment | truncate(26) | html %] [% Data.ChangeTime | Localize("TimeShort") %] [% Data.CreateTime | Localize("TimeShort") %] @@ -163,6 +167,18 @@
+ +
+ +
+
+ + +
+ +
+
+
diff --git a/Kernel/System/DefaultRecipient.pm b/Kernel/System/DefaultRecipient.pm index d570dca..7bee4af 100644 --- a/Kernel/System/DefaultRecipient.pm +++ b/Kernel/System/DefaultRecipient.pm @@ -31,7 +31,7 @@ sub Add { my ( $Self, %Param ) = @_; # check needed stuff - for my $Needed (qw(Title RemoveTo AddTo Comment UserID)) { + for my $Needed (qw(Title RemoveTo AddTo AddCc AddBcc Comment UserID)) { if ( ! defined $Param{$Needed} ) { my $LogObject = $Kernel::OM->Get('Kernel::System::Log'); $LogObject->Log( @@ -47,13 +47,16 @@ sub Add { # insert new DefaultRecipient return if !$DBObject->Do( SQL => 'INSERT INTO default_recipient ' - . '(title, remove_to, add_to, comments, ' + . '(title, remove_to, add_to, add_cc, add_bcc, comments, ' . ' create_time, create_by, change_time, change_by) ' - . 'VALUES (?, ?, ?, ?, current_timestamp, ?, current_timestamp, ?)', + . 'VALUES (?, ?, ?, ?, ?, ?, ' + . 'current_timestamp, ?, current_timestamp, ?)', Bind => [ \$Param{Title}, \$Param{RemoveTo}, \$Param{AddTo}, + \$Param{AddCc}, + \$Param{AddBcc}, \$Param{Comment}, \$Param{UserID}, \$Param{UserID}, @@ -86,7 +89,7 @@ sub Update { my ( $Self, %Param ) = @_; # check needed stuff - for my $Needed (qw(ID Title RemoveTo AddTo Comment UserID)) { + for my $Needed (qw(ID Title RemoveTo AddTo AddCc AddBcc Comment UserID)) { if ( ! defined $Param{$Needed} ) { my $LogObject = $Kernel::OM->Get('Kernel::System::Log'); $LogObject->Log( @@ -102,13 +105,15 @@ sub Update { # insert new DefaultRecipient return if !$DBObject->Do( SQL => 'UPDATE default_recipient SET title = ?, remove_to = ?, ' - . 'add_to = ?, comments = ?, change_by = ?, ' - . 'change_time = current_timestamp ' + . 'add_to = ?, add_cc = ?, add_bcc = ?, comments = ?, ' + . 'change_by = ?, change_time = current_timestamp ' . 'WHERE id = ?', Bind => [ \$Param{Title}, \$Param{RemoveTo}, \$Param{AddTo}, + \$Param{AddCc}, + \$Param{AddBcc}, \$Param{Comment}, \$Param{UserID}, \$Param{ID}, @@ -135,7 +140,7 @@ sub Get { # get RrsponseChangeDefaultTO obejct return if !$DBObject->Prepare( - SQL => 'SELECT id, title, remove_to, add_to, ' + SQL => 'SELECT id, title, remove_to, add_to, add_cc, add_bcc, ' . 'comments, create_time, create_by, change_time, change_by ' . 'FROM default_recipient WHERE id = ?', Bind => [ \$Param{ID} ], @@ -149,11 +154,13 @@ sub Get { Title => $Data[1], RemoveTo => $Data[2], AddTo => $Data[3], - Comment => $Data[4], - CreateTime => $Data[5], - CreateBy => $Data[6], - ChangeTime => $Data[7], - ChangeBy => $Data[8], + AddCc => $Data[4], + AddBcc => $Data[5], + Comment => $Data[6], + CreateTime => $Data[7], + CreateBy => $Data[8], + ChangeTime => $Data[9], + ChangeBy => $Data[10], ); } -- cgit v1.2.3-1-g7c22