if (!defined('ALLOWED')) die('Appel direct ne sont pas permis'); /** * @file * @brief Update description on file */ global $http,$cn; $op=$http->request('op'); global $g_user; /* * Ajax for modifying the description , does not support ITextarea + enrich text * */ if ($op=='update_comment_followUp') { $input=$http->request('input'); $action=$http->request('ieaction', 'string', 'display'); $d_id=$http->request('d_id', "number"); // Build inplace input $inplace_description=Inplace_Edit::build($input); $inplace_description->set_callback("ajax_misc.php"); $inplace_description->add_json_param("d_id", $d_id); $inplace_description->add_json_param("gDossier", Dossier::id()); $inplace_description->add_json_param("op", "update_comment_followUp"); switch ($action) { case 'display': echo $inplace_description->ajax_input(); break; case 'ok': if ($g_user->check_action(VIEWDOC)==1) { $value=$http->request('value'); $doc=new Document($cn, $d_id); $doc->get(); if ($g_user->can_write_action($doc->ag_id)) { // retrieve the document $doc->update_description(strip_tags($value)); } $inplace_description->set_value($value); } echo $inplace_description->value(); break; case 'cancel': echo $inplace_description->value(); break; default: throw new Exception(__FILE__.':'.__LINE__.'Invalide value'); break; } return; } // Modify followup if ($op == 'followup_comment_oneedit') { $input=$http->request('input'); $action=$http->request('ieaction', 'string', 'display'); $agc_id=$http->request('agc_id', "number"); $ag_id=$http->request('ag_id', "number"); global $g_user; // check comment is the comment of this ag_id $ctl_ag_id=$cn->get_value("select ag_id from action_gestion_comment where agc_id=$1",[$agc_id]); if ( $agc_id != -1 && $ctl_ag_id != $ag_id) { record_log("FLP02 ag_id [$ag_id] <> ctl_ag_id [$ctl_ag_id]"); return; } // Build inplace input $inplace_description=Inplace_Edit::build($input); $inplace_description->set_callback("ajax_misc.php"); $inplace_description->add_json_param("ag_id", $ag_id); $inplace_description->add_json_param("gDossier", Dossier::id()); $inplace_description->add_json_param("op", "followup_comment_oneedit"); switch ($action) { case 'display': $inplace_description->add_json_param("agc_id", $agc_id); echo $inplace_description->ajax_input(); break; case 'ok': if ($g_user->check_action(VIEWDOC)==1) { $value=$http->request('value'); if ($g_user->can_write_action($ag_id)) { // retrieve the document if ( $agc_id==-1) { $agc_id= $cn->get_value("insert into action_gestion_comment(ag_id,agc_comment,agc_comment_raw,tech_user) values ($1,$2,$3,$4) returning agc_id" ,[$ag_id,strip_tags($value),$value,$g_user->login]); } else { $cn->exec_sql("update action_gestion_comment set agc_comment=$1,tech_user=$2 , agc_comment_raw=$3 where agc_id=$4 " ,[strip_tags($value),$g_user->login,$value,$agc_id]); } } $inplace_description->add_json_param("agc_id", $agc_id); $inplace_description->set_value($value); } echo $inplace_description->value(); break; case 'cancel': $inplace_description->add_json_param("agc_id", $agc_id); echo '
';
echo $inplace_description->value();
echo '';
break;
default:
throw new Exception(__FILE__.':'.__LINE__.'Invalide value');
break;
}
return;
}
/**************************************************************************
* See list of follow-up event
*************************************************************************/
if ($op =="view_followup_card")
{
$div=$http->get("div");
$card=new Fiche($cn,$http->get("f_id","number"));
echo HtmlInput::title_box("Suivi ".h($card->get_attribute(ATTR_DEF_NAME)),$div);
$query="where true=true ".Follow_Up::create_query($cn,["qcode"=>$card->get_attribute(ATTR_DEF_QUICKCODE),
'closed_action'=>true]);
$followup=new Follow_Up($cn);
echo $followup->view_list($query,' limit 25');
echo \HtmlInput::button_close($div);
return;
}
/********************************************************************************************************************
* list the existing filter for followup
******************************************************************************************************************/
if ( $op == 'list_filter_followup') {
$followup_filter=Follow_Up_Filter::display_list($g_user->getLogin());
return;
}
/*******************************************************************************************************************
* delete_filter_followup(p_dossier,filter_id)
*******************************************************************************************************************/
if ( $op == 'delete_filter_followup') {
$cn->exec_sql("delete from action_gestion_filter where af_id=$1 and af_user=$2",
[$http->get("filter_id","number"),$g_user->getLogin()]);
}