X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=FS%2FFS%2FTicketSystem%2FRT_External.pm;h=dfacf95b588fc13220e7d8c6d4dfea76b667cb7e;hb=5b0df166c22e13eba83fabee858846ead6a54141;hp=c2aac2db7229e325f67baf20c1745cb16fd4d98c;hpb=a6fe07e49e3fc12169e801b1ed6874c3a5bd8500;p=freeside.git diff --git a/FS/FS/TicketSystem/RT_External.pm b/FS/FS/TicketSystem/RT_External.pm index c2aac2db7..dfacf95b5 100644 --- a/FS/FS/TicketSystem/RT_External.pm +++ b/FS/FS/TicketSystem/RT_External.pm @@ -10,6 +10,7 @@ use FS::UID qw(dbh); use FS::Record qw(qsearchs); use FS::cust_main; use Carp qw(cluck); +use FS::DBI; $me = '[FS::TicketSystem::RT_External]'; $DEBUG = 0; @@ -36,8 +37,8 @@ FS::UID->install_callback( sub { $dbh = dbh; if ($conf->config('ticket_system') eq 'RT_External') { my ($datasrc, $user, $pass) = $conf->config('ticket_system-rt_external_datasrc'); - $dbh = DBI->connect($datasrc, $user, $pass, { 'ChopBlanks' => 1 }) - or die "RT_External DBI->connect error: $DBI::errstr\n"; + $dbh = FS::DBI->connect($datasrc, $user, $pass, { 'ChopBlanks' => 1 }) + or die "RT_External FS::DBI->connect error: $FS::DBI::errstr\n"; $external_url = $conf->config('ticket_system-rt_external_url'); } @@ -175,12 +176,11 @@ sub _from_customer { } else { - $where = - "AND 0 = ( SELECT COUNT(*) FROM ObjectCustomFieldValues - WHERE ObjectId = Tickets.id - AND ObjectType = 'RT::Ticket' - AND $customfield_sql - ) + $where = " AND NOT EXISTS ( SELECT 1 FROM ObjectCustomFieldValues + WHERE ObjectId = Tickets.id + AND ObjectType = 'RT::Ticket' + AND $customfield_sql + ) "; } @@ -316,22 +316,22 @@ sub href_params_new_ticket { my $subtype = $object->table; my $pkey = $object->get($object->primary_key); - my %param = ( + my @param = ( 'Queue' => ($cust_main->agent->ticketing_queueid || $default_queueid), 'new-MemberOf'=> "freeside://freeside/$subtype/$pkey", 'Requestors' => $requestors, ); - ( $self->baseurl.'Ticket/Create.html', %param ); + ( $self->baseurl.'Ticket/Create.html', @param ); } sub href_new_ticket { my $self = shift; - my( $base, %param ) = $self->href_params_new_ticket(@_); + my( $base, @param ) = $self->href_params_new_ticket(@_); my $uri = new URI $base; - $uri->query_form(%param); + $uri->query_form(@param); $uri; }