Refactor pkgbase_comments()

Signed-off-by: Lukas Fleischer <archlinux@cryptocrack.de>
This commit is contained in:
Lukas Fleischer 2014-04-05 19:33:32 +02:00
parent 122636cbb6
commit 5415bc945a
2 changed files with 26 additions and 28 deletions

View file

@ -50,37 +50,33 @@ function pkgbase_comments_count($base_id) {
/**
* Get all package comment information for a specific package base
*
* @param int $pkgid The package base ID to get comments for
* @param int $base_id The package base ID to get comments for
* @param int $limit Maximum number of comments to return (0 means unlimited)
*
* @return array All package comment information for a specific package base
*/
function pkgbase_comments($base_id) {
function pkgbase_comments($base_id, $limit) {
$base_id = intval($base_id);
$comments = array();
if ($base_id > 0) {
$limit = intval($limit);
if (!$base_id) {
return null;
}
$dbh = DB::connect();
$q = "SELECT PackageComments.ID, UserName, UsersID, Comments, CommentTS ";
$q.= "FROM PackageComments LEFT JOIN Users ";
$q = "SELECT PackageComments.ID, UserName, UsersID, Comments, ";
$q.= "CommentTS FROM PackageComments LEFT JOIN Users ";
$q.= "ON PackageComments.UsersID = Users.ID ";
$q.= "WHERE PackageBaseID = " . $base_id . " ";
$q.= "AND DelUsersID IS NULL ";
$q.= "ORDER BY CommentTS DESC";
if (!isset($_GET['comments'])) {
$q.= " LIMIT 10";
$q.= "AND DelUsersID IS NULL ORDER BY CommentTS DESC";
if ($limit > 0) {
$q.=" LIMIT " . $limit;
}
$result = $dbh->query($q);
if (!$result) {
return;
return null;
}
while ($row = $result->fetch(PDO::FETCH_ASSOC)) {
$comments[] = $row;
}
}
return $comments;
return $result->fetchAll();
}
/**
@ -239,7 +235,8 @@ function pkgbase_display_details($base_id, $row, $SID="") {
include('pkg_comment_form.php');
}
$comments = pkgbase_comments($base_id);
$limit = isset($_GET['comments']) ? 0 : 10;
$comments = pkgbase_comments($base_id, $limit);
if (!empty($comments)) {
include('pkg_comments.php');
}

View file

@ -301,7 +301,8 @@ function pkg_display_details($id=0, $row, $SID="") {
include('pkg_comment_form.php');
}
$comments = pkgbase_comments($base_id);
$limit = isset($_GET['comments']) ? 0 : 10;
$comments = pkgbase_comments($base_id, $limit);
if (!empty($comments)) {
include('pkg_comments.php');
}