[prev in list] [next in list] [prev in thread] [next in thread] 

List:       kde-commits
Subject:    [websites/kmymoney-org] /: Add wrapper from umbrello.kde.org creating bug lists
From:       Ralf Habacker <null () kde ! org>
Date:       2017-06-30 20:38:45
Message-ID: E1dR2gf-0008Ta-G0 () code ! kde ! org
[Download RAW message or body]

Git commit 4111239f65fcb4c86be63615d678fb1f4c4bd113 by Ralf Habacker.
Committed on 30/06/2017 at 20:38.
Pushed by habacker into branch 'master'.

Add wrapper from umbrello.kde.org creating bug lists

A  +25   -0    bugs.php
A  +88   -0    lib.inc
A  +16   -0    openbugs.php
A  +16   -0    resolvedbugs.php

https://commits.kde.org/websites/kmymoney-org/4111239f65fcb4c86be63615d678fb1f4c4bd113


diff --git a/bugs.php b/bugs.php
new file mode 100644
index 0000000..7b2702c
--- /dev/null
+++ b/bugs.php
@@ -0,0 +1,25 @@
+<?php
+#
+# @author Ralf Habacker <ralf.habacker@freenet.de>
+# 
+# common wrapper for showing bug lists from bug.kde.org 
+#
+# syntax:
+#  bugs.php?<type>/<version>
+#
+# <type> - references the $urls array keys in lib.inc
+# <version> - version to show e.g 4.8.1 for the related version
+#             or 4.8 for all versions in this branch
+#
+	include(dirname(__FILE__)."/lib.inc");
+	$query = isset($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : "";
+	if (strpos($query,'/') !== FALSE)
+		list($type, $version) = explode('/',$query);
+	else {
+		$type = $query;
+		$version = "";
+	}
+	$url = buglist($type, $version);
+	if ($url)
+		Header("Location: $url");
+?>
\ No newline at end of file
diff --git a/lib.inc b/lib.inc
new file mode 100644
index 0000000..6921b72
--- /dev/null
+++ b/lib.inc
@@ -0,0 +1,88 @@
+<?php 
+
+function bugList($type, $version="",$options="")
+{
+	$baseColumns = "&columnlist=component%2Cbug_status%2Cresolution%2Cshort_desc%2Cchang \
eddate%2Cvotes%2Creporter_realname%2Cassigned_to_realname%2Cbug_severity%2Cversion"; \
+	$columns = array( +		"open" => $baseColumns,
+		"resolved" => "&columnlist=component%2Cbug_severity%2Cbug_status%2Cresolution%2Cshort_desc%2Cchangeddate%2Creporter_realname%2Ccf_versionfixedin",
 +		"assigned" => $baseColumns."%2Ctarget_milestone",
+		"todo" => $baseColumns."%2Ctarget_milestone",
+	);
+	
+	$status = array(
+		"resolved" => "&bug_status=RESOLVED&resolution=FIXED&resolution=DUPLICATE&resolution=WORKSFORME&resolution=MOVED&resolution=UPSTREAM&resolution=DOWNSTREAM",
 +		"open" => "&bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=ASSIGNED&bug_status=REOPENED&bug_status=NEEDSINFO",
 +		"assigned" => "&bug_status=ASSIGNED",
+		"todo" => "&bug_status=UNCONFIRMED&bug_status=CONFIRMED&bug_status=REOPENED",
+	);
+
+	$url = "https://bugs.kde.org/buglist.cgi?product=kmymoney4"
+			."&query_format=advanced"
+			;
+
+	$types = array(
+		"all" => "",
+		"changelog" => "",
+		"wishlist" => "&bug_severity=wishlist",
+		"crash" => "&bug_severity=crash",
+		"critical" => "&bug_severity=critical",
+		"grave" => "&bug_severity=grave",
+		"major" => "&bug_severity=major",
+		"normal" => "&bug_severity=normal",
+		"minor" => "&bug_severity=minor",
+		"juniorjobs" => "&keywords=junior-jobs&keywords_type=allwords",
+		"allbugs" => "&bug_severity=crash&bug_severity=major&bug_severity=normal&bug_severity=minor&bug_severity=grave&bug_severity=critical",
 +	);
+
+	$versions = array(
+		"4.7" => "&o2=regexp&v2=4.7|4.7.[0-7]|4.6.[89][0-9]",
+		"4.7.0" => "&o2=regexp&v2=4.7.0",
+		"4.7.1" => "&o2=regexp&v2=4.7.1",
+		"4.7.2" => "&o2=regexp&v2=4.7.2",
+		"4.8" => "&o2=regexp&v2=4.8|4.8.[0-7]|4.7.[89][0-9]",
+		"4.8.0" => "&o2=regexp&v2=4.8.0",
+		"4.8.1" => "&o2=regexp&v2=4.8.1",
+		"5.0" => "&o2=regexp&v2=5.0|5.0.[0-7]|4.8.[89][0-9]",
+		"5.0.0" => "&o2=regexp&v2=5.0.0",
+	);
+
+	$search = array(
+		"open" => "&f2=version".$versions[$version],
+		"fixed" => "&f2=cf_versionfixedin".$versions[$version],
+		"assigned" => "&f2=target_milestone".$versions[$version],
+		"todo" => "&f2=target_milestone".$versions[$version],
+	);
+
+	$orders = array(
+		"status" => "&order=bug_status%2Cpriority%2Cassigned_to%2Cbug_id",
+		"severity" => "&order=bug_severity%2Cbug_status%2Cpriority%2Cassigned_to%2Cbug_id",
 +		"versionfixed" => "&order=cf_versionfixedin",
+	);
+	$urls = array(
+		"wishlist" => $url.$types[$type].$status['open'].$columns['open'].$orders['status'],
 +		"crash" => $url.$types[$type].$status['open'].$columns['open'].$orders['status'],
+		"major" => $url.$types[$type].$status['open'].$columns['open'].$orders['status'],
+		"normal" => $url.$types[$type].$status['open'].$columns['open'].$orders['status'],
+		"minor" => $url.$types[$type].$status['open'].$columns['open'].$orders['status'],
+		"juniorjobs" => $url.$types[$type].$status['open'].$columns['open'].$orders['status'],
 +		"changelog" => $url.$types['changelog'].$status['resolved'].$columns['resolved'].$search['fixed'].$orders['versionfixed'],
 +		"openbugs" => $url.$types['allbugs'].$status['open'].$columns['open'].$search['open'].$orders['status'],
 +		"resolvedbugs" => \
$url.$types['allbugs'].$status['resolved'].$columns['resolved'].$search['fixed'].$orders['status'],
 +		"resolvedcrashbugs" => \
$url.$types['crash'].$status['resolved'].$columns['resolved'].$search['fixed'].$orders['status'],
 +		"resolvedmajorbugs" => \
$url.$types['major'].$status['resolved'].$columns['resolved'].$search['fixed'].$orders['status'],
 +		"resolvednormalbugs" => \
$url.$types['normal'].$status['resolved'].$columns['resolved'].$search['fixed'].$orders['status'],
 +		"resolvedminorbugs" => \
$url.$types['minor'].$status['resolved'].$columns['resolved'].$search['fixed'].$orders['status'],
 +		"resolvedfeatures" => \
$url.$types['wishlist'].$status['resolved'].$columns['resolved'].$search['fixed'].$orders['status'],
 +		"assignedfeatures" => \
$url.$types['wishlist'].$status['assigned'].$columns['assigned'].$search['assigned'].$orders['status'],
 +		"todofeatures" => \
$url.$types['wishlist'].$status['todo'].$columns['todo'].$search['todo'].$orders['status'],
 +	);
+	
+	$url = "";
+	if (isset($urls[$type])) {
+		$url = $urls[$type];
+		if ($options)
+			$url .= "&". $options;
+	}
+	return $url;
+}
\ No newline at end of file
diff --git a/openbugs.php b/openbugs.php
new file mode 100644
index 0000000..a9b38ac
--- /dev/null
+++ b/openbugs.php
@@ -0,0 +1,16 @@
+<?php
+#
+# @author Ralf Habacker <ralf.habacker@freenet.de>
+#
+# redirect to bugs.kde.org and shows a list of open bugs
+#
+# syntax:
+#   openbugsbugs.php       - shows all open bugs
+#   openbugs.php?<version> - shows bugs of <version> e.g. 4.8.1 or 4.8
+#                            for all releases of the mentioned branch
+#
+	include(dirname(__FILE__)."/lib.inc");
+	$version = isset($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : "";
+	$url = buglist('openbugs',$version);
+	Header("Location: $url");
+?>
\ No newline at end of file
diff --git a/resolvedbugs.php b/resolvedbugs.php
new file mode 100644
index 0000000..b6616a7
--- /dev/null
+++ b/resolvedbugs.php
@@ -0,0 +1,16 @@
+<?php
+#
+# @author Ralf Habacker <ralf.habacker@freenet.de>
+#
+# redirect to bugs.kde.org and shows a list of resolved bugs
+#
+# syntax:
+#   resolvedbugs.php           - shows all resolved bugs
+#   resolvedbugs.php?<version> - shows resolved bugs of <version> e.g. 4.8.1
+#                                or 4.8 for alll releases of the mentioned branch
+#
+	include(dirname(__FILE__)."/lib.inc");
+	$version = isset($_SERVER['QUERY_STRING']) ? $_SERVER['QUERY_STRING'] : "";
+	$url = buglist('resolvedbugs',$version);
+	Header("Location: $url");
+?>
\ No newline at end of file


[prev in list] [next in list] [prev in thread] [next in thread] 

Configure | About | News | Add a list | Sponsored by KoreLogic