name = $name; $this->label = $label; $this->content_type = $content_type; $this->mixed = $mixed; } /** * Retourne le nom de l'onglet * @return string Nom de l'onglet */ public function get_name(){ return $this->name; } /** * Retourne le label de l'onglet * @return string Label de l'onglet */ public function get_label(){ return $this->label; } /** * Retourne le type du contenu d'un onglet * @return string Type du contenu d'un onglet */ public function get_content_type(){ return $this->content_type; } /** * Retourne le nombre de résultats contenu dans l'onglet * @return int Nombre de résultats contenu dans l'onglet */ public function get_nb_results(){ return $this->nb_results; } /** * Défini le nombre de résultats contenu dans l'onglet * @param int $nb_results Nombre de résultats à affecter */ public function set_nb_results($nb_results){ $this->nb_results = $nb_results*1; } /** * Retourne le contenu de l'onglet * @return array Tableau des résultats */ public function get_contents(){ return $this->contents; } /** * Permet de définir le contenu de l'onglet * @param array $contents Contenu à affecter */ public function set_contents($contents){ $this->contents = $contents; } /** * Permet de définir le groupement appliqué au contenu de l'onglet * @param array $groups Contenu à affecter */ public function set_groups($groups){ $this->groups = $groups; } /** * Retourne le tableau des groupes * @return array Tableau des groupes */ public function get_groups(){ return $this->groups; } /** * Indique si l'onglet est mixte ou non * @return bool */ public function is_mixed(){ return $this->mixed; } /** * Ajoute un groupement à appliquer au contenu de l'onglet * @param string $groups_parent Type des groupes à affecter * @param array $groups Contenu à affecter */ public function add_groups($groups_parent, $groups) { $this->groups[$groups_parent] = $groups; } public function set_filters($filters) { $this->filters = $filters; } public function get_filters() { return $this->filters; } public function get_filter_values($filter_name) { global $elements_list_filters, ${'elements_list_filters_'.$filter_name.'_post'}; if (isset(${'elements_list_filters_'.$filter_name.'_post'})) { $_SESSION['elements_list_filters'][$filter_name] = $elements_list_filters[$filter_name]; } if (isset($_SESSION['elements_list_filters'][$filter_name])) { return $_SESSION['elements_list_filters'][$filter_name]; } return array(); } /** * Indique si des filtres sont cochés * @return boolean */ public function has_filters_values() { foreach ($this->filters as $filter) { // On vérifie que les filtres présents en session sont présents dans les filtres de l'élément sur lequel on est if (isset($this->groups[$filter['name']]['elements']) && is_array($this->groups[$filter['name']]['elements']) && count(array_intersect($this->get_filter_values($filter['name']), array_keys($this->groups[$filter['name']]['elements'])))) { return true; } } return false; } public function set_query_elements($query_elements = array()) { $this->query_elements = $query_elements; } public function get_query_elements() { return $this->query_elements; } public function set_callable($callable) { $this->callable = $callable; } public function get_callable() { return $this->callable; } public function set_content_authority_type($content_authority_type) { $this->content_authority_type = $content_authority_type; } public function get_content_authority_type() { return $this->content_authority_type; } /** * Définit le nombre de résultats après passage des filtres * @param int $nb_filtered_results Nombre de résultats après passage des filtres */ public function set_nb_filtered_results($nb_filtered_results) { $this->nb_filtered_results = $nb_filtered_results*1; } /** * Retourne le nombre de résultats après passage des filtres * @return int Nombre de résultats après passage des filtres */ public function get_nb_filtered_results() { return $this->nb_filtered_results; } /** * Définit le nombre de résultats après passage des filtres * @param int $nb_filtered_results Nombre de résultats après passage des filtres */ public function set_nb_prefiltered_results($nb_prefiltered_results) { $this->nb_prefiltered_results = $nb_prefiltered_results*1; } /** * Retourne le nombre de résultats après passage des filtres * @return int Nombre de résultats après passage des filtres */ public function get_nb_prefiltered_results() { return $this->nb_prefiltered_results; } }