summaryrefslogtreecommitdiff
path: root/devel/bugzilla52/files/patch-PR207213
blob: c33ca7b2b1644a78019bece557d7fd2e60c96170 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
--- extensions/MoreBugUrl/Extension.pm.orig	2024-09-03 14:36:48 UTC
+++ extensions/MoreBugUrl/Extension.pm
@@ -23,6 +23,7 @@ use constant MORE_SUB_CLASSES => qw(
   Bugzilla::Extension::MoreBugUrl::Redmine
   Bugzilla::Extension::MoreBugUrl::Savane
   Bugzilla::Extension::MoreBugUrl::WineHQForums
+  Bugzilla::Extension::MoreBugUrl::Phabricator
 );
 
 # We need to update bug_see_also table because both
--- extensions/MoreBugUrl/lib/Phabricator.pm.orig	2025-01-08 00:36:56 UTC
+++ extensions/MoreBugUrl/lib/Phabricator.pm
@@ -0,0 +1,41 @@
+# This Source Code Form is subject to the terms of the Mozilla Public
+# License, v. 2.0. If a copy of the MPL was not distributed with this
+# file, You can obtain one at http://mozilla.org/MPL/2.0/.
+#
+# This Source Code Form is "Incompatible With Secondary Licenses", as
+# defined by the Mozilla Public License, v. 2.0.
+
+package Bugzilla::Extension::MoreBugUrl::Phabricator;
+
+use 5.10.1;
+use strict;
+use warnings;
+
+use parent qw(Bugzilla::BugUrl);
+
+###############################
+####        Methods        ####
+###############################
+
+sub should_handle {
+    my ($class, $uri) = @_;
+    return ($uri->path =~ m|^/T\d+$|) ? 1 : 0;
+}
+
+sub _check_value {
+    my $class = shift;
+
+    my $uri = $class->SUPER::_check_value(@_);
+
+    # Phabricator URLs have only one form:
+    #   http://example.com/T111
+
+    # Make sure there are no query parameters.
+    $uri->query(undef);
+    # And remove any # part if there is one.
+    $uri->fragment(undef);
+
+    return $uri;
+}
+
+1;
--- extensions/MoreBugUrl/template/en/default/hook/global/user-error-bug_url_invalid_tracker.html.tmpl.orig	2024-09-03 14:36:48 UTC
+++ extensions/MoreBugUrl/template/en/default/hook/global/user-error-bug_url_invalid_tracker.html.tmpl
@@ -14,4 +14,5 @@
 <li>A b[% %]ug on b[% %]ugs.php.net.</li>
 <li>An issue in a Redmine installation.</li>
 <li>A b[% %]ug in a Savane installation.</li>
+<li>A task in a Phabricator installation.</li>
 <li>A b[% %]ug related topic on WineHQ forums</li>