diff options
Diffstat (limited to 'FS')
| -rw-r--r-- | FS/FS/TicketSystem/RT_External.pm | 16 | 
1 files changed, 13 insertions, 3 deletions
diff --git a/FS/FS/TicketSystem/RT_External.pm b/FS/FS/TicketSystem/RT_External.pm index a668beba1..8564cf3d0 100644 --- a/FS/FS/TicketSystem/RT_External.pm +++ b/FS/FS/TicketSystem/RT_External.pm @@ -167,18 +167,28 @@ sub statuses {  }  sub href_customer_tickets { -  my( $self, $custnum, $priority ) = @_; +  my( $self, $custnum ) = ( shift, shift ); +  my( $priority, @statuses); +  if ( ref($_[0]) ) { +    my $opt = shift; +    $priority = $opt->{'priority'}; +    @statuses = $opt->{'statuses'} ? @{$opt->{'statuses'}} : $self->statuses; +  } else { +    $priority = shift; +    @statuses = $self->statuses; +  }    #my $href = $self->baseurl;    #i snarfed this from an RT bookmarked search, then unescaped (some of) it with    #perl -npe 's/%([0-9A-F]{2})/pack('C', hex($1))/eg;' -  my $href .=  +  #$href .=  +  my $href =       "Search/Results.html?Order=ASC&".      "Query= MemberOf = 'freeside://freeside/cust_main/$custnum' ".      #" AND ( Status = 'open'  OR Status = 'new'  OR Status = 'stalled' )" -    " AND ( ". join(' OR ', map "Status = '$_'", $self->statuses ). " ) " +    " AND ( ". join(' OR ', map "Status = '$_'", @statuses ). " ) "    ;    if ( defined($priority) && $field && $priority_field_queue ) {  | 
