[aur-dev] [PATCH 3/3] Squelch warning in pkgbase_vote()
Lukas Fleischer
lfleischer at archlinux.org
Mon Feb 27 19:13:35 UTC 2017
Do not trigger a PHP warning if there are no votes to be added or
removed.
Signed-off-by: Lukas Fleischer <lfleischer at archlinux.org>
---
web/lib/pkgbasefuncs.inc.php | 30 +++++++++++++++++-------------
1 file changed, 17 insertions(+), 13 deletions(-)
diff --git a/web/lib/pkgbasefuncs.inc.php b/web/lib/pkgbasefuncs.inc.php
index b20c2ff..cd4b271 100644
--- a/web/lib/pkgbasefuncs.inc.php
+++ b/web/lib/pkgbasefuncs.inc.php
@@ -735,6 +735,8 @@ function pkgbase_vote ($base_ids, $action=true) {
$uid = uid_from_sid($_COOKIE["AURSID"]);
$first = 1;
+ $vote_ids = "";
+ $vote_clauses = "";
foreach ($base_ids as $pid) {
if ($action) {
$check = !isset($my_votes[$pid]);
@@ -758,22 +760,24 @@ function pkgbase_vote ($base_ids, $action=true) {
}
}
- /* Only add votes for packages the user hasn't already voted for. */
- $op = $action ? "+" : "-";
- $q = "UPDATE PackageBases SET NumVotes = NumVotes $op 1 ";
- $q.= "WHERE ID IN ($vote_ids)";
+ if (!empty($vote_ids)) {
+ /* Only add votes for packages the user hasn't already voted for. */
+ $op = $action ? "+" : "-";
+ $q = "UPDATE PackageBases SET NumVotes = NumVotes $op 1 ";
+ $q.= "WHERE ID IN ($vote_ids)";
- $dbh->exec($q);
+ $dbh->exec($q);
- if ($action) {
- $q = "INSERT INTO PackageVotes (UsersID, PackageBaseID, VoteTS) VALUES ";
- $q.= $vote_clauses;
- } else {
- $q = "DELETE FROM PackageVotes WHERE UsersID = $uid ";
- $q.= "AND PackageBaseID IN ($vote_ids)";
- }
+ if ($action) {
+ $q = "INSERT INTO PackageVotes (UsersID, PackageBaseID, VoteTS) VALUES ";
+ $q.= $vote_clauses;
+ } else {
+ $q = "DELETE FROM PackageVotes WHERE UsersID = $uid ";
+ $q.= "AND PackageBaseID IN ($vote_ids)";
+ }
- $dbh->exec($q);
+ $dbh->exec($q);
+ }
if ($action) {
return array(true, __("Your votes have been cast for the selected packages."));
--
2.12.0
More information about the aur-dev
mailing list