[aur-dev] [PATCH] Clean up packages.php and document new package functions

Callan Barrett wizzomafizzo at gmail.com
Sat Oct 4 16:49:01 EDT 2008


Signed-off-by: Callan Barrett <wizzomafizzo at gmail.com>
---
 web/html/packages.php |   65 +++++++++++++++++++------------------------------
 web/lib/pkgfuncs.inc  |   48 ++++++++++++++++++++++++++++++++++++
 2 files changed, 73 insertions(+), 40 deletions(-)

diff --git a/web/html/packages.php b/web/html/packages.php
index f06aaa1..9c611d8 100644
--- a/web/html/packages.php
+++ b/web/html/packages.php
@@ -8,38 +8,31 @@ include("search_po.inc");   # use some form of this for i18n support
 set_lang();                 # this sets up the visitor's language
 check_sid();                # see if they're still logged in
 
-# set the title to something useful depending on
-# what "page" we're on
-#
+# Set the title to the current query if required
 if (isset($_GET['ID'])) {
-	$id = pkgname_from_id($_GET['ID']);
-	if (!empty($id)) {
-		$title = $id;
-	}
-}	else if (!empty($_GET['K'])) {
-	$title = "Search: " . $_GET['K'];
+	if (pkgname_from_id($_GET['ID'])) { $title = $id; }
+} else if (!empty($_GET['K'])) {
+	$title = __("Search Criteria") . ": " . $_GET['K'];
 } else {
 	$title = __("Packages");
 }
 
-html_header($title);
-
-# get login privileges
-#
+# Retrieve account type
 if (isset($_COOKIE["AURSID"])) {
-	# Only logged in users can do stuff
-	#
 	$atype = account_from_sid($_COOKIE["AURSID"]);
 } else {
 	$atype = "";
 }
 
-# grab the list of Package IDs to be operated on
+# Grab the list of Package IDs to be operated on
 #
+# TODO: Convert this to a normal array of IDs to operate on and convert the
+# functions to use this format
 isset($_POST["IDs"]) ? $ids = $_POST["IDs"] : $ids = array();
 
-# determine what button the visitor clicked
-#
+html_header($title);
+
+# Determine what action to do
 if ($_POST['action'] == "do_Flag" || isset($_POST['do_Flag'])) {
 	print "<p>";
 	print pkg_flag($atype, $ids, True);
@@ -48,18 +41,14 @@ if ($_POST['action'] == "do_Flag" || isset($_POST['do_Flag'])) {
 	print "<p>";
 	print pkg_flag($atype, $ids, False);
 	print "</p>";
-} elseif ($_POST['action'] == "do_Disown" || isset($_POST['do_Disown'])) {
-	print "<p>";
-	print pkg_adopt($atype, $ids, False);
-	print "</p>";
-} elseif ($_POST['action'] == "do_Delete" || isset($_POST['do_Delete'])) {
-	print "<p>";
-	print pkg_delete($atype, $ids, False);
-	print "</p>";
 } elseif ($_POST['action'] == "do_Adopt" || isset($_POST['do_Adopt'])) {
 	print "<p>";
 	print pkg_adopt($atype, $ids, True);
 	print "</p>";
+} elseif ($_POST['action'] == "do_Disown" || isset($_POST['do_Disown'])) {
+	print "<p>";
+	print pkg_adopt($atype, $ids, False);
+	print "</p>";
 } elseif ($_POST['action'] == "do_Vote" || isset($_POST['do_Vote'])) {
 	print "<p>";
 	print pkg_vote($atype, $ids, True);
@@ -68,26 +57,22 @@ if ($_POST['action'] == "do_Flag" || isset($_POST['do_Flag'])) {
 	print "<p>";
 	print pkg_vote($atype, $ids, False);
 	print "</p>";
-} elseif (isset($_GET["ID"])) {
-
-	if (!intval($_GET["ID"])) {
-		print __("Error trying to retrieve package details.")."<br />\n";
-		
-	} else {
-		package_details($_GET["ID"], $_COOKIE["AURSID"]);
-	}
-
+} elseif ($_POST['action'] == "do_Delete" || isset($_POST['do_Delete'])) {
+	print "<p>";
+	print pkg_delete($atype, $ids);
+	print "</p>";
 } elseif ($_POST['action'] == "do_Notify" || isset($_POST['do_Notify'])) {
 	print "<p>";
 	print pkg_notify($atype, $ids);
 	print "</p>";
+} elseif (isset($_GET["ID"])) {
+	if (!is_numeric($_GET["ID"])) {
+		print __("Error trying to retrieve package details.") . "<br />";	
+	} else {
+		package_details($_GET["ID"], $_COOKIE["AURSID"]);
+	}
 } else {
-	# just do a search
-	#
 	pkg_search_page($_COOKIE["AURSID"]);
-
 }
 
 html_footer(AUR_VERSION);
-
-?>
diff --git a/web/lib/pkgfuncs.inc b/web/lib/pkgfuncs.inc
index 5c179fa..9941103 100644
--- a/web/lib/pkgfuncs.inc
+++ b/web/lib/pkgfuncs.inc
@@ -985,6 +985,17 @@ function pkg_search_page($SID="") {
     return;
 }
 
+/**
+ * Flag and un-flag packages out-of-date
+ *
+ * @param string $atype Account type, output of account_from_sid
+ * @param array $ids Array of package IDs to flag/unflag, formatted as
+ * $package_id => $useless_crap
+ * @param boolean $action True flags out-of-date, false un-flags. Flags by
+ * default
+ * 
+ * @return string Translated success or error messages
+ */
 function pkg_flag ($atype, $ids, $action = True) {
 	if (!$atype) {
 		if ($action) {
@@ -1059,6 +1070,15 @@ function pkg_flag ($atype, $ids, $action = True) {
 	}
 }
 
+/**
+ * Delete packages
+ * 
+ * @param string $atype Account type, output of account_from_sid
+ * @param array $ids Array of package IDs to delete, formatted as
+ * $package_id => $useless_crap
+ * 
+ * @return string Translated error or success message
+ */
 function pkg_delete ($atype, $ids) {
 	if (!$atype) {
 		return __("You must be logged in before you can disown packages.");
@@ -1132,6 +1152,16 @@ function pkg_delete ($atype, $ids) {
 	return __("The selected packages have been deleted.");
 }
 
+/**
+ * Adopt or disown packages
+ * 
+ * @param string $atype Account type, output of account_from_sid
+ * @param array $ids Array of package IDs to adopt/disown, formatted as
+ * $package_id => $whatever
+ * @param boolean $action Adopts if true, disowns if false. Adopts by default
+ * 
+ * @return string Translated error or success message
+ */
 function pkg_adopt ($atype, $ids, $action = True) {
 	if (!$atype) {
 		if ($action) {
@@ -1190,6 +1220,16 @@ function pkg_adopt ($atype, $ids, $action = True) {
 	}
 }
 
+/**
+ * Vote and un-vote for packages
+ * 
+ * @param string $atype Account type, output of account_from_sid
+ * @param array $ids Array of package IDs to vote/un-vote, formatted as
+ * $package_id => $useless
+ * @param boolean $action Votes if true, un-votes if false. Votes by default
+ * 
+ * @return string Translated error or success message
+ */
 function pkg_vote ($atype, $ids, $action = True) {
 	if (!$atype) {
 		if ($action) {
@@ -1267,6 +1307,14 @@ function pkg_vote ($atype, $ids, $action = True) {
 	}
 }
 
+/**
+ * Toggle notification of packages
+ * 
+ * @param string $atype Account type, output of account_from_sid
+ * @param array $ids Array of package IDs to toggle, formatted as $package_id => $crap
+ * 
+ * @return string Translated error or success message
+ */
 function pkg_notify ($atype, $ids) {
 	if (!$atype) {
 		return __("You must be logged in before you can get notifications on comments.");
-- 
1.6.0.2




More information about the aur-dev mailing list