cn=$p_cn; $this->data=new Tag_SQL($p_cn,$id); } public function get_data() { return $this->data; } public function set_data($data) { $this->data=$data; return $this; } /** * Show the list of available tag * @return HTML */ function show_list() { $ret=$this->data->seek(' order by t_tag'); if ( $this->cn->count($ret) == 0) return ""; require_once NOALYSS_TEMPLATE.'/tag_list.php'; } /** * let select a tag to add */ function select() { $ret=$this->data->seek("where t_actif='Y' order by t_tag"); $ret=$this->cn->exec_sql(" select t_id,t_tag,t_description,'t' as tag_type ,t_color from tags where t_actif='Y' union all select tg_id,tg_name ,'G','g' ,1 from tag_group order by 2"); require_once NOALYSS_TEMPLATE.'/tag_select.php'; } /** * Display a inner window with the detail of a tag */ function form_add() { $data=$this->data; require_once NOALYSS_TEMPLATE.'/tag_detail.php'; } /** * Show the tag you can add to a document */ function show_form_add() { echo h2(_("Ajout d'un dossier (ou tag)")); $this->form_add(); } function save($p_array) { if ( trim($p_array['t_tag'])=="" ) return ; $this->data->t_id=$p_array['t_id']; $this->data->t_tag= strip_tags($p_array['t_tag']); $this->data->t_description=strip_tags($p_array['t_description']); $this->data->t_actif=$p_array['t_actif']; $this->data->t_color=$p_array['tagcell_color']; $this->data->save(); } function remove($p_array) { $this->data->t_id=$p_array['t_id']; $this->data->delete(); } /** * Show a button to select tag for Search * @return HTML */ static function button_search($p_prefix) { $r=""; $r.=HtmlInput::button("choose_tag", _("Etiquette"), 'onclick="search_display_tag('.Dossier::id().',\''.$p_prefix.'\')"', "smallbutton"); return $r; } /** * let select a tag to add to the search */ function select_search($p_prefix) { $res=""; $ret=$this->data->seek(' order by t_tag'); require_once NOALYSS_TEMPLATE.'/tag_search_select.php'; return HtmlInput::title_box('Tag', $p_prefix.'tag_div').$res; } /** * In the screen search add this data to the cell */ function update_search_cell($p_prefix) { echo ''; echo h($this->data->t_tag); echo HtmlInput::hidden($p_prefix.'tag[]', $this->data->t_id); $js=sprintf("$('sp_".$p_prefix.$this->data->t_id."').remove();"); echo Icon_Action::trash(uniqid(), $js); echo ''; } /** * clear the search cell */ static function add_clear_button($p_prefix) { $clear=HtmlInput::button('clear', 'X', 'onclick="search_clear_tag('.Dossier::id().',\''.$p_prefix.'\');"', 'smallbutton'); return $clear; } } ?>