From 4c236f418a7122cecd22c36c679a7b9faf5469f7 Mon Sep 17 00:00:00 2001 From: Matt Selsky Date: Sun, 17 Jun 2012 14:19:09 +0200 Subject: Bug 759030: Clean up Bugzilla::BugUrl modules r=timello a=LpSolit --- Bugzilla/BugUrl/SourceForge.pm | 29 ++++++++++++----------------- 1 file changed, 12 insertions(+), 17 deletions(-) (limited to 'Bugzilla/BugUrl/SourceForge.pm') diff --git a/Bugzilla/BugUrl/SourceForge.pm b/Bugzilla/BugUrl/SourceForge.pm index 69d4f98c2..11cdd0ff1 100644 --- a/Bugzilla/BugUrl/SourceForge.pm +++ b/Bugzilla/BugUrl/SourceForge.pm @@ -9,17 +9,21 @@ package Bugzilla::BugUrl::SourceForge; use strict; use base qw(Bugzilla::BugUrl); -use Bugzilla::Error; -use Bugzilla::Util; - ############################### #### Methods #### ############################### sub should_handle { my ($class, $uri) = @_; + + # SourceForge tracker URLs have only one form: + # http://sourceforge.net/tracker/?func=detail&aid=111&group_id=111&atid=111 return ($uri->authority =~ /^sourceforge.net$/i - and $uri->path =~ m|/tracker/|) ? 1 : 0; + and $uri->path =~ m|/tracker/| + and $uri->query_param('func') eq 'detail' + and $uri->query_param('aid') + and $uri->query_param('group_id') + and $uri->query_param('atid')) ? 1 : 0; } sub _check_value { @@ -27,19 +31,10 @@ sub _check_value { my $uri = $class->SUPER::_check_value(@_); - # SourceForge tracker URLs have only one form: - # http://sourceforge.net/tracker/?func=detail&aid=111&group_id=111&atid=111 - if ($uri->query_param('func') eq 'detail' and $uri->query_param('aid') - and $uri->query_param('group_id') and $uri->query_param('atid')) - { - # Remove any # part if there is one. - $uri->fragment(undef); - return $uri; - } - else { - my $value = $uri->as_string; - ThrowUserError('bug_url_invalid', { url => $value }); - } + # Remove any # part if there is one. + $uri->fragment(undef); + + return $uri; } 1; -- cgit v1.2.3-24-g4f1b