summaryrefslogtreecommitdiffstats
path: root/web/html/pkgedit.php
diff options
context:
space:
mode:
authoreric <eric>2005-03-20 19:54:20 +0100
committereric <eric>2005-03-20 19:54:20 +0100
commit7fccb8b634118a2f4f92220b194dc74273b15957 (patch)
tree4b55e81a25f3005abaf3cd7cdc5b0de8316a541f /web/html/pkgedit.php
parent9d69979bb9e8498ac1ac6b4d08fb6b3ba9042cdc (diff)
downloadaur-7fccb8b634118a2f4f92220b194dc74273b15957.tar.gz
aur-7fccb8b634118a2f4f92220b194dc74273b15957.tar.xz
added comments/category editing, and closed #2280
Diffstat (limited to 'web/html/pkgedit.php')
-rw-r--r--web/html/pkgedit.php131
1 files changed, 119 insertions, 12 deletions
diff --git a/web/html/pkgedit.php b/web/html/pkgedit.php
index 974c3ad8..6a3f9ffd 100644
--- a/web/html/pkgedit.php
+++ b/web/html/pkgedit.php
@@ -1,10 +1,11 @@
<?
include("aur.inc"); # access AUR common functions
include("pkgfuncs.inc"); # use some form of this for i18n support
+include("pkgedit_po.inc"); # i18n translations for this script
set_lang(); # this sets up the visitor's language
check_sid(); # see if they're still logged in
html_header(); # print out the HTML header
-
+$svn_idstr = "\$Id$";
$DBUG = 0;
if ($DBUG) {
@@ -13,36 +14,142 @@ if ($DBUG) {
print "</pre>\n";
}
+# Make sure this visitor is logged in
+#
if (isset($_COOKIE["AURSID"])) {
$atype = account_from_sid($_COOKIE["AURSID"]);
} else {
$atype = "";
}
-
if (!$atype) {
print __("You must be logged in before you can edit package information.");
print "<br />\n";
-} else {
- if (!$_REQUEST["ID"]) {
- print __("Missing package ID.");
- print "<br />\n";
+ html_footer($svn_idstr);
+ exit();
+}
+
+# Must know what package to operate on throughout this entire script
+#
+if (!$_REQUEST["ID"]) {
+ print __("Missing package ID.");
+ print "<br />\n";
+ html_footer($svn_idstr);
+}
+
+
+# Delete a comment for this package
+#
+if ($_REQUEST["del_Comment"]) {
+ if ($_REQUEST["comment_id"]) {
+ if (canDeleteComment($_REQUEST["comment_id"], $atype, $_COOKIE["AURSID"])) {
+ $dbh = db_connect();
+ $uid = uid_from_sid($_COOKIE["AURSID"]);
+ $q = "UPDATE PackageComments ";
+ $q.= "SET DelUsersID = ".$uid." ";
+ $q.= "WHERE ID = ".intval($_REQUEST["comment_id"]);
+ db_query($q, $dbh);
+ print __("Comment has been deleted.")."<br />\n";
+ } else {
+ print __("You are not allowed to delete this comment.")."<br />\n";
+ }
} else {
+ print __("Missing comment ID.")."<br />\n";
+ }
+ pkgdetails_link($_REQUEST["ID"]);
+ html_footer($svn_idstr);
+ exit();
+}
- # Main script processing here... basic error checking done.
+# Add a comment to this package
+#
+if ($_REQUEST["add_Comment"]) {
+ if ($_REQUEST["comment"]) {
+ # Insert the comment
#
- if ($_REQUEST["add_Comment"]) {
- if ($_REQUEST["comment"]) {
- } else {
+ $dbh = db_connect();
+ $q = "INSERT INTO PackageComments ";
+ $q.= "(PackageID, UsersID, Comments, CommentTS) VALUES (";
+ $q.= intval($_REQUEST["ID"]).", ".uid_from_sid($_COOKIE["AURSID"]) . ", ";
+ $q.= "'".mysql_escape_string($_REQUEST["comment"])."', ";
+ $q.= "UNIX_TIMESTAMP())";
+ db_query($q, $dbh);
+ print __("Comment has been added.")."<br />&nbsp;<br />\n";
+ pkgdetails_link($_REQUEST["ID"]);
+
+ } else {
+ # Prompt visitor for comment
+ #
+ print "<form action='/pkgedit.php' method='post'>\n";
+ print "<input type='hidden' name='add_Comment' value='1'>\n";
+ print "<input type='hidden' name='ID' value=\"".$_REQUEST["ID"]."\">\n";
+ print __("Enter your comment below.")."<br />&nbsp;<br />\n";
+ print "<textarea name='comment' rows='10' cols='50'></textarea>\n";
+ print "<br />&nbsp;<br />\n";
+ print "<input type='submit' value=\"".__("Submit")."\">\n";
+ print "<input type='reset' value=\"".__("Reset")."\">\n";
+ print "</form>\n";
+ }
+ html_footer($svn_idstr);
+ exit();
+}
+
+# Change package category
+#
+if ($_REQUEST["change_Category"]) {
+ $cat_array = pkgCategories();
+ $dbh = db_connect();
+
+ if ($_REQUEST["category_id"]) {
+ # Try and set the requested category_id
+ #
+ if (array_key_exists($_REQUEST["category_id"], $cat_array)) {
+ $q = "UPDATE Packages SET CategoryID = ".intval($_REQUEST["category_id"]);
+ $q.= " WHERE ID = ".intval($_REQUEST["ID"]);
+ db_query($q, $dbh);
+ print __("Package category updated.")."<br />\n";
+
+ } else {
+ print __("Invalid category ID.")."<br />\n";
+ }
+ pkgdetails_link($_REQUEST["ID"]);
+
+ } else {
+ # Prompt visitor for new category_id
+ #
+ $q = "SELECT CategoryID FROM Packages WHERE ID = ".intval($_REQUEST["ID"]);
+ $result = db_query($q, $dbh);
+ if ($result != NULL) {
+ $catid = mysql_fetch_row($result);
+ }
+ print "<form action='/pkgedit.php' method='post'>\n";
+ print "<input type='hidden' name='change_Category' value='1'>\n";
+ print "<input type='hidden' name='ID' value=\"".$_REQUEST["ID"]."\">\n";
+ print __("Select new category").":&nbsp;\n";
+ print "<select name='category_id'>\n";
+ while (list($id,$cat) = each($cat_array)) {
+ print "<option value='".$id."'";
+ if ($id == $catid[0]) {
+ print " selected";
}
+ print "> ".$cat."</option>\n";
}
+ print "</select>\n";
+ print "<br />&nbsp;<br />\n";
+ print "<input type='submit' value=\"".__("Submit")."\">\n";
+ print "<input type='reset' value=\"".__("Reset")."\">\n";
+ print "</form>\n";
}
+ html_footer($svn_idstr);
+ exit();
}
-html_footer("\$Id$"); # Use the $Id$ keyword
+print __("You've found a bug if you see this....")."<br />\n";
+
+html_footer($svn_idstr); # Use the $Id$ keyword
# NOTE: when checking in a new file, use
# 'svn propset svn:keywords "Id" filename.php'
# to tell svn to expand the "Id" keyword.
-# vim: ts=2 sw=2 et ft=php
+# vim: ts=2 sw=2 noet ft=php
?>