query("INSERT INTO ".$_SESSION['tablename']['listinstance']." (RES_TABLE, RES_ID, SEQUENCE,
USER_ID)
VALUES ('".$_SESSION['ressources'][0]['tablename']."', ".$id.", ".$k."
, '".$_SESSION['diff'][$i]['UserID']."')");
}
if($_SESSION['history']['resadd'] == true)
{
require("class_history.php");
$users = new history();
if($_SESSION['courrier']["is_ingoing"])
{
$mes = _NEW_INGOING_DOC." (".$type.") ";
}
else
{
$mes = _NEW_ONGOING_DOC." (".$type.") ";
}
$users->add($_SESSION['tablechoice'], $id ,"ADD", $mes);
if($is_folder =='N')
{
if($_SESSION['courrier']["is_ingoing"])
{
$mes = _NEW_INGOING_DOC." (".$id.") "._ADDED_TO_FOLDER.$folder_id;
}
else
{
$mes = _NEW_ONGOING_DOC." (".$type.") "._ADDED_TO_FOLDER.$folder_id;
}
$users->add($_SESSION['tablechoice'], $folder_id ,"ADD", $mes);
}
}
//$_SESSION['FILE']['taille_fichier'] = $_FILES['file']['size'];
$conn->query("SELECT PATH_TEMPLATE FROM ".$_SESSION['tablename']['docservers']." WHERE DOCSERVER_ID='".$docserver_id."'");
// $conn->show();
$res = $conn->fetch_object();
$md5fichier = "";
$md5fichier = $res->PATH_TEMPLATE;
$conn->query("SELECT RES_ID as ID, PATH, FILENAME, CREATION_DATE FROM ".$_SESSION['tablechoice']." WHERE RES_ID = ".$id);
//$conn->show();
$res = $conn->fetch_object();
$tmp = $res->PATH;
$dateenr = $res->CREATION_DATE;
$id = $res->ID;
/*if ($_SESSION['config']['system'] == "true")
{
$tmp = str_replace('#','/',$tmp);
}
else
{
$tmp = str_replace('#','\\',$tmp);
}*/
$tmp = str_replace('#',DIRECTORY_SEPARATOR,$tmp);
$md5fichier .= $tmp;
$filename = $res->FILENAME;
$extemp = strtolower(substr($filename, -4));
$filename = ereg_replace("[.A-Z]{4}$",$extemp, $filename);
$md5fichier .= $filename;
$md5 = md5_file($md5fichier);
// courrier arrivé
if($_SESSION['courrier']["is_ingoing"])
{
$conn2 = new dbquery();
$conn2->connect();
$conn2->query("select TYPE_ID, ADDDATE('".$dateenr."', INTERVAL DELAI_RELANCE1 DAY) as RELANCE1, ADDDATE('".$date_limite."', INTERVAL DELAI_RELANCE2 DAY) as RELANCE2 from ".$_SESSION['tablename']['doctypes']." where TYPE_ID = '".$_SESSION['courrier']['type_courrier']."' and RES_TABLE = '".$_SESSION['tablechoice']."'");
//$conn->show();
if($conn2->nb_result() == 0)
{
$_SESSION['error']= _DOCTYPE." "._UNKNOWN;
header("location: enregistrement_doc.php");
exit;
}
else
{
$res = $conn2->fetch_object();
$relance1 = $res->RELANCE1;
$relance2 = $res->RELANCE2;
}
$conn->query("UPDATE ".$_SESSION['tablechoice']." SET FINGERPRINT='".$md5."', CUSTOM_D4 = '".$relance1."', CUSTOM_D5 = '".$relance2."' WHERE RES_ID = ".$id);
}
// courrier départ
else
{
$conn->query("UPDATE ".$_SESSION['tablechoice']." SET FINGERPRINT='".$md5."' WHERE RES_ID = ".$id);
}
if($action == "diff " && $_SESSION['history']['diffusion'])
{
$hist->add($_SESSION['tablename']['listinstance'], $id , 'DIF', _DOC." n° ".$id." "._SEND." : ".$_SESSION['diff'][0]['UserID']." ("._RECIPIENT.")");
for($i=1; $i < count($_SESSION['diff']); $i++)
{
$hist->add($_SESSION['tablename']['listinstance'], $id, 'DIF', _DOC." n° ".$id." "._SEND." : ".$_SESSION['diff'][$i]['UserID']." ("._TO_CC.")");
}
}
if(file_exists($_SESSION['config']['tmpdir'].'\tmp_file_'.$_SESSION['user']['UserId'].'.'.$the_ext))
{
unlink($_SESSION['config']['tmpdir'].'\tmp_file_'.$_SESSION['user']['UserId'].'.'.$the_ext);
}
$_SESSION['indexation'] = true;
// $_SESSION['diff'] = array();
$_SESSION['FILE'] = array();
if($is_folder =='N')
{
$id = $folder_id;
}
if ($_SESSION['courrier']['chk_date_limite'] == 'N')
{
$conn->query("UPDATE ".$_SESSION['tablechoice']." SET CUSTOM_D2=NULL, CUSTOM_D4=NULL, CUSTOM_D5=NULL WHERE RES_ID = ".$id);
}
$_SESSION['indexation_id'] = $id;
$_SESSION['courrier']['objet'] = '';
$_SESSION['courrier']['emetteur'] = '';
$_SESSION['courrier']['nom'] = '';
$_SESSION['courrier']['prenom'] = '';
$_SESSION['courrier']['civ'] ='';
$_SESSION['courrier']['emetteur_societe']= '';
$_SESSION['courrier']['emetteur_name']= '';
$_SESSION['courrier']['emetteur_prenom']= '';
$_SESSION['courrier']['emetteur_fonction']= '';
//$_SESSION['courrier']["service"] = '';
$_SESSION['courrier']['index_sender_liste'] = '';
$_SESSION['courrier']['sender_nom'] = '';
$_SESSION['courrier']['sender_prenom'] = '';
$_SESSION['courrier']['sender_civilite'] = '';
$_SESSION['courrier']['sender_society'] = '';
$_SESSION['courrier']['sender_function'] = '';
unset ($_SESSION['courrier']['entity']);
unset ($_SESSION['courrier']['id_expediteur']);
?>
exit();
}
//}
}
}
}
elseif($action == "validation")
{
$id = $_REQUEST['id'];
$identifier = $_REQUEST['identifier'];
if($_SESSION['config']['enablechangenotif'] == "true")
{
if( $_SESSION['is_diff'])
{
$date = date("d-m-Y");
$mail_trait = "
"._MAIL_TO_PROCESS."
"._HELLO.",
"._NEED_PROCESS_LETTER." :
- "._LETTER_N."".$id." "._TO_TYPE." ".$type." ("._OBJECT." : ".$objet.") "._RECEIVE_THE." ".$date." "._RECEIVE_FROM." ".$emetteur." "._LIMIT_PROCESS." ".$date_limite." :
"._ACCESS_MAIL_TO_PROCESS."
";
$mail_copie = "
"._MAIL_IN_COPY."
"._HELLO.",
"._YOU_HAVE_MAIL_COPY." :
";
$nom_dest = "";
$conn->query("select LASTNAME, FIRSTNAME from ".$_SESSION['tablename']['users']." where USER_ID = '".$_SESSION['diff'][0]['UserID']."'");
$res = $conn->fetch_object();
$nom_dest = $res->FIRSTNAME." ".$res->LASTNAME;
$emetteur = $civ." ".$nom." ".$prenom;
$mail_copie .= "- "._LETTER_N."".$id." "._TO_TYPE." ".$type." ("._OBJECT." : ".$objet.") "._RECEIVE_THE." ".$date." "._RECEIVE_FROM." ".$emetteur." "._HAS_BEEN_TRANSFERED_BY." ".$nom_dest." "._HAS_BEEN_PROCESSED_BEFORE." ".$date_limite." :
"._SHOW_MAIL."
\n\n";
}
for($i=0;$iquery("select MAIL from ".$_SESSION['tablename']['users']." where USER_ID = '".$_SESSION['diff'][$i]['UserID']."'");
$res = $conn->fetch_object();
$mail = $res->MAIL;
if( $_SESSION['is_diff'] && $i==0)
{
mail($mail, _PROCESS_MAIL, $mail_trait , "From: ".$_SESSION['config']['adminmail']."\r\nReply-To: ".$_SESSION['config']['adminmail']." \r\nContent-Type: text/html; charset=\"iso-8859-1\"\r\n");
}
elseif($_SESSION['is_diff'] && $i > 0)
{
mail($mail, _FIRST_WARNING_TXT, $mail_copie , "From: ".$_SESSION['config']['adminmail']."\r\nReply-To: ".$_SESSION['config']['adminmail']." \r\nContent-Type: text/html; charset=\"iso-8859-1\"\r\n");
}
}
}
$conn->query("select * from ".$_SESSION['tablename']['listinstance']." where RES_ID = ".$id);
if($conn->nb_result() == 1)
{
for($i=0;$iquery("UPDATE ".$_SESSION['tablename']['listinstance']." SET SEQUENCE = ".$j.",
USER_ID = '".$_SESSION['diff'][$i]['UserID']."'
WHERE RES_TABLE = '".$_SESSION['tablechoice']."' and RES_ID = ".$id." and SEQUENCE = ".$j);
// $conn->show();
}
}
else
{
$conn->query("DELETE from ".$_SESSION['tablename']['listinstance']." where RES_TABLE = 'res_x' and RES_ID = ".$id);
for($i=0;$iquery("INSERT into ".$_SESSION['tablename']['listinstance']." (RES_TABLE, RES_ID, SEQUENCE, USER_ID) values ('".$_SESSION['tablechoice']."',
".$id.", ".$j.", '".$_SESSION['diff'][$i]['UserID']."');");
// $conn->show();
}
}
$conn->query(" UPDATE ".$_SESSION['tablechoice']." SET DESCRIPTION = '".$objet."', DOC_DATE = '".$courrier_date."',
TYPE_ID = '".$type."', CUSTOM_T2 = '".$nature_doc."', CUSTOM_T3 = '".$civ."', CUSTOM_T4 = '".$prenom."'
, AUTHOR = '".$nom."', CUSTOM_D1 = '".$arrivee_date."', CUSTOM_D2 = '".$date_limite."', DEST_USER = '".$_SESSION['diff'][0]['UserID']."',
DESTINATION = '".$service."', COLL_ID = '".$_SESSION['courrier']['entity']."' APPROVER = '".$_SESSION['user']['UserId']."', VALIDATION_DATE = now(), PRIORITY = ".$priority."
WHERE RES_ID = '".$id."'");
$conn->query("SELECT RES_ID, CREATION_DATE FROM ".$_SESSION['tablechoice']." WHERE IDENTIFIER = '".$_REQUEST['identifier']."'");
$line = $conn->fetch_object();
$id = $line->RES_ID;
$dateenr = $line->CREATION_DATE;
if($_SESSION['history']['resup'] == true)
{
require("class_history.php");
$users = new history();
$users->add($_SESSION['tablechoice'], $id ,"VAL", _DOC_VALIDATED." : ".$_REQUEST['identifier']." (".$type.")");
}
$conn2 = new dbquery();
$conn2->connect();
$conn2->query("select TYPE_ID, ADDDATE('".$dateenr."', INTERVAL DELAI_RELANCE1 DAY) as RELANCE1, SUBDATE('".$date_limite."', INTERVAL DELAI_RELANCE2 DAY) as RELANCE2 from ".$_SESSION['tablename']['doctypes']." where TYPE_ID = '".$_SESSION['courrier']['type_courrier']."' and RES_TABLE = '".$_SESSION['tablechoice']."'");
// $conn->show();
if($conn2->nb_result() == 0)
{
$_SESSION['error']= _DOCTYPE.' '._UNKNOWN;
header("location: enregistrement_doc.php");
exit;
}
else
{
$res = $conn2->fetch_object();
$relance1 = $res->RELANCE1;
$relance2 = $res->RELANCE2;
}
$conn->query('update '.$_SESSION['tablechoice']." set CUSTOM_D4 = '".$relance1."', CUSTOM_D5 = '".$relance2."' WHERE RES_ID = ".$id);
// $conn->show();
if($action == "diff " && $_SESSION['history']['diffusion'])
{
$hist->add($_SESSION['tablename']['listinstance'], $id , 'DIF', _DOC." n° ".$id." "._SEND." : ".$_SESSION['diff'][0]['UserID']." ("._RECIPIENT.")");
for($i=1; $i < count($_SESSION['diff']); $i++)
{
$hist->add($_SESSION['tablename']['listinstance'], $id, 'DIF', _DOC." n° ".$id." "._SEND." : ".$_SESSION['diff'][$i]['UserID']." ("._TO_CC.")");
}
}
if ($_SESSION['courrier']['chk_date_limite'] == 'N')
{
$conn->query("UPDATE ".$_SESSION['tablechoice']." SET CUSTOM_D2=NULL, CUSTOM_D4=NULL, CUSTOM_D5=NULL WHERE RES_ID = ".$id);
}
//CFI
//$_SESSION['courrier'] = array();
$_SESSION['courrier']['objet'] = '';
$_SESSION['courrier']['emetteur'] = '';
$_SESSION['courrier']['nom'] = '';
$_SESSION['courrier']['prenom'] = '';
$_SESSION['courrier']['civ'] ='';
$_SESSION['courrier']['emetteur_societe']= '';
$_SESSION['courrier']['emetteur_name']= '';
$_SESSION['courrier']['emetteur_prenom']= '';
$_SESSION['courrier']['emetteur_fonction']= '';
//$_SESSION['courrier']["service"] = '';
$_SESSION['courrier']['index_sender_liste'] = '';
$_SESSION['courrier']['sender_nom'] = '';
$_SESSION['courrier']['sender_prenom'] = '';
$_SESSION['courrier']['sender_civilite'] = '';
$_SESSION['courrier']['sender_society'] = '';
$_SESSION['courrier']['sender_function'] = '';
unset ($_SESSION['courrier']['entity']);
unset ($_SESSION['courrier']['id_expediteur']);
//$_SESSION['diff'] = array();
?>
}
else // action = attach
{
$conn->query("SELECT DOCSERVER_ID, PATH_TEMPLATE, SIZE_LIMIT, ACTUAL_SIZE FROM ".$_SESSION['tablename']['docservers']." WHERE IS_READONLY = 'N' AND ENABLED = 'Y' ");
if($conn->nb_result() == 0)
{
$_SESSION['error'] .= _NO_AVAILABLE_DOCSERVER."."._MORE_INFOS." : ".$_SESSION['config']['adminname'].".
";
}
else
{
$info = $conn->fetch_object();
$docserver_id = $info->DOCSERVER_ID;
$docserver_size = $info->ACTUAL_SIZE + $_FILES['file']['size'];
if($info->SIZE_LIMIT > 0 && $docserver_size >= $info->SIZE_LIMIT)
{
$_SESSION['error'] .= _NOT_ENOUGH_DISK_SPACE."."._MORE_INFOS." : ".$_SESSION['config']['adminname'].".
";
}
else
{
/* if(!is_uploaded_file($_FILES['file']['tmp_name']))
{
$_SESSION['error'] .= _FILE_NOT_SEND.". "._TRY_AGAIN."."._MORE_INFOS." : ".$_SESSION['config']['adminname'].".
";
}
else
{*/
$path_template = $info->PATH_TEMPLATE;
require("class_docserver.php");
$docserver = new docserver();
$docinfo = $docserver->filename(trim($info->PATH_TEMPLATE));
$destination_rept = $docinfo['destination_rept'];
$file_destination_name = $docinfo['file_destination_name'];
/*
if($_SESSION['config']['system'] == "true")
{
$path_tmp = $_SESSION['config']['tmpdir'].'/'.$_SESSION['FILE']['Ftp_File'];
}
else
{
$path_tmp = $_SESSION['config']['tmpdir'].'/'.$_SESSION['FILE']['Ftp_File'];
}*/
$path_tmp = $_SESSION['config']['tmpdir'].DIRECTORY_SEPARATOR.$_SESSION['FILE']['Ftp_File'];
if(file_exists($destination_rept.$file_destination_name.".".$the_ext))
{
$_SESSION['error'] = _FILE_ALREADY_EXISTS.". "._MORE_INFOS." : ".$_SESSION['config']['adminname'].".";
header("location: enregistrement_doc.php");
exit;
}
if (!copy($path_tmp, $destination_rept.$file_destination_name.".".$the_ext))
//if(!move_uploaded_file($_FILES['file']['tmp_name'],$destination_rept.$file_destination_name.".".$the_ext))
{
$_SESSION['error'] .= _FILE_SEND_ERROR.". "._TRY_AGAIN.". "._MORE_INFOS." : ".$_SESSION['config']['adminname'].".
";
}
else
{
$conn->query("UPDATE ".$_SESSION['tablename']['docservers']." SET ACTUAL_SIZE=".$docserver_size." WHERE DOCSERVER_ID='".$docserver_id."'");
$destination_rept = substr($destination_rept,strlen($path_template),4);
/*if ($_SESSION['config']['system'] == "true")
{
$destination_rept = str_replace('/','#',$destination_rept);
}
else
{
$destination_rept = str_replace('\\','#',$destination_rept);
}*/
$destination_rept = str_replace(DIRECTORY_SEPARATOR,'#',$destination_rept);
//$_SESSION['courrier']['description'] = addslashes($_SESSION['courrier']['description']);
$conn->query("select DESCRIPTION, DOC_DATE, TYPE_ID, CUSTOM_T3, CUSTOM_T4, AUTHOR, CUSTOM_D1, CUSTOM_D2, DESTINATION, DEST_USER, IDENTIFIER from ".$_SESSION['tablechoice']." where RES_ID = ".$_SESSION['courrier']['attach_num']);
$res = $conn->fetch_object();
$desc = $res->DESCRIPTION;
$date = $res->DOC_DATE;
$type = $res->TYPE_ID;
$civ = $res->CUSTOM_T3;
$prenom = $res->CUSTOM_T4;
$author = $res->AUTHOR;
$date_ar = $res->CUSTOM_D1;
$date_lim = $res->CUSTOM_D2;
$dest = $res->DESTINATION;
$dest_user = $res->DEST_USER;
$identifier = $res->IDENTIFIER;
$size = filesize($path_tmp);
if($is_folder == 'Y')
{
$conn->query("INSERT INTO ".$_SESSION['tablechoice']."( TITLE, RELATION, DESCRIPTION, FORMAT, CREATION_DATE,DOC_DATE, DOCSERVER_ID, PATH, FILENAME, FILESIZE, STATUS, TYPIST, TYPE_ID, CUSTOM_T3, CUSTOM_T4, AUTHOR, CUSTOM_D1, CUSTOM_D2, DESTINATION, DEST_USER, SOURCE, IS_INGOING, IS_FOLDER, GID_ID )
VALUES
('".addslashes($title)."', '".$_SESSION['courrier']['attach_num']."','".addslashes($desc)."', '".strtoupper($the_ext)."', now() , '".$date."','".$docserver_id."','".$destination_rept."','".$file_destination_name.".".strtolower($the_ext)."',".$size.",'REP','".$_SESSION['user']['UserId']."','".addslashes($type)."','".addslashes($civ)."', '".addslashes($prenom)."', '".addslashes($author)."','".$date_ar."', '".$date_lim."' ,'".$dest."', '".$dest_user."', 'Local File', 'N', '".$is_folder."','R".date('Y').$_SESSION['gid_id']."' )");
update_gid($_SESSION['gid_id']);
}
else
{
$conn->query("INSERT INTO ".$_SESSION['tablechoice']."( TITLE, RELATION, DESCRIPTION, FORMAT, CREATION_DATE,DOC_DATE, DOCSERVER_ID, PATH, FILENAME, FILESIZE, STATUS, TYPIST, TYPE_ID, CUSTOM_T3, CUSTOM_T4, AUTHOR, CUSTOM_D1, CUSTOM_D2, DESTINATION, DEST_USER, SOURCE, IS_INGOING, IS_FOLDER, FOLDER_ID, GID_ID )
VALUES
('".addslashes($title)."', '".$_SESSION['courrier']['attach_num']."','".addslashes($desc)."', '".strtoupper($the_ext)."', now() , '".$date."','".$docserver_id."','".$destination_rept."','".$file_destination_name.".".strtolower($the_ext)."',".$size.",'REP','".$_SESSION['user']['UserId']."','".addslashes($type)."','".addslashes($civ)."', '".addslashes($prenom)."', '".addslashes($author)."','".$date_ar."', '".$date_lim."' ,'".$dest."', '".$dest_user."', 'Local File', 'N', '".$is_folder."', '".$folder_id."','R".date('Y').$_SESSION['gid_id']."' )");
update_gid($_SESSION['gid_id']);
if (($_SESSION['config']['mail_for_answer_by_index_file'] <> "false"))
{
$date = date("d-m-Y");
$mail_answer = "
"._ONE_ANSWER_JOINED." ".$_SESSION['courrier']['attach_num']."
"._HELLO.",
"._AN_ANSWER_HAS_BEEN_JOINED_TO_THE_DOC." ".$_SESSION['courrier']['attach_num']." "._ACTUALLY."...
"._ACCESS_MAIL_TO_PROCESS."
";
$conn->query("select MAIL from ".$_SESSION['tablename']['users']." where USER_ID = '".$dest_user."'");
$res = $conn->fetch_object();
$mail = $res->MAIL;
mail($mail, _ANSWER_JOINED_TITLE_MAIL, $mail_answer , "From: ".$_SESSION['config']['adminmail']."\nReply-To: ".$_SESSION['config']['adminmail']." \nContent-Type: text/html; charset=\"iso-8859-1\"\n");
}
}
$conn->query("update ".$_SESSION['tablechoice']." set STATUS = 'COU' where RES_ID = ".$_SESSION['courrier']['attach_num']);
if($_SESSION['history']['resadd'] == "true")
{
require_once("class_history.php");
$users = new history();
$users->add($_SESSION['tablechoice'], $_SESSION['courrier']['attach_num'],"ADD", _NEW_ANSWER_ADDED." : ".$identifier." (".$type.")");
}
$_SESSION['indexation'] = true;
$_SESSION['indexation_id'] = $_SESSION['courrier']['attach_num'];
if($is_folder =='N')
{
$id = $folder_id;
}
if ($_SESSION['courrier']['chk_date_limite'] == 'N')
{
$conn->query("UPDATE ".$_SESSION['tablechoice']." SET CUSTOM_D2=NULL, CUSTOM_D4=NULL, CUSTOM_D5=NULL WHERE RES_ID = ".$id);
}
//$_SESSION['courrier'] = array();
$_SESSION['courrier']['objet'] = '';
$_SESSION['courrier']['emetteur'] = '';
$_SESSION['courrier']['nom'] = '';
$_SESSION['courrier']['prenom'] = '';
$_SESSION['courrier']['civ'] ='';
$_SESSION['courrier']['emetteur_societe']= '';
$_SESSION['courrier']['emetteur_name']= '';
$_SESSION['courrier']['emetteur_prenom']= '';
$_SESSION['courrier']['emetteur_fonction']= '';
//$_SESSION['courrier']["service"] = '';
$_SESSION['courrier']['index_sender_liste'] = '';
$_SESSION['courrier']['sender_nom'] = '';
$_SESSION['courrier']['sender_prenom'] = '';
$_SESSION['courrier']['sender_civilite'] = '';
$_SESSION['courrier']['sender_society'] = '';
$_SESSION['courrier']['sender_function'] = '';
unset ($_SESSION['courrier']['entity']);
unset ($_SESSION['courrier']['id_expediteur']);
?>
//CFI
exit();
}
}
}
}
}
}