summaryrefslogtreecommitdiffstats
path: root/web/template
diff options
context:
space:
mode:
Diffstat (limited to 'web/template')
-rw-r--r--web/template/actions_form.php6
-rw-r--r--web/template/pkg_comment_form.php68
2 files changed, 68 insertions, 6 deletions
diff --git a/web/template/actions_form.php b/web/template/actions_form.php
index 6299819..de77645 100644
--- a/web/template/actions_form.php
+++ b/web/template/actions_form.php
@@ -51,10 +51,4 @@ 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>
diff --git a/web/template/pkg_comment_form.php b/web/template/pkg_comment_form.php
new file mode 100644
index 0000000..70570da
--- /dev/null
+++ b/web/template/pkg_comment_form.php
@@ -0,0 +1,68 @@
+<?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>
+