/** * Renvoie le formulaire de recherche dans les concepts * * @param onto_common_controler $controler * @param onto_param $params * * @return string $form */ public static function get_search_form($controler, $params) { global $msg, $charset, $base_path, $ontology_tpl; $classes = $controler->get_classes(); foreach ($classes as $class) { if ($class->pmb_name == $params->sub) { $title .= $controler->get_label($class->pmb_name); } } $onchange_scheme_list_selector = 'onchange="document.location =\'' . $base_path . '/autorites.php?categ=' . $params->categ . '&sub=' . $params->sub . '&id=&action=search&concept_scheme=\'+document.getElementById(\'id_concept_scheme\').value+\'&user_input=\'+document.getElementById(\'id_user_input\').value+\'&only_top_concepts=' . $params->only_top_concepts . '\';"'; $name_scheme_list_selector = 'concept_scheme'; $id_scheme_list_selector = 'id_concept_scheme'; $form = $ontology_tpl['skos_concept_search_form']; $form = str_replace('!!skos_concept_search_form_action!!', $base_path . '/autorites.php?categ=' . $params->categ . '&sub=' . $params->sub . '&id=&action=search', $form); $form = str_replace('!!skos_concept_search_form_title!!', $title, $form); $form = str_replace('!!skos_concept_search_form_selector!!', self::get_scheme_list_selector($controler, $params, false, $onchange_scheme_list_selector, $name_scheme_list_selector, $id_scheme_list_selector), $form); $onchange_only_top_concepts = 'onchange="document.location =\'' . $base_path . '/autorites.php?categ=' . $params->categ . '&sub=' . $params->sub . '&id=&action=search&concept_scheme=\'+document.getElementById(\'id_concept_scheme\').value+\'&user_input=\'+document.getElementById(\'id_user_input\').value+\'&only_top_concepts=\'+this.checked*1;"'; $checked_only_top_concepts = ''; if ($params->only_top_concepts) { $checked_only_top_concepts = 'checked="checked"'; } $form = str_replace('!!only_top_concepts_onchange!!', $onchange_only_top_concepts, $form); $form = str_replace('!!only_top_concepts_checked!!', $checked_only_top_concepts, $form); if (isset($msg['onto_' . $controler->get_onto_name() . '_add_' . $params->sub])) { $add_msg = $msg['onto_' . $controler->get_onto_name() . '_add_' . $params->sub]; } else { $add_msg = sprintf($msg['onto_common_add'], $controler->get_label($params->sub)); } $form = str_replace('!!skos_concept_search_form_user_input!!', stripslashes(htmlentities($params->user_input, ENT_QUOTES, $charset)), $form); $form = str_replace('!!skos_concept_search_form_concept_onclick!!', 'document.location=\'./autorites.php?categ=' . $params->categ . '&sub=' . $params->sub . '&id=&action=edit&concept_scheme=' . $params->concept_scheme . '&parent_id=' . $params->parent_id . '\'', $form); $form = str_replace('!!skos_concept_search_form_concept_value!!', htmlentities($add_msg, ENT_QUOTES, $charset), $form); $form = str_replace('!!skos_concept_search_form_composed_onclick!!', 'document.location=\'./autorites.php?categ=' . $params->categ . '&sub=' . $params->sub . '&id=&action=edit&composed=composed&concept_scheme=' . $params->concept_scheme . '&parent_id=' . $params->parent_id . '\'', $form); $form = str_replace('!!skos_concept_search_form_href!!', $base_path . '/autorites.php?categ=' . $params->categ . '&sub=' . $params->sub . '&action=' . $params->action . '&concept_scheme=' . $params->concept_scheme, $form); $form = str_replace('!!skos_concept_search_form_breadcrumb!!', self::get_breadcrumb($controler, $params), $form); return $form; }