From 6615c91e30b5bd8207460abef966f39307f9030c Mon Sep 17 00:00:00 2001 From: plegall Date: Mon, 15 Aug 2005 13:05:29 +0000 Subject: - bug 135 : "Count of total number of pictures". Correction reported from development branch. git-svn-id: http://piwigo.org/svn/branches/branch-1_4@813 68402e56-0260-453c-a942-63ccdbb3a9ee --- include/functions_category.inc.php | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/include/functions_category.inc.php b/include/functions_category.inc.php index 9d946df4f..03e54ab90 100644 --- a/include/functions_category.inc.php +++ b/include/functions_category.inc.php @@ -155,20 +155,30 @@ SELECT name,id,date_last,nb_images,global_rank return get_html_menu_category($cats); } +/** + * returns the total number of elements viewable in the gallery by the + * connected user + * + * @return int + */ function count_user_total_images() { global $user; - $query = 'SELECT SUM(nb_images) AS total'; - $query.= ' FROM '.CATEGORIES_TABLE; - if ( count( $user['restrictions'] ) > 0 ) - $query.= ' WHERE id NOT IN ('.$user['forbidden_categories'].')'; - $query.= ';'; + $query = ' +SELECT COUNT(DISTINCT(image_id)) as total + FROM '.IMAGE_CATEGORY_TABLE; + if (count($user['restrictions']) > 0) + { + $query.= ' + WHERE category_id NOT IN ('.$user['forbidden_categories'].')'; + } + $query.= ' +;'; - $row = mysql_fetch_array( pwg_query( $query ) ); + $row = mysql_fetch_array(pwg_query($query)); - if ( !isset( $row['total'] ) ) $row['total'] = 0; - return $row['total']; + return isset($row['total']) ? $row['total'] : 0; } /** -- cgit v1.2.3