- if (!$self->{'TemplateObj'}) {
- require RT::Template;
- $self->{'TemplateObj'} = RT::Template->new($self->CurrentUser);
- $self->{'TemplateObj'}->LoadById($self->{'Template'});
-
+ if ( !$self->{'TemplateObj'} ) {
+ $self->{'TemplateObj'} = RT::Template->new( $self->CurrentUser );
+ $self->{'TemplateObj'}->LoadById( $self->{'Template'} );
+
+ if ( ( $self->{'TemplateObj'}->__Value('Queue') == 0 )
+ && $self->{'_TicketObj'} ) {
+ my $tmptemplate = RT::Template->new( $self->CurrentUser );
+ my ( $ok, $err ) = $tmptemplate->LoadQueueTemplate(
+ Queue => $self->{'_TicketObj'}->QueueObj->id,
+ Name => $self->{'TemplateObj'}->Name);
+
+ if ( $tmptemplate->id ) {
+ # found the queue-specific template with the same name
+ $self->{'TemplateObj'} = $tmptemplate;
+ }
+ }
+