contents = $contents; $this->nb_results = $nb_results; $this->mixed = $mixed; $this->groups = $groups; $this->nb_filtered_results = $nb_filtered_results; } public function get_elements_list(){ if (!$this->elements_list) { $this->elements_list = array(); $recherche_ajax_mode=0; $nb=0; $this->elements_list = $this->generate_elements_list($this->contents); } return $this->elements_list; } public function get_elements_list_nav(){ global $pmb_url_base, $categ, $sub, $id, $quoi; global $tab_page; global $pmb_nb_elems_per_tab; global $tab_nb_per_page; global $msg,$charset, $base_path; global $tab_nb_results; if(!$tab_page){ $tab_page = 1; } if(!$tab_nb_per_page){ $tab_nb_per_page = $pmb_nb_elems_per_tab; } $nav_bar = $this->get_tabs_pagination($tab_nb_per_page, $tab_page); return $nav_bar; } public function is_mixed(){ return $this->mixed; } public function get_groups() { return $this->groups; } public function set_current_url($current_url){ $this->current_url = $current_url; } public function get_current_url(){ return $this->current_url; } private function get_tabs_pagination($tab_nb_per_page=0, $tab_page=0, $etendue=10, $aff_extr=false ){ global $msg, $charset, $base_path; $is_filtered = false; if ($this->groups && is_array($this->groups)) { foreach (array_keys($this->groups) as $group_name) { if (isset($_SESSION['elements_list_filters'][$group_name]) && $_SESSION['elements_list_filters'][$group_name] && count($_SESSION['elements_list_filters'][$group_name])) { $is_filtered = true; break; } } } if ($is_filtered) { $nb_results = $this->nb_filtered_results; } else { $nb_results = $this->nb_results; } // Si on n'a pas de résultats, pas la peine d'aller plus loin if (!$nb_results) return ''; $nbepages = ceil($nb_results/$tab_nb_per_page); $suivante = $tab_page+1; $precedente = $tab_page-1; $deb = $tab_page - $etendue; if ($deb<1) $deb=1; $fin = $tab_page + $etendue; if($fin>$nbepages)$fin=$nbepages; $nav_bar = ""; $nav_bar = "