diff options
| author | Ivan Kohler <ivan@freeside.biz> | 2013-06-04 00:16:28 -0700 |
|---|---|---|
| committer | Ivan Kohler <ivan@freeside.biz> | 2013-06-04 00:16:28 -0700 |
| commit | 7588a4ac90a9b07c08a3107cd1107d773be1c991 (patch) | |
| tree | 55b8bedb5f899e705da0ba7f608267943bf89e94 /rt/lib/RT/Link.pm | |
| parent | 98d2b25256055abb0dfcb9f586b434474fa97afd (diff) | |
RT 4.0.13
Diffstat (limited to 'rt/lib/RT/Link.pm')
| -rw-r--r-- | rt/lib/RT/Link.pm | 45 |
1 files changed, 14 insertions, 31 deletions
diff --git a/rt/lib/RT/Link.pm b/rt/lib/RT/Link.pm index b26f5643c..7a277473f 100644 --- a/rt/lib/RT/Link.pm +++ b/rt/lib/RT/Link.pm @@ -2,7 +2,7 @@ # # COPYRIGHT: # -# This software is Copyright (c) 1996-2012 Best Practical Solutions, LLC +# This software is Copyright (c) 1996-2013 Best Practical Solutions, LLC # <sales@bestpractical.com> # # (Except where explicitly superseded by other copyright notices) @@ -96,33 +96,17 @@ sub Create { @_ ); my $base = RT::URI->new( $self->CurrentUser ); - $base->FromURI( $args{'Base'} ); - - unless ( $base->Resolver && $base->Scheme ) { - my $msg = $self->loc("Couldn't resolve base '[_1]' into a URI.", - $args{'Base'}); + unless ($base->FromURI( $args{'Base'} )) { + my $msg = $self->loc("Couldn't resolve base '[_1]' into a URI.", $args{'Base'}); $RT::Logger->warning( "$self $msg" ); - - if (wantarray) { - return(undef, $msg); - } else { - return (undef); - } + return wantarray ? (undef, $msg) : undef; } my $target = RT::URI->new( $self->CurrentUser ); - $target->FromURI( $args{'Target'} ); - - unless ( $target->Resolver ) { - my $msg = $self->loc("Couldn't resolve target '[_1]' into a URI.", - $args{'Target'}); + unless ($target->FromURI( $args{'Target'} )) { + my $msg = $self->loc("Couldn't resolve target '[_1]' into a URI.", $args{'Target'}); $RT::Logger->warning( "$self $msg" ); - - if (wantarray) { - return(undef, $msg); - } else { - return (undef); - } + return wantarray ? (undef, $msg) : undef; } my $base_id = 0; @@ -186,22 +170,21 @@ sub LoadByParams { @_ ); my $base = RT::URI->new($self->CurrentUser); - $base->FromURI( $args{'Base'} ); + $base->FromURI( $args{'Base'} ) + or return (0, $self->loc("Couldn't parse Base URI: [_1]", $args{Base})); my $target = RT::URI->new($self->CurrentUser); - $target->FromURI( $args{'Target'} ); - - unless ($base->Resolver && $target->Resolver) { - return ( 0, $self->loc("Couldn't load link") ); - } - + $target->FromURI( $args{'Target'} ) + or return (0, $self->loc("Couldn't parse Target URI: [_1]", $args{Target})); my ( $id, $msg ) = $self->LoadByCols( Base => $base->URI, Type => $args{'Type'}, Target => $target->URI ); unless ($id) { - return ( 0, $self->loc("Couldn't load link") ); + return ( 0, $self->loc("Couldn't load link: [_1]", $msg) ); + } else { + return ($id, $msg); } } |
