On Oct 26, 2016, at 2:29 PM, Alex Hall
<[email protected]<mailto:[email protected]>> wrote:
Hi all,
The way our company uses RT, there's no need to distinguish between comments
and replies, and users may use either one without realizing the difference. In
my new email template, I want to show whichever was set. My template works fine
without the two if statements I'm trying to use, but as soon as I put them in,
it fails. The odd thing is that, though the email using the template is never
sent, I don't get any errors at all. When I was missing a dollar sign earlier,
I got an error--an error not really related to the dollar sign, but an error.
Now, though, I get nothing whatsoever. Here's the snippet:
{ if (my $transactionCorrespond = $Transaction->correspond) {
$transactionCorrespond
} elsif (my $transactionComment = $Transaction->comment) { $transactionComment }
}
I don't know what's so wrong with that bit of code, but there must be
something. I don't really speak Perl, and the only page I've found thus far
that enumerates the Transaction object properties isn't overly helpful, so I'm
guessing at the properties I need. Can anyone see what I've done wrong here?
Thanks.
Since $Transaction is a thing then $Transaction->correspond is empty since it's
not a thing. This is why you'll get no errors.
Try this:
{
if ($self->TransactionObj->Type eq 'Correspond') {
# something
} elsif ($self->TransactionObj->Type eq 'Comment') {
# something else
} else {
# Not a Comment or Correspond transaction
}
}
Or something that actually does exactly what your pseudocode does:
{ $self->TransactionObj->Type }
I have found these very helpful in the past:
https://rt-wiki.bestpractical.com/wiki/CustomConditionSnippets
--
Landon Stewart
Lead Analyst - Abuse and Security Management
INTERNAP ®
📧 [email protected]<mailto:[email protected]>
🌍 www.internap.com<http://www.internap.com>
---------
RT 4.4 and RTIR training sessions, and a new workshop day!
https://bestpractical.com/training
* Boston - October 24-26
* Los Angeles - Q1 2017