[3609] | 1 | <?php |
---|
| 2 | |
---|
| 3 | load_language('plugin.lang', MOSTCOMMENTED_PATH); |
---|
| 4 | |
---|
| 5 | global $page, $conf; |
---|
| 6 | |
---|
| 7 | $page['section'] = 'most_commented'; |
---|
| 8 | |
---|
| 9 | $forbidden = get_sql_condition_FandF ( |
---|
| 10 | array ('forbidden_categories' => 'category_id', |
---|
| 11 | 'visible_categories' => 'category_id', |
---|
| 12 | 'visible_images' => 'image_id'), '', true); |
---|
| 13 | |
---|
| 14 | $query = 'SELECT DISTINCT image_id |
---|
| 15 | FROM ' . IMAGE_CATEGORY_TABLE . ' |
---|
| 16 | WHERE ' . $forbidden . ';'; |
---|
| 17 | |
---|
| 18 | $img = array_from_query($query, 'image_id'); |
---|
| 19 | |
---|
| 20 | if (empty($img)) $img = array(0); |
---|
| 21 | |
---|
| 22 | $query = 'SELECT img.id, COUNT(*) |
---|
| 23 | FROM ' . IMAGES_TABLE . ' AS img |
---|
| 24 | INNER JOIN ' . COMMENTS_TABLE . ' AS com |
---|
| 25 | ON com.image_id = img.id |
---|
| 26 | AND com.validated = "true" |
---|
| 27 | WHERE img.id IN (' . implode(',', $img) . ') |
---|
| 28 | GROUP BY img.id |
---|
| 29 | ORDER BY 2 DESC, img.hit DESC |
---|
| 30 | LIMIT 0, ' . $conf['top_number'] . ';'; |
---|
| 31 | |
---|
| 32 | $page = array_merge($page, |
---|
| 33 | array('title' => '<a href="' . duplicate_index_url() . '">' |
---|
| 34 | . $conf['top_number'] . ' ' . l10n('most_commented_cat') . '</a>', |
---|
| 35 | 'items' => array_from_query($query, 'id'))); |
---|
| 36 | |
---|
| 37 | |
---|
| 38 | add_event_handler('loc_end_index_thumbnails', 'add_mostcommented_nb_comments'); |
---|
| 39 | |
---|
| 40 | function add_mostcommented_nb_comments($tpl_thumbnails_var) |
---|
| 41 | { |
---|
| 42 | global $template, $user; |
---|
| 43 | |
---|
| 44 | // Suppression de l'ordre de trie |
---|
| 45 | $template->clear_assign('image_orders'); |
---|
| 46 | |
---|
| 47 | // Affichage du nombre de commentaires si désactivé pour l'utilisateur |
---|
| 48 | if (!$user['show_nb_comments']) |
---|
| 49 | { |
---|
| 50 | foreach ($tpl_thumbnails_var as $key => $row) |
---|
| 51 | { |
---|
| 52 | $query = 'SELECT COUNT(*) AS nb_comments |
---|
| 53 | FROM '.COMMENTS_TABLE.' |
---|
| 54 | WHERE image_id = '.$row['ID'].' |
---|
| 55 | AND validated = "true";'; |
---|
| 56 | |
---|
| 57 | list($nb_comments) = mysql_fetch_array(pwg_query($query)); |
---|
| 58 | |
---|
| 59 | $tpl_thumbnails_var[$key]['NAME'] = '(' . $nb_comments . ') ' . $tpl_thumbnails_var[$key]['NAME']; |
---|
| 60 | } |
---|
| 61 | } |
---|
| 62 | |
---|
| 63 | return $tpl_thumbnails_var; |
---|
| 64 | } |
---|
[3299] | 65 | ?> |
---|