X-Git-Url: http://git.freeside.biz/gitweb/?a=blobdiff_plain;f=rt%2Flib%2FRT%2FURI%2Ffreeside.pm;h=6194fd0cb338b5821d2b287ecaa447260f2b8739;hb=7b125e587a4d1ee0aca692e23ea7897f671855ae;hp=57c2a2c4e42e038f655a85977e8d923833e5a38c;hpb=e19cf74e68ef0ebad22df8a4165a93b897d863b9;p=freeside.git diff --git a/rt/lib/RT/URI/freeside.pm b/rt/lib/RT/URI/freeside.pm index 57c2a2c4e..6194fd0cb 100644 --- a/rt/lib/RT/URI/freeside.pm +++ b/rt/lib/RT/URI/freeside.pm @@ -26,10 +26,10 @@ # END LICENSE BLOCK package RT::URI::freeside; -use RT::URI::base; +use base qw( RT::URI::base ); use strict; -use vars qw(@ISA $IntegrationType $URL); -@ISA = qw/RT::URI::base/; +use vars qw( $IntegrationType $URL ); +use Carp qw( cluck ); =head1 NAME @@ -196,10 +196,18 @@ sub ParseURI { my ($table, $pkey); my $uriprefix = $self->_FreesideURIPrefix; - if ($uri =~ /^$uriprefix\/(\w+)\/(\d+)$/) { + if ($uri =~ /^$uriprefix\/(\w+)\/(\d*)$/) { + $table = $1; $pkey = $2; + + unless ( $pkey ) { + cluck "bad URL $uri"; + return(undef); + } + $self->{'scheme'} = $self->Scheme; + } else { return(undef); }