On Wed, Sep 14, 2011 at 02:57:27PM +0200, Florian Pritz wrote: > Signed-off-by: Florian Pritz <[email protected]> > --- > web/lib/pkgfuncs.inc.php | 38 ++++++++++++++++++++++++++++++++++++++ > 1 files changed, 38 insertions(+), 0 deletions(-) > > diff --git a/web/lib/pkgfuncs.inc.php b/web/lib/pkgfuncs.inc.php > index 3e89fa3..2a83306 100644 > --- a/web/lib/pkgfuncs.inc.php > +++ b/web/lib/pkgfuncs.inc.php > @@ -710,6 +710,44 @@ function pkg_delete ($atype, $ids, $mergepkgid, > $dbh=NULL) { > } > > if ($mergepkgid) { > + $mergepkgname = pkgname_from_id($mergepkgid, $dbh); > + } > + > + # Send email notifications > + foreach ($ids as $pkgid) { > + $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 = ' . $pkgid; > + $result = db_query($q, $dbh); > + $bcc = array(); > + > + while ($row = mysql_fetch_assoc($result)) { > + array_push($bcc, $row['Email']); > + } > + if (!empty($bcc)) { > + $pkgname = pkgname_from_id($pkgid); > + > + # 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 = ""; > + if ($mergepkgid) { > + $body .= username_from_sid($_COOKIE['AURSID']) > . " merged \"".$pkgname."\" into \"$mergepkgname\".\n\n"; > + $body .= "You will no longer receive > notifications about this package, please go to > https://aur.archlinux.org/packages.php?ID=".$mergepkgid." and click the > Notify button if you wish to recieve them again."; > + } else { > + $body .= username_from_sid($_COOKIE['AURSID']) > . " deleted \"".$pkgname."\".\n\n"; > + $body .= "You will no longer receive > notifications about this package."; > + } > + $body = wordwrap($body, 70); > + $bcc = implode(', ', $bcc); > + $headers = "Bcc: $bcc\nReply-to: > [email protected]\nFrom: [email protected]\nX-Mailer: AUR\n"; > + @mail(' ', "AUR Package deleted: " . $pkgname, $body, > $headers); > + } > + } > + > + if ($mergepkgid) { > /* Merge comments */ > $q = "UPDATE PackageComments "; > $q.= "SET PackageID = " . intval($mergepkgid) . " ";
Looks good now. I'm currently working on refactoring package deletion anyway (create a separate deletion page with the possibility to select a reason, like "Moved to the binary repositories." etc.) and will push your patch alongside that patch series. Thanks!
