Commit 354c86b6 authored by Loui Chang's avatar Loui Chang
Browse files

Move package comment form into a new template.



Feature the form on the package details page.

Signed-off-by: default avatarLoui Chang <louipc.ist@gmail.com>
parent f729eca8
......@@ -53,73 +53,6 @@ if ($_REQUEST["del_Comment"]) {
exit();
}
# Add a comment to this package
#
if ($_REQUEST["add_Comment"]) {
if ($_REQUEST["comment"]) {
# Insert the comment
#
$dbh = db_connect();
$q = "INSERT INTO PackageComments ";
$q.= "(PackageID, UsersID, Comments, CommentTS) VALUES (";
$q.= intval($_REQUEST["ID"]).", ".uid_from_sid($_COOKIE["AURSID"]) . ", ";
$q.= "'".mysql_real_escape_string($_REQUEST["comment"])."', ";
$q.= "UNIX_TIMESTAMP())";
db_query($q, $dbh);
print __("Comment has been added.");
# Send email notifications
#
$q = "SELECT CommentNotify.*, Users.Email ";
$q.= "FROM CommentNotify, Users ";
$q.= "WHERE Users.ID = CommentNotify.UserID ";
$q.= "AND CommentNotify.UserID != ".uid_from_sid($_COOKIE["AURSID"])." ";
$q.= "AND CommentNotify.PkgID = ".intval($_REQUEST["ID"]);
$result = db_query($q, $dbh);
$bcc = array();
if (mysql_num_rows($result)) {
while ($row = mysql_fetch_assoc($result)) {
array_push($bcc, $row['Email']);
}
$q = "SELECT Packages.Name ";
$q.= "FROM Packages ";
$q.= "WHERE Packages.ID = ".intval($_REQUEST["ID"]);
$result = db_query($q, $dbh);
$row = mysql_fetch_assoc($result);
#TODO: native language emails for users, based on their prefs
# Simply making these strings translatable won't work, users would be
# getting emails in the language that the user who posted the comment was in
$body =
"from http://aur.archlinux.org/packages.php?ID="
. $_REQUEST["ID"] . "\n"
. username_from_sid($_COOKIE["AURSID"]) . " wrote:\n\n"
. $_POST['comment']
. "\n\n---\nIf you no longer wish to receive notifications about this package, please go the the above package page and click the UnNotify button.";
$body = wordwrap($body, 70);
$bcc = implode(', ', $bcc);
$headers = "Bcc: $bcc\nReply-to: nobody@archlinux.org\nFrom: aur-notify@archlinux.org\nX-Mailer: AUR\n";
@mail(' ', "AUR Comment for ".$row['Name'], $body, $headers);
}
} else {
# Prompt visitor for comment
#
print "<div align='center'>\n";
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";
print "</div>\n";
}
html_footer(AUR_VERSION);
exit();
}
# Change package category
#
if ($_REQUEST["change_Category"]) {
......
......@@ -180,7 +180,7 @@ function package_comments($pkgid=0) {
$q.= " AND DelUsersID = 0"; # only display non-deleted comments
$q.= " ORDER BY CommentTS DESC";
$result = db_query($q, $dbh);
if (!$result) {return array();}
if (!$result) {print 'poop';return array();}
while ($row = mysql_fetch_assoc($result)) {
$comments[] = $row;
}
......@@ -272,20 +272,22 @@ function package_details($id=0, $SID="") {
global $pkgsearch_vars;
$atype = account_from_sid($SID);
$uid = uid_from_sid($SID);
$q = "SELECT Packages.*,Location,Category ";
$q.= "FROM Packages,PackageLocations,PackageCategories ";
$q.= "WHERE Packages.LocationID = PackageLocations.ID ";
$q.= "AND Packages.CategoryID = PackageCategories.ID ";
$q.= "AND Packages.ID = ".intval($_REQUEST["ID"]);
$q.= "AND Packages.ID = " . intval($_REQUEST['ID']);
$dbh = db_connect();
$results = db_query($q, $dbh);
if (!$results) {
print __("Error retrieving package details.")."<br />\n";
} else {
if (!$results) {
print __("Error retrieving package details.") . "<br />\n";
}
else {
$row = mysql_fetch_assoc($results);
if (empty($row)) {
print __("Package details could not be found.")."<br />\n";
print __("Package details could not be found.") . "<br />\n";
}
else {
......@@ -294,10 +296,11 @@ function package_details($id=0, $SID="") {
# Actions Bar
if ($SID) {
include('actions_form.php');
include('pkg_comment_form.php');
}
# Print Comments
$comments = package_comments($row["ID"]);
$comments = package_comments($_REQUEST['ID']);
if (!empty($comments)) {
include('pkg_comments.php');
}
......
......@@ -50,11 +50,5 @@ if ($row["MaintainerUID"] == 0) {
}
?>
</form>
<br />
<form action='pkgedit.php' method='post'>
<input type='hidden' name='ID' value="<?php echo $row['ID'] ?>" />
<input type='submit' class='button' name='add_Comment' value="<?php echo __('Add Comment') ?>" />
</form>
</div>
<?php
# Add a comment to this package
if (isset($_REQUEST['comment'])) {
# Insert the comment
$dbh = db_connect();
$q = 'INSERT INTO PackageComments ';
$q.= '(PackageID, UsersID, Comments, CommentTS) VALUES (';
$q.= intval($_REQUEST['ID']) . ', ' . uid_from_sid($_COOKIE['AURSID']) . ', ';
$q.= "'" . mysql_real_escape_string($_REQUEST['comment']) . "', ";
$q.= 'UNIX_TIMESTAMP())';
db_query($q, $dbh);
# Send email notifications
$q = 'SELECT CommentNotify.*, Users.Email ';
$q.= 'FROM CommentNotify, Users ';
$q.= 'WHERE Users.ID = CommentNotify.UserID ';
$q.= 'AND CommentNotify.UserID != ' . uid_from_sid($_COOKIE['AURSID']) . ' ';
$q.= 'AND CommentNotify.PkgID = ' . intval($_REQUEST['ID']);
$result = db_query($q, $dbh);
$bcc = array();
if (mysql_num_rows($result)) {
while ($row = mysql_fetch_assoc($result)) {
array_push($bcc, $row['Email']);
}
$q = 'SELECT Packages.Name ';
$q.= 'FROM Packages ';
$q.= 'WHERE Packages.ID = ' . intval($_REQUEST['ID']);
$result = db_query($q, $dbh);
$row = mysql_fetch_assoc($result);
# TODO: native language emails for users, based on their prefs
# Simply making these strings translatable won't work, users would be
# getting emails in the language that the user who posted the comment was in
$body =
'from http://aur.archlinux.org/packages.php?ID='
. $_REQUEST['ID'] . "\n"
. username_from_sid($_COOKIE['AURSID']) . " wrote:\n\n"
. $_POST['comment']
. "\n\n---\nIf you no longer wish to receive notifications about this package, please go the the above package page and click the UnNotify button.";
$body = wordwrap($body, 70);
$bcc = implode(', ', $bcc);
$headers = "Bcc: $bcc\nReply-to: nobody@archlinux.org\nFrom: aur-notify@archlinux.org\nX-Mailer: AUR\n";
@mail(' ', "AUR Comment for " . $row['Name'], $body, $headers);
}
}
# Prompt visitor for comment
?>
<div class="pgbox">
<form action='<?php echo $_SERVER['PHP_SELF'] . '?ID=' . $_REQUEST['ID'] ?>' method='post'>
<div style="padding: 1%">
<?php
if (isset($_REQUEST['comment'])) {
echo '<b>' . __('Comment has been added.') . '</b>';
}
?>
<input type='hidden' name='ID' value="<?php echo $_REQUEST['ID'] ?>">
<?php echo __('Enter your comment below.') ?><br />
<textarea name='comment' rows='10' style="width: 100%"></textarea><br />
<input type='submit' value="<?php echo __("Submit") ?>">
<input type='reset' value="<?php echo __("Reset") ?>">
</div>
</form>
</div>
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment