* @author Loic Vinet */ include("session.php"); if(file_exists($_SESSION['config']['lang'].'.php')) { include($_SESSION['config']['lang'].'.php'); } else { $_SESSION['error'] = "Language file missing...
"; } require("class_functions.php"); require_once("class_db.php"); require_once("class_letterbox.php"); $db = new dbquery(); $db->connect(); $connexion = new dbquery(); $connexion->connect(); $func = new functions(); $lb = new letterbox(); $services = array(); $users = array(); if(isset($_REQUEST['cancel'])) { $_SESSION['chosen_doc'] = array(); ?> query("select * from ".$_SESSION['tablename']['services']." where ID in (".$_SESSION['current_basket']['redirect_services'].") and ENABLED = 'Y'"); while($res = $db->fetch_object()) { array_push($services, array( 'ID' => $res->ID, 'LABEL' => $res->SERVICE)); } function cmp($a, $b) { return strcmp($a["LABEL"], $b["LABEL"]); } usort($services, "cmp"); } if(!empty($_SESSION['current_basket']['redirect_users']) && $_SESSION['current_basket']['can_redirect'] == 'Y') { $db2 = new dbquery(); $db2->connect(); $db->query("select DISTINCT uc.USER_ID, u.LASTNAME from ".$_SESSION['tablename']['usergroup_content']." uc, ".$_SESSION['tablename']['users']." u where GROUP_ID in (".$_SESSION['current_basket']['redirect_users'].") and u.USER_ID = uc.USER_ID and ENABLED = 'Y' order by u.LASTNAME asc"); //$db->show(); while($res = $db->fetch_object()) { $db2->query("select LASTNAME, FIRSTNAME from ".$_SESSION['tablename']['users']." where USER_ID = '".$res->USER_ID."' and USER_ID <> ''"); $res2 = $db2->fetch_object(); array_push($users, array( 'ID' => $res->USER_ID, 'NOM' => $res2->LASTNAME, "PRENOM" => $res2->FIRSTNAME, "SERVICE" => $res->DEPARTMENT)); } } if(isset($_REQUEST['valid1'])) { for($i=0;$i < count($_SESSION['chosen_doc']);$i++) { $db->query("update ".$_SESSION['current_basket']['table']." set DEST_USER = 'courrier' where RES_ID = ".$_SESSION['chosen_doc'][$i]); //$db->query("update ".$_SESSION['tablename']['listinstance']." set USER_ID = '' where RES_TABLE = '".$_SESSION['current_basket']['table']."' and res_id = '".$_SESSION['chosen_doc'][$i]."' and SEQUENCE = 1 "); if($_SESSION['history']['redirection'] == 'true') { require_once("class_history.php"); $hist = new history(); $hist->add($_SESSION['current_basket']['table'], $_SESSION['chosen_doc'][$i],"RED", "Redirection vers le service courrier"); } } $_SESSION['chosen_doc'] = array(); if($_REQUEST['process'] <> "true" || !isset($_REQUEST['process'])) { ?> query('UPDATE '.$_SESSION['ressources'][0]['tablename'].' SET '.$query.' , DESTINATION = "'.$_REQUEST['service'].'" WHERE RES_ID = '.$_SESSION['chosen_doc'][$i]); $connexion->query("update ".$_SESSION['ressources'][0]['tablename']." set destination = '".$_REQUEST['service']."' where is_folder = 'N' and folder_id = '".$_SESSION['chosen_doc'][$i]."'"); //$connexion->query("DELETE from ".$_SESSION['tablename']['listinstance']." where RES_ID = ".$_SESSION['chosen_doc'][$i]); if($_SESSION['is_diff']) { if($_SESSION['config']['enablechangenotif'] == "true") { $mail_trait = "
"._MAIL_TO_PROCESS.".

"._HELLO.",
"._NEED_PROCESS_LETTER." :


"; $mail_copie = "
"._MAIL_IN_COPY."

"._HELLO.",
"._YOU_HAVE_MAIL_COPY." :


\n\n"; } } //BEGIN : CREATE LISTINSTANCE foreach($_SESSION['diff'] as $d_user) $session_diff[] = $d_user['UserID']; //Retrieve the old primary destination user $connexion->query("SELECT USER_ID FROM ".$_SESSION['tablename']['listinstance']." WHERE res_id = ".$_SESSION['chosen_doc'][$i]." AND sequence = 1"); if( $result = $connexion->fetch_object() ) { //The primary destination user has changed if($result->USER_ID != $session_diff[0]) { $session_diff[] = $result->USER_ID; if( $_SESSION['config']['tag100_for_copy'] == true ) $connexion->query("UPDATE ".$_SESSION['tablename']['listinstance']." SET VIEWED = 100 WHERE res_id = ".$_SESSION['chosen_doc'][$i]." and user_id = '".$result->USER_ID."'"); } } //Add copy user in the mailing list $connexion->query("SELECT USER_ID FROM ".$_SESSION['tablename']['listinstance']." WHERE res_id = ".$_SESSION['chosen_doc'][$i]." AND sequence > 1 ORDER BY SEQUENCE ASC"); while( $result = $connexion->fetch_object() ) $session_diff[] = $result->USER_ID; //Remove duplicate values in the mailing list $session_diff = array_values(array_unique($session_diff)); //Store the old viewed $mem_viewed = array(); for($j=1;$j < (count($session_diff) + 1); $j++) { $connexion->query("SELECT USER_ID, VIEWED FROM ".$_SESSION['tablename']['listinstance']." WHERE res_id = ".$_SESSION['chosen_doc'][$i]." and user_id = '".$session_diff[$j-1]."'"); if($result = $connexion->fetch_object()) { $mem_viewed[$result->USER_ID] = $result->VIEWED; } } //Delete listInstance $connexion->query("delete from ".$_SESSION['tablename']['listinstance']." where res_id = ".$_SESSION['chosen_doc'][$i]); //Insert into listinstance the new mailing list with the values of viewed saved before for($j=1; $j < ( count($session_diff) + 1 ); $j++ ) { $viewed = 0; if( isset($mem_viewed[$session_diff[$j-1]] ) ) { $viewed = $mem_viewed[$session_diff[$j-1]]; } $connexion->query("INSERT INTO ".$_SESSION['tablename']['listinstance']." ( RES_TABLE, RES_ID, SEQUENCE, USER_ID, VIEWED ) VALUES ('".$_SESSION['ressources'][0]['tablename']."',".$_SESSION['chosen_doc'][$i].",".$j.",'".$session_diff[$j-1]."',".$viewed.")"); } //END : CREATE LISTINSTANCE $connexion->query("UPDATE ".$_SESSION['ressources'][0]['tablename']." SET FLAG_NOTIF = 'N' WHERE RES_ID = '".$_SESSION['chosen_doc'][$i]."' "); if($_SESSION['history']['redirection'] == 'true') { require_once("class_history.php"); $hist = new history(); $hist->add($_SESSION['current_basket']['table'], $_SESSION['chosen_doc'][$i],"RED",_LETTER_N.$_SESSION['chosen_doc'][$i].' '._REDIRECTED_TO." ".$_REQUEST['service']." "._WITH_DIFFUSION_LIST); } } } $_SESSION['chosen_doc'] = array(); if($_REQUEST['process'] <> "true" || !isset($_REQUEST['process'])) { ?> "; } } else { if(isset($_REQUEST['service']) && !empty($_REQUEST['service'])) { $tmp = array(); for($i=0;$i < count($_SESSION['chosen_doc']);$i++) { $db->query("update ".$_SESSION['current_basket']['table']." set DESTINATION = '".$_REQUEST['service']."', DEST_USER='' where RES_ID = ".$_SESSION['chosen_doc'][$i]); $db->query("update ".$_SESSION['current_basket']['table']." set destination = '".$_REQUEST['service']."' where is_folder = 'N' and folder_id = '".$_SESSION['chosen_doc'][$i]."'"); // $db->query("select RES_ID, IDENTIFIER from ".$_SESSION['current_basket']['table']." where RES_ID = ".$_SESSION['chosen_doc'][$i]); // $res = $db->fetch_object(); // array_push($tmp, $res->RES_ID); $db->query("update ".$_SESSION['tablename']['listinstance']." set USER_ID = '' where RES_TABLE = '".$_SESSION['current_basket']['table']."' and RES_ID = '".$_SESSION['chosen_doc'][$i]."' and SEQUENCE = 1 "); if($_SESSION['history']['redirection'] == 'true') { require_once("class_history.php"); $hist = new history(); $hist->add($_SESSION['current_basket']['table'], $_SESSION['chosen_doc'][$i],"RED",_LETTER_N.$_SESSION['chosen_doc'][$i].' '._REDIRECTED_TO." ".$_REQUEST['service']); } } $_SESSION['chosen_doc'] = array(); if($_REQUEST['process'] <> "true" || !isset($_REQUEST['process'])) { ?> "; } } } if(isset($_REQUEST['valid3']) ) { if(isset($_REQUEST['user']) && !empty($_REQUEST['user'])) { for($i=0;$i < count($_SESSION['chosen_doc']);$i++) { $tmp = array(); //update dest user of document $db->query("update ".$_SESSION['current_basket']['table']." set DEST_USER = '".$_REQUEST['user']."' where RES_ID = ".$_SESSION['chosen_doc'][$i]); //BEGIN : CREATE LISTINSTANCE $session_diff=array(); //Retrieve the old primary destination user $connexion->query("SELECT USER_ID FROM ".$_SESSION['tablename']['listinstance']." WHERE res_id = ".$_SESSION['chosen_doc'][$i]." AND sequence = 1"); if( $result = $connexion->fetch_object() ) { //The primary destination user has changed if($result->USER_ID != trim($_REQUEST['user']) ) { $session_diff[] = trim($_REQUEST['user']); $session_diff[] = $result->USER_ID; if( $_SESSION['config']['tag100_for_copy'] == true ) $connexion->query("UPDATE ".$_SESSION['tablename']['listinstance']." SET VIEWED = 100 WHERE res_id = ".$_SESSION['chosen_doc'][$i]." and user_id = '".$result->USER_ID."'"); } else { $session_diff[] = $result->USER_ID; } } //Add copy user in the mailing list $connexion->query("SELECT USER_ID FROM ".$_SESSION['tablename']['listinstance']." WHERE res_id = ".$_SESSION['chosen_doc'][$i]." AND sequence > 1 ORDER BY SEQUENCE ASC"); while( $result = $connexion->fetch_object() ) $session_diff[] = $result->USER_ID; //Remove duplicate values in the mailing list $session_diff = array_values(array_unique($session_diff)); //Store the old viewed values $mem_viewed = array(); for($j=1;$j < (count($session_diff) + 1); $j++) { $connexion->query("SELECT USER_ID, VIEWED FROM ".$_SESSION['tablename']['listinstance']." WHERE res_id = ".$_SESSION['chosen_doc'][$i]." and user_id = '".$session_diff[$j-1]."'"); if($result = $connexion->fetch_object()) { $mem_viewed[$result->USER_ID] = $result->VIEWED; } } //Delete listInstance $connexion->query("delete from ".$_SESSION['tablename']['listinstance']." where res_id = ".$_SESSION['chosen_doc'][$i]); //Insert into listinstance the new mailing list with the values of viewed saved before for($j=1; $j < ( count($session_diff) + 1 ); $j++ ) { $viewed = 0; if( isset($mem_viewed[$session_diff[$j-1]] ) ) { $viewed = $mem_viewed[$session_diff[$j-1]]; } $connexion->query("INSERT INTO ".$_SESSION['tablename']['listinstance']." ( RES_TABLE, RES_ID, SEQUENCE, USER_ID, VIEWED ) VALUES ('".$_SESSION['ressources'][0]['tablename']."',".$_SESSION['chosen_doc'][$i].",".$j.",'".$session_diff[$j-1]."',".$viewed.")"); } //END : CREATE LISTINSTANCE if($_SESSION['history']['redirection'] == 'true') { require_once("class_history.php"); $hist = new history(); $hist->add($_SESSION['current_basket']['table'], $_SESSION['chosen_doc'][$i],"RED",_LETTER_N.$_SESSION['chosen_doc'][$i].' '._REDIRECTED_TO." ".$_REQUEST['user']); } } $_SESSION['chosen_doc'] = array(); if($_REQUEST['process'] <> "true" || !isset($_REQUEST['process'])) { ?> "; } } ?> <?php echo $_SESSION['config']['applicationname']; ?>






.