From fb4e74f43ee9b5bef48e56a01c59cbc8361c8a8c Mon Sep 17 00:00:00 2001
From: Callan Barrett <wizzomafizzo@gmail.com>
Date: Thu, 3 Jan 2008 05:46:31 +0900
Subject: [PATCH] Signed-off-by: Callan Barrett <wizzomafizzo@gmail.com>

Adds support for TUs and devs to disown packages they do not own
---
 web/html/packages.php |    5 ++++-
 web/lib/pkgfuncs.inc  |    4 +++-
 2 files changed, 7 insertions(+), 2 deletions(-)

diff --git a/web/html/packages.php b/web/html/packages.php
index 95b5979..85ab6b7 100644
--- a/web/html/packages.php
+++ b/web/html/packages.php
@@ -171,7 +171,10 @@ if (isset($_REQUEST["do_Flag"])) {
 				$q = "UPDATE Packages ";
 				$q.= "SET ".$field." = 0 ";
 				$q.= "WHERE ID IN (" . $disown . ") ";
-				$q.= "AND ".$field." = ".uid_from_sid($_COOKIE["AURSID"]);
+				# If a user is a TU or dev they can disown any package
+        if ($atype == "User") {
+					$q.= "AND ".$field." = ".uid_from_sid($_COOKIE["AURSID"]);
+				}
 				db_query($q, $dbh);
 			}
 
diff --git a/web/lib/pkgfuncs.inc b/web/lib/pkgfuncs.inc
index ad9630e..eaeeca8 100644
--- a/web/lib/pkgfuncs.inc
+++ b/web/lib/pkgfuncs.inc
@@ -492,7 +492,9 @@ function package_details($id=0, $SID="") {
                     echo " value='".__("Adopt Packages")."'>\n";
                 }
 					
-				if ($row["MaintainerUID"] == uid_from_sid($SID)) {
+				if ($row["MaintainerUID"] == uid_from_sid($SID) ||
+            account_from_sid($SID) == "Trusted User" ||
+            account_from_sid($SID) == "Developer") {
 					echo "<input type='submit' class='button' name='do_Disown'";
 					echo " value='".__("Disown Packages")."'>\n";
 				}	
-- 
1.5.3.7

