1# BEGIN BPS TAGGED BLOCK {{{ 2# 3# COPYRIGHT: 4# 5# This software is Copyright (c) 1996-2021 Best Practical Solutions, LLC 6# <sales@bestpractical.com> 7# 8# (Except where explicitly superseded by other copyright notices) 9# 10# 11# LICENSE: 12# 13# This work is made available to you under the terms of Version 2 of 14# the GNU General Public License. A copy of that license should have 15# been provided with this software, but in any event can be snarfed 16# from www.gnu.org. 17# 18# This work is distributed in the hope that it will be useful, but 19# WITHOUT ANY WARRANTY; without even the implied warranty of 20# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 21# General Public License for more details. 22# 23# You should have received a copy of the GNU General Public License 24# along with this program; if not, write to the Free Software 25# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 26# 02110-1301 or visit their web page on the internet at 27# http://www.gnu.org/licenses/old-licenses/gpl-2.0.html. 28# 29# 30# CONTRIBUTION SUBMISSION POLICY: 31# 32# (The following paragraph is not intended to limit the rights granted 33# to you to modify and distribute this software under the terms of 34# the GNU General Public License and is only of importance to you if 35# you choose to contribute your changes and enhancements to the 36# community by submitting them to Best Practical Solutions, LLC.) 37# 38# By intentionally submitting any modifications, corrections or 39# derivatives to this work, or any other work intended for use with 40# Request Tracker, to Best Practical Solutions, LLC, you confirm that 41# you are the copyright holder for those contributions and you grant 42# Best Practical Solutions, LLC a nonexclusive, worldwide, irrevocable, 43# royalty-free, perpetual, license to use, copy, create derivative 44# works based on those contributions, and sublicense and distribute 45# those contributions and any derivatives thereof. 46# 47# END BPS TAGGED BLOCK }}} 48 49package RT::Action::Autoreply; 50 51use strict; 52use warnings; 53 54use base qw(RT::Action::SendEmail); 55 56=head2 Prepare 57 58Set up the relevant recipients, then call our parent. 59 60=cut 61 62 63sub Prepare { 64 my $self = shift; 65 $self->SetRecipients(); 66 $self->SUPER::Prepare(); 67} 68 69 70=head2 SetRecipients 71 72Sets the recipients of this message to this ticket's Requestor. 73 74=cut 75 76 77sub SetRecipients { 78 my $self=shift; 79 80 push(@{$self->{'To'}}, $self->TicketObj->Requestors->MemberEmailAddresses); 81 82 return(1); 83} 84 85 86 87 88=head2 SetReturnAddress 89 90Set this message's return address to the apropriate queue address 91 92=cut 93 94sub SetReturnAddress { 95 my $self = shift; 96 97 my $friendly_name; 98 99 if (RT->Config->Get('UseFriendlyFromLine')) { 100 $friendly_name = $self->TicketObj->QueueObj->Description || 101 $self->TicketObj->QueueObj->Name; 102 } 103 104 $self->SUPER::SetReturnAddress( @_, friendly_name => $friendly_name ); 105 106} 107 108 109 110=head2 SetRTSpecialHeaders 111 112Set the C<Auto-Generated> header to C<auto-replied>, in accordance 113with RFC3834. 114 115=cut 116 117sub SetRTSpecialHeaders { 118 my $self = shift; 119 $self->SUPER::SetRTSpecialHeaders(@_); 120 $self->SetHeader( 'Auto-Submitted', 'auto-replied' ); 121} 122 123 124RT::Base->_ImportOverlays(); 125 1261; 127