Remove references to AURMaintainerUID

This (should) get rid of anything to do with the unused column AURMaintainerUID
in the scripts and schema files

Signed-off-by: Callan Barrett <wizzomafizzo@gmail.com>
Signed-off-by: Simo Leone <simo@archlinux.org>
This commit is contained in:
Callan Barrett 2008-03-26 22:52:15 +09:00 committed by Simo Leone
parent 7d7ef9b112
commit 04dae8d94f
5 changed files with 81 additions and 115 deletions

View file

@ -122,7 +122,6 @@ CREATE TABLE Packages (
ModifiedTS BIGINT UNSIGNED NOT NULL, ModifiedTS BIGINT UNSIGNED NOT NULL,
SubmitterUID INTEGER UNSIGNED NOT NULL DEFAULT 0, -- who submitted it? SubmitterUID INTEGER UNSIGNED NOT NULL DEFAULT 0, -- who submitted it?
MaintainerUID INTEGER UNSIGNED NOT NULL DEFAULT 0, -- User MaintainerUID INTEGER UNSIGNED NOT NULL DEFAULT 0, -- User
AURMaintainerUID INTEGER UNSIGNED NOT NULL DEFAULT 0, -- TU/Dev
FULLTEXT (Name,Description), FULLTEXT (Name,Description),
PRIMARY KEY (ID), PRIMARY KEY (ID),
UNIQUE (Name), UNIQUE (Name),
@ -133,12 +132,10 @@ CREATE TABLE Packages (
INDEX (NumVotes), INDEX (NumVotes),
INDEX (SubmitterUID), INDEX (SubmitterUID),
INDEX (MaintainerUID), INDEX (MaintainerUID),
INDEX (AURMaintainerUID),
FOREIGN KEY (CategoryID) REFERENCES PackageCategories(ID) ON DELETE NO ACTION, FOREIGN KEY (CategoryID) REFERENCES PackageCategories(ID) ON DELETE NO ACTION,
FOREIGN KEY (LocationID) REFERENCES PackageLocations(ID) ON DELETE NO ACTION, FOREIGN KEY (LocationID) REFERENCES PackageLocations(ID) ON DELETE NO ACTION,
FOREIGN KEY (SubmitterUID) REFERENCES Users(ID) ON DELETE NO ACTION, FOREIGN KEY (SubmitterUID) REFERENCES Users(ID) ON DELETE NO ACTION,
FOREIGN KEY (MaintainerUID) REFERENCES Users(ID) ON DELETE NO ACTION, FOREIGN KEY (MaintainerUID) REFERENCES Users(ID) ON DELETE NO ACTION
FOREIGN KEY (AURMaintainerUID) REFERENCES Users(ID) ON DELETE NO ACTION
); );

View file

@ -249,8 +249,8 @@ for p in seen_pkgs.keys():
uuid = genUID() # the submitter/user uuid = genUID() # the submitter/user
s = "INSERT INTO Packages (ID, Name, Version, CategoryID, LocationID, SubmittedTS, SubmitterUID, MaintainerUID, AURMaintainerUID) VALUES (%d, '%s', '%s', %d, %d, %d, %d, %d, %d);\n" % (seen_pkgs[p], p, genVersion(location_id), s = "INSERT INTO Packages (ID, Name, Version, CategoryID, LocationID, SubmittedTS, SubmitterUID, MaintainerUID) VALUES (%d, '%s', '%s', %d, %d, %d, %d, %d);\n" % (seen_pkgs[p], p, genVersion(location_id),
genCategory(), location_id, NOW, uuid, muid, muid) genCategory(), location_id, NOW, uuid, muid)
out.write(s) out.write(s)
if count % 100 == 0: if count % 100 == 0:
if DBUG: print ".", if DBUG: print ".",

View file

@ -159,26 +159,16 @@ if ($_POST['action'] == "do_Flag" || isset($_POST['do_Flag'])) {
$disown .= ", ".$pid; $disown .= ", ".$pid;
} }
} }
# Removed for now since we will have 1 maintainer
# PJM - 5 April 2005
# if ($atype == "Trusted User" || $atype == "Developer") {
# $field = "AURMaintainerUID";
# } elseif ($atype == "User") {
# $field = "MaintainerUID";
# } else {
# $field = "";
# }
$field = "MaintainerUID"; $field = "MaintainerUID";
if ($field) { $q = "UPDATE Packages ";
$q = "UPDATE Packages "; $q.= "SET ".$field." = 0 ";
$q.= "SET ".$field." = 0 "; $q.= "WHERE ID IN (" . $disown . ") ";
$q.= "WHERE ID IN (" . $disown . ") "; # If a user is a TU or dev they can disown any package
# If a user is a TU or dev they can disown any package if ($atype == "User") {
if ($atype == "User") { $q.= "AND ".$field." = ".uid_from_sid($_COOKIE["AURSID"]);
$q.= "AND ".$field." = ".uid_from_sid($_COOKIE["AURSID"]);
}
db_query($q, $dbh);
} }
db_query($q, $dbh);
print "<p>\n"; print "<p>\n";
print __("The selected packages have been disowned."); print __("The selected packages have been disowned.");
@ -214,83 +204,71 @@ if ($_POST['action'] == "do_Flag" || isset($_POST['do_Flag'])) {
$delete .= ", ".$pid; $delete .= ", ".$pid;
} }
} }
# if ($atype == "Trusted User" || $atype == "Developer") {
# $field = "AURMaintainerUID";
# } elseif ($atype == "User") {
# $field = "MaintainerUID";
# } else {
# $field = "";
# }
$field = "MaintainerUID"; $field = "MaintainerUID";
if ($field) {
# Only grab Unsupported packages that "we" own or are not owned at all # Only grab Unsupported packages that "we" own or are not owned at all
# #
$ids_to_delete = array(); $ids_to_delete = array();
$q = "SELECT Packages.ID FROM Packages, PackageLocations "; $q = "SELECT Packages.ID FROM Packages, PackageLocations ";
$q.= "WHERE Packages.ID IN (" . $delete . ") "; $q.= "WHERE Packages.ID IN (" . $delete . ") ";
$q.= "AND Packages.LocationID = PackageLocations.ID "; $q.= "AND Packages.LocationID = PackageLocations.ID ";
$q.= "AND PackageLocations.Location = 'unsupported' "; $q.= "AND PackageLocations.Location = 'unsupported' ";
# If they're a TU or dev, can always delete, otherwise check ownership # If they're a TU or dev, can always delete, otherwise check ownership
# #
if ($atype == "Trusted User" || $atype == "Developer") { if ($atype == "Trusted User" || $atype == "Developer") {
$result = db_query($q, $dbh); $result = db_query($q, $dbh);
} else { } else {
$q.= "AND $field IN (0, " . uid_from_sid($_COOKIE["AURSID"]) . ")"; $q.= "AND $field IN (0, " . uid_from_sid($_COOKIE["AURSID"]) . ")";
$result = db_query($q, $dbh); $result = db_query($q, $dbh);
}
if ($result != Null && mysql_num_rows($result) > 0) {
while ($row = mysql_fetch_assoc($result)) {
$ids_to_delete[] = $row['ID'];
} }
if ($result != Null && mysql_num_rows($result) > 0) { }
while ($row = mysql_fetch_assoc($result)) { if (!empty($ids_to_delete)) {
$ids_to_delete[] = $row['ID']; # These are the packages that are safe to delete
} #
} foreach ($ids_to_delete as $id) {
if (!empty($ids_to_delete)) { # 1) delete from PackageVotes
# These are the packages that are safe to delete $q = "DELETE FROM PackageVotes WHERE PackageID = " . $id;
# $result = db_query($q, $dbh);
foreach ($ids_to_delete as $id) {
# 1) delete from PackageVotes
$q = "DELETE FROM PackageVotes WHERE PackageID = " . $id;
$result = db_query($q, $dbh);
# 2) delete from PackageContents # 2) delete from PackageContents
$q = "DELETE FROM PackageContents WHERE PackageID = " . $id; $q = "DELETE FROM PackageContents WHERE PackageID = " . $id;
$result = db_query($q, $dbh); $result = db_query($q, $dbh);
# 3) delete from PackageDepends # 3) delete from PackageDepends
$q = "DELETE FROM PackageDepends WHERE PackageID = " . $id; $q = "DELETE FROM PackageDepends WHERE PackageID = " . $id;
$result = db_query($q, $dbh); $result = db_query($q, $dbh);
# 4) delete from PackageSources # 4) delete from PackageSources
$q = "DELETE FROM PackageSources WHERE PackageID = " . $id; $q = "DELETE FROM PackageSources WHERE PackageID = " . $id;
$result = db_query($q, $dbh); $result = db_query($q, $dbh);
# 5) delete from PackageComments # 5) delete from PackageComments
$q = "DELETE FROM PackageComments WHERE PackageID = " . $id; $q = "DELETE FROM PackageComments WHERE PackageID = " . $id;
$result = db_query($q, $dbh); $result = db_query($q, $dbh);
# 6) delete from Packages # 6) delete from Packages
$q = "DELETE FROM Packages WHERE ID = " . $id; $q = "DELETE FROM Packages WHERE ID = " . $id;
$result = db_query($q, $dbh); $result = db_query($q, $dbh);
# 7) delete from CommentNotify # 7) delete from CommentNotify
$q = "DELETE FROM CommentNotify WHERE PkgID = " . $id; $q = "DELETE FROM CommentNotify WHERE PkgID = " . $id;
$result = db_query($q, $dbh); $result = db_query($q, $dbh);
# TODO question: Now that the package as been deleted, does # Print the success message
# the unsupported repo need to be regenerated?
# ANSWER: No, there is no actual repo for unsupported, so no worries! (PJM)
# TODO question: What about regenerating the AUR repo? (EJ)
# Print the success message
print "<p>\n";
print __("The selected packages have been deleted.");
print "</p>\n";
}
} else {
print "<p>\n"; print "<p>\n";
print __("None of the selected packages could be deleted."); print __("The selected packages have been deleted.");
print "</p>\n"; print "</p>\n";
} # end if (!empty($ids_to_delete)) }
} # end if ($field) } else {
print "<p>\n";
print __("None of the selected packages could be deleted.");
print "</p>\n";
} # end if (!empty($ids_to_delete))
} else { } else {
print "<p>\n"; print "<p>\n";
print __("You did not select any packages to delete."); print __("You did not select any packages to delete.");
@ -320,30 +298,22 @@ if ($_POST['action'] == "do_Flag" || isset($_POST['do_Flag'])) {
$adopt .= ", ".$pid; $adopt .= ", ".$pid;
} }
} }
# if ($atype == "Trusted User" || $atype == "Developer") {
# $field = "AURMaintainerUID";
# } elseif ($atype == "User") {
#$field = "MaintainerUID";
#} else {
# $field = "";
# }
$field = "MaintainerUID"; $field = "MaintainerUID";
if ($field) { # NOTE: Only "orphaned" packages can be adopted at a particular
# NOTE: Only "orphaned" packages can be adopted at a particular # user class (TU/Dev or User).
# user class (TU/Dev or User). #
# $q = "UPDATE Packages ";
$q = "UPDATE Packages "; $q.= "SET ".$field." = ".uid_from_sid($_COOKIE["AURSID"])." ";
$q.= "SET ".$field." = ".uid_from_sid($_COOKIE["AURSID"])." "; $q.= "WHERE ID IN (" . $adopt . ") ";
$q.= "WHERE ID IN (" . $adopt . ") "; if ($atype == "User")
if ($atype == "User") {
{ # Regular users may only adopt orphan packages from unsupported
# Regular users may only adopt orphan packages from unsupported # FIXME: We assume that LocationID for unsupported is "2"
# FIXME: We assume that LocationID for unsupported is "2" $q.= "AND ".$field." = 0";
$q.= "AND ".$field." = 0"; $q.= " AND LocationID = 2";
$q.= " AND LocationID = 2";
}
db_query($q, $dbh);
} }
db_query($q, $dbh);
print "<p>\n"; print "<p>\n";
print __("The selected packages have been adopted."); print __("The selected packages have been adopted.");

View file

@ -90,4 +90,3 @@ $_t["en"]["Developer"] = "Developer";
$_t["en"]["View this user's packages"] = "View this user's packages"; $_t["en"]["View this user's packages"] = "View this user's packages";
?> ?>

View file

@ -500,7 +500,7 @@ function package_details($id=0, $SID="") {
echo " value='".__("Unflag Out-of-date")."'>\n"; echo " value='".__("Unflag Out-of-date")."'>\n";
} }
if ($row["AURMaintainerUID"] == 0 && $row["MaintainerUID"] == 0) { if ($row["MaintainerUID"] == 0) {
echo "<input type='submit' class='button' name='do_Adopt'"; echo "<input type='submit' class='button' name='do_Adopt'";
echo " value='".__("Adopt Packages")."'>\n"; echo " value='".__("Adopt Packages")."'>\n";
} }