/** * Renvoie l'affichage html de la liste pour le selecteur d'autorité * * @param onto_common_controler $controler * @param onto_param $params * * @return string $form */ public static function get_list_selector($controler, $params) { global $msg, $charset, $element_form, $list_form, $lang; $multiple_range = false; if ($params->objs) { $property = $controler->get_onto_property_from_pmb_name($params->objs); if (count($property->range) > 1) { $multiple_range = true; } $element = $property->range[$params->range]; } else { $element = $controler->get_class_uri($params->element); } $elements = $controler->get_list_elements($params); $elements_form = ""; $list = $list_form; if ($elements["nb_total_elements"]) { foreach ($elements['elements'] as $uri => $item) { $current_element_form = $element_form; $current_element_form = str_replace("!!caller!!", $params->caller, $current_element_form); $current_element_form = str_replace("!!element!!", $params->element, $current_element_form); $current_element_form = str_replace("!!order!!", $params->order, $current_element_form); $current_element_form = str_replace("!!uri!!", $uri, $current_element_form); $current_element_form = str_replace("!!range!!", $element ? $element : $controler->get_class_uri($params->sub), $current_element_form); $current_element_form = str_replace("!!callback!!", $params->callback, $current_element_form); $item_label = isset($item[substr($lang, 0, 2)]) ? $item[substr($lang, 0, 2)] : $item['default']; $current_element_form = str_replace("!!item_libelle!!", htmlentities($item_label, ENT_QUOTES, $charset), $current_element_form); if ($multiple_range) { $item = "[" . $controler->get_class_label($element) . "] " . $item_label; } else { $item = $item_label; } $current_element_form = str_replace("!!item!!", addslashes($item), $current_element_form); $elements_form .= $current_element_form; } $list = str_replace("!!elements_form!!", $elements_form, $list); $list = str_replace("!!aff_pagination!!", aff_pagination($params->base_url, $elements['nb_total_elements'], $elements['nb_onto_element_per_page'], $params->page, 10, true, true), $list); } else { $list = $msg["1915"]; } return $list; }