diff --git a/apps/maarch_entreprise/class/class_indexing_searching_app_Abstract.php b/apps/maarch_entreprise/class/class_indexing_searching_app_Abstract.php index 9d5f69bf6c08434c0d98c7c836be4baefeb14f4a..d23d741134c1edfbe803fe8cf66b3de99e7cbd2d 100755 --- a/apps/maarch_entreprise/class/class_indexing_searching_app_Abstract.php +++ b/apps/maarch_entreprise/class/class_indexing_searching_app_Abstract.php @@ -1,127 +1,87 @@ <?php - -/* - * - * Copyright 2005-2015 Maarch - * - * This file is part of Maarch Framework. - * - * Maarch Framework is free software: you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation, either version 3 of the License, or - * (at your option) any later version. - * - * Maarch Framework is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with Maarch Framework. If not, see <http://www.gnu.org/licenses/>. - */ - /** -* modules tools Class for workflow -* -* Contains all the functions to load modules tables for workflow +* Copyright Maarch since 2008 under licence GPLv3. +* See LICENCE.txt file at the root folder for more details. +* This file is part of Maarch software. + * -* @package maarch -* @version 3.0 -* @since 10/2005 -* @license GPL v3 -* @author Laurent Giovannoni <dev@maarch.org> +* @brief class_indexing_searching_app_Apstract * +* @author dev <dev@maarch.org> +* @ingroup apps */ - abstract class indexing_searching_app_Abstract extends Database { - function __construct() + public function __construct() { parent::__construct(); } public function is_filetype_allowed($ext) { - if (file_exists($_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR."xml".DIRECTORY_SEPARATOR."extensions.xml")) - { - $path = $_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR."xml".DIRECTORY_SEPARATOR."extensions.xml"; - } - else - { - $path = 'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR."xml".DIRECTORY_SEPARATOR."extensions.xml"; + if (file_exists($_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'xml'.DIRECTORY_SEPARATOR.'extensions.xml')) { + $path = $_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'xml'.DIRECTORY_SEPARATOR.'extensions.xml'; + } else { + $path = 'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'xml'.DIRECTORY_SEPARATOR.'extensions.xml'; } $xmlconfig = simplexml_load_file($path); $ext_list = array(); $i = 0; - foreach($xmlconfig->FORMAT as $FORMAT) - { - $ext_list[$i] = array("name" => (string) $FORMAT->name, "mime" => (string) $FORMAT->mime); - $i++; + foreach ($xmlconfig->FORMAT as $FORMAT) { + $ext_list[$i] = array('name' => (string) $FORMAT->name, 'mime' => (string) $FORMAT->mime); + ++$i; } $type_state = false; - for ($i=0;$i<count($ext_list);$i++) - { - if ($ext_list[$i]['name'] == strtoupper($ext)) - { + for ($i = 0; $i < count($ext_list); ++$i) { + if ($ext_list[$i]['name'] == strtoupper($ext)) { $mime_type = $ext_list[$i]['mime']; $type_state = true; - // $i = count($ext_list); + // $i = count($ext_list); break; } } + return $type_state; } public function show_index_frame($ext) { - if (empty($ext)) - { + if (empty($ext)) { return false; } - if (file_exists($_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR."xml".DIRECTORY_SEPARATOR."extensions.xml")) - { - $path = $_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR."xml".DIRECTORY_SEPARATOR."extensions.xml"; - } - else - { - $path = 'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR."xml".DIRECTORY_SEPARATOR."extensions.xml"; + if (file_exists($_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'xml'.DIRECTORY_SEPARATOR.'extensions.xml')) { + $path = $_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'xml'.DIRECTORY_SEPARATOR.'extensions.xml'; + } else { + $path = 'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'xml'.DIRECTORY_SEPARATOR.'extensions.xml'; } $xmlconfig = simplexml_load_file($path); - foreach($xmlconfig->FORMAT as $FORMAT) - { - if (strtoupper($ext) == (string) $FORMAT->name) - { - if ( $FORMAT->index_frame_show == "true") - { + foreach ($xmlconfig->FORMAT as $FORMAT) { + if (strtoupper($ext) == (string) $FORMAT->name) { + if ($FORMAT->index_frame_show == 'true') { return true; - } - else - { + } else { return false; } } } + return false; } + public function filetypes_showed_indexation() { - if (file_exists($_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR."xml".DIRECTORY_SEPARATOR."extensions.xml")) - { - $path = $_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR."xml".DIRECTORY_SEPARATOR."extensions.xml"; - } - else - { - $path = 'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR."xml".DIRECTORY_SEPARATOR."extensions.xml"; + if (file_exists($_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'xml'.DIRECTORY_SEPARATOR.'extensions.xml')) { + $path = $_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'xml'.DIRECTORY_SEPARATOR.'extensions.xml'; + } else { + $path = 'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'xml'.DIRECTORY_SEPARATOR.'extensions.xml'; } $xmlconfig = simplexml_load_file($path); $ext_list = array(); - foreach($xmlconfig->FORMAT as $FORMAT) - { - if ((string) $FORMAT->index_frame_show == "true") - { - array_push($ext_list,(string) $FORMAT->name); + foreach ($xmlconfig->FORMAT as $FORMAT) { + if ((string) $FORMAT->index_frame_show == 'true') { + array_push($ext_list, (string) $FORMAT->name); } } @@ -130,42 +90,38 @@ abstract class indexing_searching_app_Abstract extends Database public function get_mime_type($ext) { - if (file_exists($_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR."xml".DIRECTORY_SEPARATOR."extensions.xml")) - { - $path = $_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR."xml".DIRECTORY_SEPARATOR."extensions.xml"; - } - else - { - $path = 'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR."xml".DIRECTORY_SEPARATOR."extensions.xml"; + if (file_exists($_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'xml'.DIRECTORY_SEPARATOR.'extensions.xml')) { + $path = $_SESSION['config']['corepath'].'custom'.DIRECTORY_SEPARATOR.$_SESSION['custom_override_id'].DIRECTORY_SEPARATOR.'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'xml'.DIRECTORY_SEPARATOR.'extensions.xml'; + } else { + $path = 'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'xml'.DIRECTORY_SEPARATOR.'extensions.xml'; } $xmlconfig = simplexml_load_file($path); $ext_list = array(); $i = 0; - foreach($xmlconfig->FORMAT as $FORMAT) - { - $ext_list[$i] = array("name" => (string) $FORMAT->name, "mime" => (string) $FORMAT->mime); - $i++; + foreach ($xmlconfig->FORMAT as $FORMAT) { + $ext_list[$i] = array('name' => (string) $FORMAT->name, 'mime' => (string) $FORMAT->mime); + ++$i; } - for ($i=0;$i<count($ext_list);$i++) - { - if ($ext_list[$i]['name'] == strtoupper($ext)) - { + for ($i = 0; $i < count($ext_list); ++$i) { + if ($ext_list[$i]['name'] == strtoupper($ext)) { $mime_type = $ext_list[$i]['mime']; $type_state = true; $i = count($ext_list); + return $mime_type; break; } } + return false; } - public function update_mail($post, $typeform, $id_to_update, $coll_id) { - require_once("core".DIRECTORY_SEPARATOR."class".DIRECTORY_SEPARATOR."class_request.php"); - require_once("core".DIRECTORY_SEPARATOR."class".DIRECTORY_SEPARATOR."class_history.php"); - require_once("core".DIRECTORY_SEPARATOR."class".DIRECTORY_SEPARATOR."class_security.php"); + require_once 'core'.DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_request.php'; + require_once 'core'.DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_history.php'; + require_once 'core'.DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_security.php'; + $hist = new history(); $func = new functions(); $sec = new security(); @@ -179,268 +135,244 @@ abstract class indexing_searching_app_Abstract extends Database $view = $sec->retrieve_view_from_coll_id($coll_id); $ind_coll = $sec->get_ind_collection($coll_id); $table_ext = $_SESSION['collections'][$ind_coll]['extensions'][0]; - if (!$table) - { + if (!$table) { $_SESSION['error'] .= _COLL_HAS_NO_TABLE; } - if (!empty($_SESSION['error'])) - { + if (!empty($_SESSION['error'])) { //$_SESSION['error_page'] = $_SESSION['error']; $error = $_SESSION['error']; - $_SESSION['error']= ''; - ?> + $_SESSION['error'] = ''; ?> <script type="text/javascript"> // window.opener.reload(); var error_div = $('main_error'); if (error_div) { - error_div.innerHTML = '<?php functions::xecho($error);?>'; + error_div.innerHTML = '<?php functions::xecho($error); ?>'; } </script> <?php exit(); } - $where = "res_id = ? "; + $where = 'res_id = ? '; $arrayPDO = array($id_to_update); - $stmt = $db->query("SELECT category_id FROM ".$view." WHERE res_id = ?", array($id_to_update)); + $stmt = $db->query('SELECT category_id FROM '.$view.' WHERE res_id = ?', array($id_to_update)); $res = $stmt->fetchObject(); $cat_id = $res->category_id; - if (empty($cat_id) || !isset($cat_id)) - { + if (empty($cat_id) || !isset($cat_id)) { $cat_id = 'empty'; } + $checkEmptyMultiContact = false; // Simple cases - foreach(array_keys($post) as $key) - { - if ($_ENV['categories'][$cat_id][$key]['modify'] == true) - { - if ($_ENV['categories'][$cat_id][$key]['mandatory'] == true && $post[$key] == '' ) - { - $_SESSION['error'] .= $_ENV['categories'][$cat_id][$key]['label'].' '._IS_EMPTY; + foreach (array_keys($post) as $key) { + //save_contact + if (isset($_SESSION['adresses']) && !empty($_SESSION['adresses']['contactid'])) { + $db->query('DELETE FROM contacts_res WHERE res_id = ? and mode = ?', array($id_to_update, 'multi')); + foreach ($_SESSION['adresses']['contactid'] as $contact_it => $value) { + $db->query('INSERT INTO contacts_res(res_id,contact_id,address_id,mode,coll_id) VALUES(?,?,?,?,?)', array($id_to_update, $_SESSION['adresses']['contactid'][$contact_it], $_SESSION['adresses']['addressid'][$contact_it], 'multi', 'letterbox_coll')); } - if ($_ENV['categories'][$cat_id][$key]['type_form'] == 'date' && !empty($post[$key]) && preg_match($_ENV['date_pattern'],$post[$key])== 0) - { - $_SESSION['error'] .= $_ENV['categories'][$cat_id][$key]['label']." "._WRONG_FORMAT; - } - else if ($_ENV['categories'][$cat_id][$key]['type_field'] == 'date' && $_ENV['categories'][$cat_id][$key]['table'] <> 'none' && !empty($post[$key])) - { - if ($_ENV['categories'][$cat_id][$key]['table'] == 'res') - { - array_push($data_res, array('column' => $key, 'value' => $func->format_date_db($post[$key]), 'type' => "date")); + } else { + if ($key == 'contactid' && !empty($post[$key])) { + if (!empty($post['contact'])) { + $catContact = explode('_', $post['contact_type']); + if (is_numeric($post[$key])) { + array_push($data_ext, array('column' => $catContact[0].'_contact_id', 'value' => $post[$key], 'type' => 'string')); + array_push($data_ext, array('column' => $catContact[0].'_user_id', 'value' => null, 'type' => 'string')); + } else { + array_push($data_ext, array('column' => $catContact[0].'_user_id', 'value' => $post[$key], 'type' => 'string')); + array_push($data_ext, array('column' => $catContact[0].'_contact_id', 'value' => null, 'type' => 'string')); + } + } else { + $_SESSION['error'] .= $_ENV['categories'][$cat_id]['other_cases']['contact']['label'].' '._IS_EMPTY; } - else if ($_ENV['categories'][$cat_id][$key]['table'] == 'coll_ext') - { - array_push($data_ext, array('column' => $key, 'value' => $func->format_date_db($post[$key]), 'type' => "date")); + } + if ($key == 'addressid') { + if (empty(trim($post[$key]))) { + $post[$key] = null; } + array_push($data_ext, array('column' => 'address_id', 'value' => $post[$key], 'type' => 'string')); } - if ($_ENV['categories'][$cat_id][$key]['type_form'] == 'integer' && preg_match("/^[0-9]+$/",$post[$key])== 0) - { - $_SESSION['error'] .= $_ENV['categories'][$cat_id][$key]['label']." "._WRONG_FORMAT; + } + if ($_ENV['categories'][$cat_id][$key]['modify'] == true) { + if ((empty($_SESSION['adresses']['contactid']) || !isset($_SESSION['adresses']['contactid'])) && $checkEmptyMultiContact == false && !in_array($post['contact_type'], ['dest_contact_id', 'exp_contact_id', 'dest_user_id', 'exp_user_id'])) { + $_SESSION['error'] .= $_ENV['categories'][$cat_id]['other_cases']['contact']['label'].' '._IS_EMPTY; + $checkEmptyMultiContact = true; } - else if ($_ENV['categories'][$cat_id][$key]['type_field'] == 'integer' && $_ENV['categories'][$cat_id][$key]['table'] <> 'none' && $post[$key] != '') - { - if ($_ENV['categories'][$cat_id][$key]['table'] == 'res') - { - array_push($data_res, array('column' => $key, 'value' => $post[$key], 'type' => "integer")); + + if ($_ENV['categories'][$cat_id][$key]['mandatory'] == true && $post[$key] == '') { + $_SESSION['error'] .= $_ENV['categories'][$cat_id][$key]['label'].' '._IS_EMPTY; + } + if ($_ENV['categories'][$cat_id][$key]['type_form'] == 'date' && !empty($post[$key]) && preg_match($_ENV['date_pattern'], $post[$key]) == 0) { + $_SESSION['error'] .= $_ENV['categories'][$cat_id][$key]['label'].' '._WRONG_FORMAT; + } elseif ($_ENV['categories'][$cat_id][$key]['type_field'] == 'date' && $_ENV['categories'][$cat_id][$key]['table'] != 'none' && !empty($post[$key])) { + if ($_ENV['categories'][$cat_id][$key]['table'] == 'res') { + array_push($data_res, array('column' => $key, 'value' => $func->format_date_db($post[$key]), 'type' => 'date')); + } elseif ($_ENV['categories'][$cat_id][$key]['table'] == 'coll_ext') { + array_push($data_ext, array('column' => $key, 'value' => $func->format_date_db($post[$key]), 'type' => 'date')); } - else if ($_ENV['categories'][$cat_id][$key]['table'] == 'coll_ext') - { - array_push($data_ext, array('column' => $key, 'value' => $post[$key], 'type' => "integer")); + } + if ($_ENV['categories'][$cat_id][$key]['type_form'] == 'integer' && preg_match('/^[0-9]+$/', $post[$key]) == 0) { + $_SESSION['error'] .= $_ENV['categories'][$cat_id][$key]['label'].' '._WRONG_FORMAT; + } elseif ($_ENV['categories'][$cat_id][$key]['type_field'] == 'integer' && $_ENV['categories'][$cat_id][$key]['table'] != 'none' && $post[$key] != '') { + if ($_ENV['categories'][$cat_id][$key]['table'] == 'res') { + array_push($data_res, array('column' => $key, 'value' => $post[$key], 'type' => 'integer')); + } elseif ($_ENV['categories'][$cat_id][$key]['table'] == 'coll_ext') { + array_push($data_ext, array('column' => $key, 'value' => $post[$key], 'type' => 'integer')); } } - if ($_ENV['categories'][$cat_id][$key]['type_form'] == 'radio' && !empty($post[$key]) && !in_array($post[$key], $_ENV['categories'][$cat_id][$key]['values'])) - { - $_SESSION['error'] .= $_ENV['categories'][$cat_id][$key]['label']." "._WRONG_FORMAT; + if ($_ENV['categories'][$cat_id][$key]['type_form'] == 'radio' && !empty($post[$key]) && !in_array($post[$key], $_ENV['categories'][$cat_id][$key]['values'])) { + $_SESSION['error'] .= $_ENV['categories'][$cat_id][$key]['label'].' '._WRONG_FORMAT; } - if ($_ENV['categories'][$cat_id][$key]['type_field'] == 'string' && $_ENV['categories'][$cat_id][$key]['table'] <> 'none' && !empty($post[$key])) - { - if ($_ENV['categories'][$cat_id][$key]['table'] == 'res') - { - array_push($data_res, array('column' => $key, 'value' => $post[$key], 'type' => "string")); - } - else if ($_ENV['categories'][$cat_id][$key]['table'] == 'coll_ext') - { - array_push($data_ext, array('column' => $key, 'value' => $post[$key], 'type' => "string")); + if ($_ENV['categories'][$cat_id][$key]['type_field'] == 'string' && $_ENV['categories'][$cat_id][$key]['table'] != 'none') { + if ($_ENV['categories'][$cat_id][$key]['table'] == 'res') { + array_push($data_res, array('column' => $key, 'value' => $post[$key], 'type' => 'string')); + } elseif ($_ENV['categories'][$cat_id][$key]['table'] == 'coll_ext') { + array_push($data_ext, array('column' => $key, 'value' => $post[$key], 'type' => 'string')); } } } } - require_once('apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_types.php'); + require_once 'apps'.DIRECTORY_SEPARATOR.$_SESSION['config']['app_id'].DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_types.php'; $type = new types(); - $type_id = $post['type_id']; - $indexes = $type->get_indexes($type_id,$coll_id, 'minimal'); + $type_id = $post['type_id']; + $indexes = $type->get_indexes($type_id, $coll_id, 'minimal'); $val_indexes = array(); - for ($i=0; $i<count($indexes);$i++) - { + for ($i = 0; $i < count($indexes); ++$i) { $val_indexes[$indexes[$i]] = $post[$indexes[$i]]; } - $test_type = $type->check_indexes($type_id, $coll_id,$val_indexes ); - if ($test_type) - { + $test_type = $type->check_indexes($type_id, $coll_id, $val_indexes); + if ($test_type) { $data_res = $type->fill_data_array($type_id, $coll_id, $val_indexes, $data_res); } ///////////////////////// Other cases //process date if ( - isset($_ENV['categories'][$cat_id]['other_cases']['process_limit_date']) - && !empty($post['process_limit_date']) - && preg_match($_ENV['date_pattern'], $post['process_limit_date'])== 0) - { - $_SESSION['error'] .= $_ENV['categories'][$cat_id]['other_cases']['process_limit_date']['label']." "._WRONG_FORMAT; + isset($_ENV['categories'][$cat_id]['other_cases']['process_limit_date']) + && !empty($post['process_limit_date']) + && preg_match($_ENV['date_pattern'], $post['process_limit_date']) == 0) { + $_SESSION['error'] .= $_ENV['categories'][$cat_id]['other_cases']['process_limit_date']['label'].' '._WRONG_FORMAT; } if (!empty($post['process_limit_date'])) { $processLimitDate = new datetime($post['process_limit_date']); - $processLimitDate = date_add($processLimitDate,date_interval_create_from_date_string('23 hours + 59 minutes + 59 seconds')); - $processLimitDate = (array) $processLimitDate; - - array_push( - $data_ext, - array( - 'column' => 'process_limit_date', - 'value' => $func->format_date_db($processLimitDate['date'],'true','','true'), - 'type' => "date" - ) - ); - } - else - { - array_push( - $data_ext, - array( - 'column' => 'process_limit_date', - 'value' => null, - 'type' => "date" - ) - ); - } - - if ($core->is_module_loaded('folder')) - { - - $stmt = $db->query("SELECT folders_system_id FROM ".$table." WHERE res_id = ?", array($id_to_update)); + $processLimitDate = date_add($processLimitDate, date_interval_create_from_date_string('23 hours + 59 minutes + 59 seconds')); + $processLimitDate = (array) $processLimitDate; + + array_push( + $data_ext, + array( + 'column' => 'process_limit_date', + 'value' => $func->format_date_db($processLimitDate['date'], 'true', '', 'true'), + 'type' => 'date', + ) + ); + } else { + array_push( + $data_ext, + array( + 'column' => 'process_limit_date', + 'value' => null, + 'type' => 'date', + ) + ); + } + + if ($core->is_module_loaded('folder')) { + $stmt = $db->query('SELECT folders_system_id FROM '.$table.' WHERE res_id = ?', array($id_to_update)); $res = $stmt->fetchObject(); $old_folder_id = $res->folders_system_id; $market = ''; - if (isset($post['folder'])) - { + if (isset($post['folder'])) { $market = $post['folder']; } $project_id = ''; $market_id = ''; - if (isset($_ENV['categories'][$cat_id]['other_cases']['folder']) && $_ENV['categories'][$cat_id]['other_cases']['folder']['mandatory'] == true ) - { - if (empty($market) ) - { + if (isset($_ENV['categories'][$cat_id]['other_cases']['folder']) && $_ENV['categories'][$cat_id]['other_cases']['folder']['mandatory'] == true) { + if (empty($market)) { $_SESSION['error'] .= $_ENV['categories'][$cat_id]['other_cases']['folder']['label'].' '._IS_EMPTY; } } - if (!empty($market) ) - { - if (!preg_match('/\([0-9]+\)$/', $market)) - { - $_SESSION['error'] .= $_ENV['categories'][$cat_id]['other_cases']['folder']['label']." "._WRONG_FORMAT.". "._USE_AUTOCOMPLETION; + if (!empty($market)) { + if (!preg_match('/\([0-9]+\)$/', $market)) { + $_SESSION['error'] .= $_ENV['categories'][$cat_id]['other_cases']['folder']['label'].' '._WRONG_FORMAT.'. '._USE_AUTOCOMPLETION; } else { - $market_id = str_replace(')', '', substr($market, strrpos($market,'(')+1)); - $stmt = $db->query("SELECT folders_system_id FROM ".$_SESSION['tablename']['fold_folders']." WHERE folders_system_id = ?", array($market_id)); - if ($stmt->rowCount() == 0) - { + $market_id = str_replace(')', '', substr($market, strrpos($market, '(') + 1)); + $stmt = $db->query('SELECT folders_system_id FROM '.$_SESSION['tablename']['fold_folders'].' WHERE folders_system_id = ?', array($market_id)); + if ($stmt->rowCount() == 0) { $_SESSION['error'] .= _MARKET.' '.$market_id.' '._UNKNOWN; } } } $project = ''; - if (isset($post['project'])) - { + if (isset($post['project'])) { $project = $post['project']; } - if (isset($_ENV['categories'][$cat_id]['other_cases']['project']) && $_ENV['categories'][$cat_id]['other_cases']['project']['mandatory'] == true) - { - if (empty($project)) - { + if (isset($_ENV['categories'][$cat_id]['other_cases']['project']) && $_ENV['categories'][$cat_id]['other_cases']['project']['mandatory'] == true) { + if (empty($project)) { $_SESSION['error'] .= $_ENV['categories'][$cat_id]['other_cases']['project']['label'].' '._IS_EMPTY; } } - if (!empty($project) ) - { - if (!preg_match('/\([0-9]+\)$/', $project)) - { - $_SESSION['error'] .= $_ENV['categories'][$cat_id]['other_cases']['project']['label']." "._WRONG_FORMAT; + if (!empty($project)) { + if (!preg_match('/\([0-9]+\)$/', $project)) { + $_SESSION['error'] .= $_ENV['categories'][$cat_id]['other_cases']['project']['label'].' '._WRONG_FORMAT; } - $project_id = str_replace(')', '', substr($project, strrpos($project,'(')+1)); - $stmt = $db->query("SELECT folders_system_id FROM ".$_SESSION['tablename']['fold_folders']." WHERE folders_system_id = ?", array($project_id)); - if ($stmt->rowCount() == 0) - { + $project_id = str_replace(')', '', substr($project, strrpos($project, '(') + 1)); + $stmt = $db->query('SELECT folders_system_id FROM '.$_SESSION['tablename']['fold_folders'].' WHERE folders_system_id = ?', array($project_id)); + if ($stmt->rowCount() == 0) { $_SESSION['error'] .= _MARKET.' '.$project_id.' '._UNKNOWN; } } - if (!empty($project_id) && !empty($market_id)) - { - $stmt = $db->query("SELECT folders_system_id FROM ".$_SESSION['tablename']['fold_folders']." WHERE folders_system_id = ? and parent_id = ?", array($market_id, $project_id)); - if ($stmt->rowCount() == 0) - { + if (!empty($project_id) && !empty($market_id)) { + $stmt = $db->query('SELECT folders_system_id FROM '.$_SESSION['tablename']['fold_folders'].' WHERE folders_system_id = ? and parent_id = ?', array($market_id, $project_id)); + if ($stmt->rowCount() == 0) { $_SESSION['error'] .= _INCOMPATIBILITY_MARKET_PROJECT; } } - if (empty($_SESSION['error'])) - { + if (empty($_SESSION['error'])) { $folder_id = ''; - if (!empty($market_id)) - { + if (!empty($market_id)) { $folder_id = $market_id; - } - else if (!empty($project_id)) - { + } elseif (!empty($project_id)) { $folder_id = $project_id; } - if (!empty($folder_id)) - { - array_push($data_res, array('column' => 'folders_system_id', 'value' => $folder_id, 'type' => "integer")); - } - else - { - array_push($data_res, array('column' => 'folders_system_id', 'value' => 'NULL', 'type' => "integer")); + if (!empty($folder_id)) { + array_push($data_res, array('column' => 'folders_system_id', 'value' => $folder_id, 'type' => 'integer')); + } else { + array_push($data_res, array('column' => 'folders_system_id', 'value' => 'NULL', 'type' => 'integer')); } - if ($folder_id <> $old_folder_id && $_SESSION['history']['folderup']) - { - require_once("core".DIRECTORY_SEPARATOR."class".DIRECTORY_SEPARATOR."class_history.php"); + if ($folder_id != $old_folder_id && $_SESSION['history']['folderup']) { + require_once 'core'.DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_history.php'; $hist = new history(); - $hist->add($_SESSION['tablename']['fold_folders'], $folder_id, "UP",'folderup', _DOC_NUM.$id_to_update._ADDED_TO_FOLDER, $_SESSION['config']['databasetype'],'apps'); - if (isset($old_folder_id) && !empty($old_folder_id)) - { - $hist->add($_SESSION['tablename']['fold_folders'], $old_folder_id, "UP", 'folderup',_DOC_NUM.$id_to_update._DELETED_FROM_FOLDER, $_SESSION['config']['databasetype'],'apps'); + $hist->add($_SESSION['tablename']['fold_folders'], $folder_id, 'UP', 'folderup', _DOC_NUM.$id_to_update._ADDED_TO_FOLDER, $_SESSION['config']['databasetype'], 'apps'); + if (isset($old_folder_id) && !empty($old_folder_id)) { + $hist->add($_SESSION['tablename']['fold_folders'], $old_folder_id, 'UP', 'folderup', _DOC_NUM.$id_to_update._DELETED_FROM_FOLDER, $_SESSION['config']['databasetype'], 'apps'); } } } } - if ($core->is_module_loaded('entities') && $_SESSION['details']['diff_list']['key_value'] == md5($res_id) ) - { - //Mise a jour du dest_user :: seulement sur demande - if (!empty($_SESSION['details']['diff_list']['dest']['user_id'])){ + if ($core->is_module_loaded('entities') && $_SESSION['details']['diff_list']['key_value'] == md5($res_id)) { + //Mise a jour du dest_user :: seulement sur demande + if (!empty($_SESSION['details']['diff_list']['dest']['user_id'])) { $tmp_new_user_id = $_SESSION['details']['diff_list']['dest']['user_id']; - array_push($data_res, array('column' => 'dest_user', 'value' => $tmp_new_user_id, 'type' => "string")); + array_push($data_res, array('column' => 'dest_user', 'value' => $tmp_new_user_id, 'type' => 'string')); unset($_SESSION['details']['diff_list']['key_value']); } } - //$this->show_array($post); - if (empty($_SESSION['error'])) - { + if (empty($_SESSION['error'])) { $type->inits_opt_indexes($coll_id, $id_to_update); //$request->show_array($data_res); //exit(); $request->PDOupdate($table, $data_res, $where, $arrayPDO, $_SESSION['config']['databasetype']); - if (count($data_ext) > 0) - { + if (count($data_ext) > 0) { $request->PDOupdate($table_ext, $data_ext, $where, $arrayPDO, $_SESSION['config']['databasetype']); } - $_SESSION['info'] = _INDEX_UPDATED." (".strtolower(_NUM).$id_to_update.")"; + $_SESSION['info'] = _INDEX_UPDATED.' ('.strtolower(_NUM).$id_to_update.')'; //$hist->add($table, $id_to_update, "UP", $_SESSION['error'], $_SESSION['config']['databasetype'],'apps'); $hist->add( @@ -452,97 +384,71 @@ abstract class indexing_searching_app_Abstract extends Database $_SESSION['config']['databasetype'], 'apps' ); - + $_SESSION['info'] = _INDEX_UPDATED; - } else { - $_SESSION['info'] = $_SESSION['error']; - $_SESSION['error'] = ""; } - //$_SESSION['error_page'] = $_SESSION['error']; - //$error = $_SESSION['error']; - // $_SESSION['error']= ''; -/* ?> - <script type="text/javascript"> - //window.opener.reload(); - var error_div = $('main_error'); - if (error_div) - { - error_div.innerHTML = '<?php functions::xecho($error);?>'; - } - </script> - <?php*/ } - - public function delete_doc( $id_to_delete, $coll_id) + public function delete_doc($id_to_delete, $coll_id) { - require_once("core".DIRECTORY_SEPARATOR."class".DIRECTORY_SEPARATOR."class_security.php"); + require_once 'core'.DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_security.php'; $sec = new security(); $table = $sec->retrieve_table_from_coll($coll_id); - if (!$table) - { + if (!$table) { $_SESSION['error'] .= _COLL_HAS_NO_TABLE; } - if (!empty($_SESSION['error'])) - { + if (!empty($_SESSION['error'])) { //$_SESSION['error_page'] = $_SESSION['error']; ?> <script type="text/javascript"> window.opener.reload(); </script> <?php - } - else - { - require_once("core".DIRECTORY_SEPARATOR."class".DIRECTORY_SEPARATOR."class_request.php"); + } else { + require_once 'core'.DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_request.php'; $request = new request(); $data = array(); array_push($data, array('column' => 'status', 'value' => 'DEL', 'type' => 'string')); - $where = "res_id = ? "; + $where = 'res_id = ? '; $arrayPDO = array($id_to_delete); $request->PDOupdate($table, $data, $where, $arrayPDO, $_SESSION['config']['databasetype']); - $_SESSION['error'] = _DOC_DELETED." ("._NUM." : ".$id_to_delete.")"; - if ($_SESSION['history']['resdel']) - { - require_once("core".DIRECTORY_SEPARATOR."class".DIRECTORY_SEPARATOR."class_history.php"); + $_SESSION['error'] = _DOC_DELETED.' ('._NUM.' : '.$id_to_delete.')'; + if ($_SESSION['history']['resdel']) { + require_once 'core'.DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_history.php'; $hist = new history(); - $hist->add($table, $id_to_delete, "DEL", 'resdel', $_SESSION['error'], $_SESSION['config']['databasetype'],'indexing_searching'); + $hist->add($table, $id_to_delete, 'DEL', 'resdel', $_SESSION['error'], $_SESSION['config']['databasetype'], 'indexing_searching'); } } } public function update_doc_status($idDoc, $coll_id, $status) { - require_once("core".DIRECTORY_SEPARATOR."class".DIRECTORY_SEPARATOR."class_security.php"); + require_once 'core'.DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_security.php'; $sec = new security(); $table = $sec->retrieve_table_from_coll($coll_id); - if (!$table) - { + if (!$table) { $_SESSION['error'] .= _COLL_HAS_NO_TABLE; } - if (!empty($_SESSION['error'])) - { + if (!empty($_SESSION['error'])) { ?> <script type="text/javascript"> window.opener.reload(); </script> <?php - } - else - { - require_once("core".DIRECTORY_SEPARATOR."class".DIRECTORY_SEPARATOR."class_request.php"); + } else { + require_once 'core'.DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_request.php'; $request = new request(); $data = array(); array_push($data, array('column' => 'status', 'value' => $status, 'type' => 'string')); - $where = "res_id = ?"; + $where = 'res_id = ?'; $arrayPDO = array($idDoc); $request->PDOupdate($table, $data, $where, $arrayPDO, $_SESSION['config']['databasetype']); //$_SESSION['info'] = _UPDATE_DOC_STATUS." ("._NUM." : ".$idDoc.") "._TO." ".$status; - $_SESSION['info'] = _UPDATE_DOC_STATUS ." ". _TO." ".$status; - require_once("core".DIRECTORY_SEPARATOR."class".DIRECTORY_SEPARATOR."class_history.php"); + $_SESSION['info'] = _UPDATE_DOC_STATUS.' '._TO.' '.$status; + require_once 'core'.DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_history.php'; $hist = new history(); - $hist->add($table, $idDoc, $status, 'resup', $_SESSION['error'], $_SESSION['config']['databasetype'],'indexing_searching'); + $hist->add($table, $idDoc, $status, 'resup', $_SESSION['error'], $_SESSION['config']['databasetype'], 'indexing_searching'); } } @@ -553,8 +459,8 @@ abstract class indexing_searching_app_Abstract extends Database type => "text", ), "date courrier" => array*/ - // $this->show_array($param); - if($value['param']['autocompletion']){ + // $this->show_array($param); + if ($value['param']['autocompletion']) { $idListByName = $key.'ListByName'; $autocompleteId = 'ac_'.$key; $options_criteria_list .= '<option id="option_'.$key.'" value="'.$value['label'].'" data-load={"id":"'.$key.'","idList":"'.$idListByName.'","autocompleteId":"'.$autocompleteId.'","config":"'.$_SESSION['config']['businessappurl'].'"} > '.$value['label'].'</option>'; @@ -563,25 +469,24 @@ abstract class indexing_searching_app_Abstract extends Database } $json_tab = ''; - foreach($param as $key => $value) - { + foreach ($param as $key => $value) { $json_tab .= "'".$key."' : {"; //echo 'key '.$key."<br/>val "; //$this->show_array($value); - if($value['param']['autocompletion']){ + if ($value['param']['autocompletion']) { $idListByName = $key.'ListByName'; $autocompleteId = 'ac_'.$key; $options_criteria_list .= '<option id="option_'.$key.'" value="'.$value['label'].'" data-load={"id":"'.$key.'","idList":"'.$idListByName.'","autocompleteId":"'.$autocompleteId.'","config":"'.$_SESSION['config']['businessappurl'].'"} > '.$value['label'].'</option>'; } else { $options_criteria_list .= '<option id="option_'.$key.'" value="'.$value['label'].'"> '.$value['label'].'</option>'; } - $json_tab .= $this->json_line($key,$value['type'],$value['param']); + $json_tab .= $this->json_line($key, $value['type'], $value['param']); $json_tab .= '} ,'; } - $json_tab = preg_replace("/,$/", '', $json_tab); + $json_tab = preg_replace('/,$/', '', $json_tab); - $tab = array($options_criteria_list, $json_tab ); + $tab = array($options_criteria_list, $json_tab); return $tab; } @@ -592,183 +497,147 @@ abstract class indexing_searching_app_Abstract extends Database $init = "'label' : '".addslashes($param['field_label'])."', 'value' :'"; $end = "'"; //$hidden = '<input type="hidden" name="meta[]" value="" />'; - if ($field_type == 'input_text') - { - if($param['autocompletion']){ + if ($field_type == 'input_text') { + if ($param['autocompletion']) { $idListByName = $id.'ListByName'; $autocompleteId = 'ac_'.$id; $str = $init.'<input type="hidden" name="meta[]" value="'.$id.'#'.$id.'#input_text"/>'; $str .= '<input name="'.$id.'" id="'.$id.'" type="text" '.$param['other'].' value="" onkeyup="erase_contact_external_id('."\'".$id."\'".','."\'".$autocompleteId."\'".')"/>'; - $str .='<div id="'.$idListByName.'" class="autocomplete"></div>'; + $str .= '<div id="'.$idListByName.'" class="autocomplete"></div>'; $str .= '<script type="text/javascript">'; $str .= 'initList_hidden_input("'.$id.'", "'.$idListByName.'","'.$_SESSION['config']['businessappurl'].'index.php?display=true&dir=indexing_searching&page=users_list_by_name_search", "what", "2", "'.$autocompleteId.'");</script>'; $str .= '<input id="'.$autocompleteId.'" name="'.$autocompleteId.'" type="hidden" />'.$end; } else { $str = $init.'<input type="hidden" name="meta[]" value="'.$id.'#'.$id.'#input_text" /><input name="'.$id.'" id="'.$id.'" type="text" '.$param['other'].' value="" />'.$end; } - } - else if ($field_type == 'textarea') - { + } elseif ($field_type == 'textarea') { $str = $init.'<input type="hidden" name="meta[]" value="'.$id.'#'.$id.'#textarea" /><textarea name="'.$id.'" id="'.$id.'" '.$param['other'].' rows="2" style="display:block;width:530px;"></textarea>'.$end; - } - elseif ($field_type == 'date_range') - { + } elseif ($field_type == 'date_range') { $str = $init.addslashes(_SINCE).' : <input type="text" name="'.$param['id1'].'" id="'.$param['id1'].'" value="" onclick="showCalender(this);" /> ' .addslashes(_FOR).' : <input type="text" name="'.$param['id2'].'" id="'.$param['id2'].'" value="" onclick="showCalender(this);" />'; $str .= '<input type="hidden" name="meta[]" value="'.$id.'#'.$param['id1'].','.$param['id2'].'#date_range" />'.$end; - } - elseif ($field_type == 'num_range') - { + } elseif ($field_type == 'num_range') { $str = $init.addslashes(_NUM_BETWEEN).' : <input type="text" name="'.$param['id1'].'" id="'.$param['id1'].'" value=""/ > ' .addslashes(_AND).' : <input type="text" name="'.$param['id2'].'" id="'.$param['id2'].'" value="" / >'; $str .= '<input type="hidden" name="meta[]" value="'.$id.'#'.$param['id1'].','.$param['id2'].'#num_range" />'.$end; - } - elseif ($field_type == 'select_simple') - { + } elseif ($field_type == 'select_simple') { $str = $init.'<select name="'.$id.'" id="'.$id.'">'; - if (isset($param['default_label']) && !empty($param['default_label'])) - { - $str .='<option value="">'.$param['default_label'].'</option>'; + if (isset($param['default_label']) && !empty($param['default_label'])) { + $str .= '<option value="">'.$param['default_label'].'</option>'; } - for ($i=0; $i<count($param['options']);$i++) - { + for ($i = 0; $i < count($param['options']); ++$i) { $str .= '<option value="'.addslashes($param['options'][$i]['VALUE']).'" alt="'.addslashes($param['options'][$i]['LABEL']).'" title="'.addslashes($param['options'][$i]['LABEL']).'">'.addslashes($param['options'][$i]['LABEL']).'</option>'; } $str .= '</select>'; $str .= '<input type="hidden" name="meta[]" value="'.$id.'#'.$id.'#select_simple" />'.$end; - } - elseif ($field_type == 'select_multiple') - { + } elseif ($field_type == 'select_multiple') { $str .= '<tr><td colspan="3">'.$param['label_title'].' :</td></tr>'; $str .= '<tr>'; - $str .= '<td width="150" align="left">'; - $str .= '<select name="'.$param['id'].'_available[]" id="'.$param['id'].'_available" size="10" ondblclick="moveclick_ext('." '".$param['id']."_available', '".$param['id']."_chosen'".');" multiple="multiple" >'; - for ($i=0; $i<count($param['options']);$i++) - { - $str .= '<option value="'.$param['options'][$i]['VALUE'].'" alt="'.addslashes($param['options'][$i]['LABEL']) - . '" title="'.addslashes($param['options'][$i]['LABEL']).'" '; - if (isset($param['options'][$i]['CLASS'])) { - $str .= ' class="' . $param['options'][$i]['CLASS'] . '" '; - } - $str .= '>'.$param['options'][$i]['LABEL'].'</option>'; - } - $str .='</select>'; - $str .= "<br/><em><a href=\"javascript:selectall_ext( '".$param['id']."_available');\" >"._SELECT_ALL.'</a></em>'; - $str .= '</td>'; - $str .= '<td width="135" align="center">'; - $str .= '<input type="button" class="button" value="'._ADD.'" onclick="Move_ext('."'".$param['id']."_available', '".$param['id']."_chosen'".');" /><br />'; - $str .= '<br /><input type="button" class="button" value="'._REMOVE.'" onclick="Move_ext('." '".$param['id']."_chosen', '".$param['id']."_available'".');" />'; - $str .= '</td>'; - $str .= '<td width="150" align="left">'; - $str .= '<select name="'.$param['id'].'_chosen[]" id="'.$param['id'].'_chosen" size="10" ondblclick="moveclick_ext('." '".$param['id']."_chosen', '".$param['id']."_available'".');" multiple="multiple" " >'; - $str .= '</select>'; - $str .= "<br/><em><a href=\"javascript:selectall_ext( '".$param['id']."_chosen');\" >"._SELECT_ALL.'</a></em>'; - $str .= '</td>'; + $str .= '<td width="150" align="left">'; + $str .= '<select name="'.$param['id'].'_available[]" id="'.$param['id'].'_available" size="10" ondblclick="moveclick_ext('." '".$param['id']."_available', '".$param['id']."_chosen'".');" multiple="multiple" >'; + for ($i = 0; $i < count($param['options']); ++$i) { + $str .= '<option value="'.$param['options'][$i]['VALUE'].'" alt="'.addslashes($param['options'][$i]['LABEL']) + .'" title="'.addslashes($param['options'][$i]['LABEL']).'" '; + if (isset($param['options'][$i]['CLASS'])) { + $str .= ' class="'.$param['options'][$i]['CLASS'].'" '; + } + $str .= '>'.$param['options'][$i]['LABEL'].'</option>'; + } + $str .= '</select>'; + $str .= "<br/><em><a href=\"javascript:selectall_ext( '".$param['id']."_available');\" >"._SELECT_ALL.'</a></em>'; + $str .= '</td>'; + $str .= '<td width="135" align="center">'; + $str .= '<input type="button" class="button" value="'._ADD.'" onclick="Move_ext('."'".$param['id']."_available', '".$param['id']."_chosen'".');" /><br />'; + $str .= '<br /><input type="button" class="button" value="'._REMOVE.'" onclick="Move_ext('." '".$param['id']."_chosen', '".$param['id']."_available'".');" />'; + $str .= '</td>'; + $str .= '<td width="150" align="left">'; + $str .= '<select name="'.$param['id'].'_chosen[]" id="'.$param['id'].'_chosen" size="10" ondblclick="moveclick_ext('." '".$param['id']."_chosen', '".$param['id']."_available'".');" multiple="multiple" " >'; + $str .= '</select>'; + $str .= "<br/><em><a href=\"javascript:selectall_ext( '".$param['id']."_chosen');\" >"._SELECT_ALL.'</a></em>'; + $str .= '</td>'; $str .= '</tr>'; $str = addslashes($str); $str = $init.'<table align="center" border="0" width="100%" >'.$str.'<input type="hidden" name="meta[]" value="'.$id.'#'.$param['id'].'_chosen#select_multiple" /></table>'.$end; - } - elseif ($field_type == 'checkbox') - { + } elseif ($field_type == 'checkbox') { $str = $init.'<table align="center" border="0" width="100%" >'; $tmp_ids = ''; - for ($i=0; $i < count($param['checkbox_data']);$i=$i+2) - { + for ($i = 0; $i < count($param['checkbox_data']); $i = $i + 2) { $tmp_ids .= $param['checkbox_data'][$i]['ID'].','; $str .= '<tr>'; - if (isset($param['checkbox_data'][$i+1]['ID'])) - { - $tmp_ids .= $param['checkbox_data'][$i+1]['ID'].','; + if (isset($param['checkbox_data'][$i + 1]['ID'])) { + $tmp_ids .= $param['checkbox_data'][$i + 1]['ID'].','; $str .= '<td><input type="checkbox" class="check" name="'.$param['checkbox_data'][$i]['ID'].'" id="'.$param['checkbox_data'][$i]['ID'].'" value="'.addslashes($param['checkbox_data'][$i]['VALUE']).'" />'.addslashes($param['checkbox_data'][$i]['LABEL']).'</td>'; - $str .= '<td><input type="checkbox" class="check" name="'.$param['checkbox_data'][$i+1]['ID'].'" id="'.$param['checkbox_data'][$i+1]['ID'].'" value="'.addslashes($param['checkbox_data'][$i+1]['VALUE']).'" />'.addslashes($param['checkbox_data'][$i+1]['LABEL']).'</td>'; - - } - else - { + $str .= '<td><input type="checkbox" class="check" name="'.$param['checkbox_data'][$i + 1]['ID'].'" id="'.$param['checkbox_data'][$i + 1]['ID'].'" value="'.addslashes($param['checkbox_data'][$i + 1]['VALUE']).'" />'.addslashes($param['checkbox_data'][$i + 1]['LABEL']).'</td>'; + } else { $str .= '<td colspan="2"><input type="checkbox" class="check" name="'.$param['checkbox_data'][$i]['ID'].'" id="'.$param['checkbox_data'][$i]['ID'].'" value="'.addslashes($param['checkbox_data'][$i]['VALUE']).'" />'.addslashes($param['checkbox_data'][$i]['LABEL']).'</td>'; } $str .= '</tr>'; } - $tmp_ids = preg_replace('/,$/', '', $tmp_ids ); + $tmp_ids = preg_replace('/,$/', '', $tmp_ids); $str .= '</table>'; $str .= '<input type="hidden" name="meta[]" value="'.$id.'#'.$tmp_ids.'#checkbox" />'.$end; - } - elseif ($field_type == 'address') - { + } elseif ($field_type == 'address') { $str = $init.'<input type="hidden" name="meta[]" value="'.$id.'#'.$param['address_data']['NUM']['ID'].','.$param['address_data']['ROAD']['ID'].','.$param['address_data']['CP']['ID'].','.$param['address_data']['CITY']['ID'].','.$param['address_data']['DISTRICTS']['ID'].'#address" />'; $str .= '<table align="center" border="0" width="100%" >'; $str .= '<tr>'; - $str .= '<td>'.$param['address_data']['NUM']['LABEL'].'</td><td><input type="text" name="'.$param['address_data']['NUM']['ID'].'" id="'.$param['address_data']['NUM']['ID'].'" class="small"/></td>'; - $str .= '<td>'.$param['address_data']['ROAD']['LABEL'].'</td><td><input type="text" name="'.$param['address_data']['ROAD']['ID'].'" id="'.$param['address_data']['ROAD']['ID'].'" /></td>'; + $str .= '<td>'.$param['address_data']['NUM']['LABEL'].'</td><td><input type="text" name="'.$param['address_data']['NUM']['ID'].'" id="'.$param['address_data']['NUM']['ID'].'" class="small"/></td>'; + $str .= '<td>'.$param['address_data']['ROAD']['LABEL'].'</td><td><input type="text" name="'.$param['address_data']['ROAD']['ID'].'" id="'.$param['address_data']['ROAD']['ID'].'" /></td>'; $str .= '</tr>'; $str .= '<tr>'; - $str .= '<td>'.$param['address_data']['CP']['LABEL'].'</td><td><input type="text" name="'.$param['address_data']['CP']['ID'].'" id="'.$param['address_data']['CP']['ID'].'" class="medium" maxlength="5"/></td>'; - $str .= '<td>'.$param['address_data']['CITY']['LABEL'].'</td><td><input type="text" name="'.$param['address_data']['CITY']['ID'].'" id="'.$param['address_data']['CITY']['ID'].'" /></td>'; + $str .= '<td>'.$param['address_data']['CP']['LABEL'].'</td><td><input type="text" name="'.$param['address_data']['CP']['ID'].'" id="'.$param['address_data']['CP']['ID'].'" class="medium" maxlength="5"/></td>'; + $str .= '<td>'.$param['address_data']['CITY']['LABEL'].'</td><td><input type="text" name="'.$param['address_data']['CITY']['ID'].'" id="'.$param['address_data']['CITY']['ID'].'" /></td>'; $str .= '</tr>'; - if (isset($param['address_data']['DISTRICTS'])) - { + if (isset($param['address_data']['DISTRICTS'])) { $str .= '<tr>'; - $str .= '<td>'.$param['address_data']['DISTRICTS']['LABEL'].'</td><td colspan="3">'; - $str .= '<select name="'.$param['address_data']['DISTRICTS']['ID'].'" id="'.$param['address_data']['DISTRICTS']['ID'].'">'; - $str .= '<option value="">'.$param['address_data']['DISTRICTS']['default_label'].'</option>'; - for ($i=0; $i < count($param['address_data']['DISTRICTS']['options']); $i++) - { - $str .= '<option value="'.$param['address_data']['DISTRICTS']['options'][$i]['VALUE'].'" >'.$param['address_data']['DISTRICTS']['options'][$i]['LABEL'].'</option>'; - } - $str .= '</select>'; - $str .= '</td>'; + $str .= '<td>'.$param['address_data']['DISTRICTS']['LABEL'].'</td><td colspan="3">'; + $str .= '<select name="'.$param['address_data']['DISTRICTS']['ID'].'" id="'.$param['address_data']['DISTRICTS']['ID'].'">'; + $str .= '<option value="">'.$param['address_data']['DISTRICTS']['default_label'].'</option>'; + for ($i = 0; $i < count($param['address_data']['DISTRICTS']['options']); ++$i) { + $str .= '<option value="'.$param['address_data']['DISTRICTS']['options'][$i]['VALUE'].'" >'.$param['address_data']['DISTRICTS']['options'][$i]['LABEL'].'</option>'; + } + $str .= '</select>'; + $str .= '</td>'; $str .= '</tr>'; } $str .= '</table>'.$end; - } - elseif ($field_type == 'simple_list_or_input_text') - { + } elseif ($field_type == 'simple_list_or_input_text') { // td open in the showing function (js) - $str .= '<input type="hidden" name="meta[]" value="'.$id.'#select_'.$param['id'].',input_'.$param['id'].'#simple_list_or_input_text" />'; - $str .= '<select name="select_'.$param['id'].'" id="select_'.$param['id'].'" onchange="start_action_list('."'".'div_'.$param['id']."', 'select_".$param['id']."', this.selectedIndex".')">'; - $str .= '<option value="">'.$param['default_label_select'].'</option>'; - $str .= '<option value="SHOW_DATA">'.$param['label_define_option']."</option>"; - for ($i=0; $i<count($param['options']);$i++) - { - $str .= '<option value="'.addslashes($param['options'][$i]['VALUE']).'">'.addslashes($param['options'][$i]['LABEL']).'</option>'; - } - $str .= '</select>'; + $str .= '<input type="hidden" name="meta[]" value="'.$id.'#select_'.$param['id'].',input_'.$param['id'].'#simple_list_or_input_text" />'; + $str .= '<select name="select_'.$param['id'].'" id="select_'.$param['id'].'" onchange="start_action_list('."'".'div_'.$param['id']."', 'select_".$param['id']."', this.selectedIndex".')">'; + $str .= '<option value="">'.$param['default_label_select'].'</option>'; + $str .= '<option value="SHOW_DATA">'.$param['label_define_option'].'</option>'; + for ($i = 0; $i < count($param['options']); ++$i) { + $str .= '<option value="'.addslashes($param['options'][$i]['VALUE']).'">'.addslashes($param['options'][$i]['LABEL']).'</option>'; + } + $str .= '</select>'; $str .= '</td>'; $str .= '<td>'; - $str .= '<div id="div_'.$param['id'].'" style="visibility:hidden">'; - $str .= '<table width="100%" border="0">'; - $str .= '<tr>'; - $str .= '<td>'.$param['label_input'].' : <input type="text" name="input_'.$param['id'].'" id="input_'.$param['id'].'" '.$param['other'].' value="" /></td>'; - $str .= '</tr>'; - $str .= '</table>'; - $str .= '</div>'; + $str .= '<div id="div_'.$param['id'].'" style="visibility:hidden">'; + $str .= '<table width="100%" border="0">'; + $str .= '<tr>'; + $str .= '<td>'.$param['label_input'].' : <input type="text" name="input_'.$param['id'].'" id="input_'.$param['id'].'" '.$param['other'].' value="" /></td>'; + $str .= '</tr>'; + $str .= '</table>'; + $str .= '</div>'; // td close in the showing function (js) $str = addslashes($str); - $str = $init.$str.$end; - } - elseif ($field_type == 'inputs_in_2_col') - { + $str = $init.$str.$end; + } elseif ($field_type == 'inputs_in_2_col') { $str = $init.'<table align="center" border="0" width="100%" >'; - $tmp = ""; + $tmp = ''; - for ($i=0; $i<count($param['input_ids']) ;$i++) - { + for ($i = 0; $i < count($param['input_ids']); ++$i) { $tmp .= $param['input_ids'][$i]['ID'].','; - if ($i%2 != 1 || $i==0) // pair - { + if ($i % 2 != 1 || $i == 0) { // pair $str .= '<tr>'; } $str .= '<td >'.addslashes($param['input_ids'][$i]['LABEL']).'</td><td><input type="text" name="'.$param['input_ids'][$i]['ID'].'" id="'.$param['input_ids'][$i]['ID'].'" value="" /></td>'; - if ($i%2 == 1 && $i!=0) // impair - { - echo '</tr>' ; - } - else - { - if ($i+1 == count($param['input_ids'])) - { + if ($i % 2 == 1 && $i != 0) { // impair + echo '</tr>'; + } else { + if ($i + 1 == count($param['input_ids'])) { echo '<td colspan="3"> </td></tr>'; } } @@ -776,77 +645,65 @@ abstract class indexing_searching_app_Abstract extends Database $tmp = preg_replace('/,$/', '', $tmp); $str .= '</table>'; $str .= '<input type="hidden" name="meta[]" value="'.$id.'#'.$tmp.'#inputs_in_2_col" />'.$end; - } - elseif ($field_type == 'select_or_other_data') - { + } elseif ($field_type == 'select_or_other_data') { // td open in the showing function (js) $str .= '<table align="center" border="0" width="100%" >'; - $str .= '<tr>'; - $str .= '<td>'; - $str .= '<select name="select_'.$param['id'].'" id="select_'.$param['id'].'" onchange="start_action_list('."'".'div_'.$param['id']."', 'select_".$param['id']."', this.selectedIndex".')">'; - $str .= '<option value="">'.$param['default_label_select'].'</option>'; - $str .= '<option value="SHOW_DATA">'.$param['label_define_option']."</option>"; - for ($i=0; $i<count($param['options']);$i++) - { - $str .= '<option value="'.$param['options'][$i]['VALUE'].'">'.$param['options'][$i]['LABEL'].'</option>'; - } - $str .= '</select>'; - $str .= '</td>'; - $str .= '</tr>'; - $str .= '<tr>'; - $str .= '<td>'; - $str .= '<div id="div_'.$param['id'].'" style="display:none;">'; - $str .= '<table align="center" border="0" width="100%" >'; - $tmp = "select_".$param['id'].","; - for ($i=0; $i<count($param['input_ids']) ;$i++) - { - $tmp .= $param['input_ids'][$i]['ID'].','; - if ($i%2 != 1 || $i==0) // pair - { - $str .= '<tr>'; - } - $str .= '<td >'.$param['input_ids'][$i]['LABEL'].' :</td><td><input type="text" name="'.$param['input_ids'][$i]['ID'].'" id="'.$param['input_ids'][$i]['ID'].'" value="" /></td>'; - if ($i%2 == 1 && $i!=0) // impair - { - echo '</tr>' ; - } - else - { - if ($i+1 == count($param['input_ids'])) - { - echo '<td colspan="3"> </td></tr>'; - } - } - } - $tmp = preg_replace('/,$/', '', $tmp); - $str .= '</table>'; - $str .= '</div>'; - $str .= '<input type="hidden" name="meta[]" value="'.$id.'#'.$tmp.'#select_or_other_data" />'; - $str .= '</td>'; - $str .= '</tr>'; + $str .= '<tr>'; + $str .= '<td>'; + $str .= '<select name="select_'.$param['id'].'" id="select_'.$param['id'].'" onchange="start_action_list('."'".'div_'.$param['id']."', 'select_".$param['id']."', this.selectedIndex".')">'; + $str .= '<option value="">'.$param['default_label_select'].'</option>'; + $str .= '<option value="SHOW_DATA">'.$param['label_define_option'].'</option>'; + for ($i = 0; $i < count($param['options']); ++$i) { + $str .= '<option value="'.$param['options'][$i]['VALUE'].'">'.$param['options'][$i]['LABEL'].'</option>'; + } + $str .= '</select>'; + $str .= '</td>'; + $str .= '</tr>'; + $str .= '<tr>'; + $str .= '<td>'; + $str .= '<div id="div_'.$param['id'].'" style="display:none;">'; + $str .= '<table align="center" border="0" width="100%" >'; + $tmp = 'select_'.$param['id'].','; + for ($i = 0; $i < count($param['input_ids']); ++$i) { + $tmp .= $param['input_ids'][$i]['ID'].','; + if ($i % 2 != 1 || $i == 0) { // pair + $str .= '<tr>'; + } + $str .= '<td >'.$param['input_ids'][$i]['LABEL'].' :</td><td><input type="text" name="'.$param['input_ids'][$i]['ID'].'" id="'.$param['input_ids'][$i]['ID'].'" value="" /></td>'; + if ($i % 2 == 1 && $i != 0) { // impair + echo '</tr>'; + } else { + if ($i + 1 == count($param['input_ids'])) { + echo '<td colspan="3"> </td></tr>'; + } + } + } + $tmp = preg_replace('/,$/', '', $tmp); + $str .= '</table>'; + $str .= '</div>'; + $str .= '<input type="hidden" name="meta[]" value="'.$id.'#'.$tmp.'#select_or_other_data" />'; + $str .= '</td>'; + $str .= '</tr>'; $str .= '</table>'; // td close in the showing function (js) $str = addslashes($str); - $str = $init.$str.$end; + $str = $init.$str.$end; + } else { } - else - { - } return $str; } public function get_process_data($coll_id, $res_id) { - require_once("core".DIRECTORY_SEPARATOR."class".DIRECTORY_SEPARATOR."class_security.php"); - $sec =new security(); + require_once 'core'.DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_security.php'; + $sec = new security(); $view = $sec->retrieve_view_from_coll_id($coll_id); - if (empty($view)) - { + if (empty($view)) { $view = $sec->retrieve_table_from_coll($coll_id); } $db = new Database(); - $stmt = $db->query("SELECT answer_type_bitmask, process_notes, other_answer_desc FROM ".$view." WHERE res_id = ?", array($res_id)); + $stmt = $db->query('SELECT answer_type_bitmask, process_notes, other_answer_desc FROM '.$view.' WHERE res_id = ?', array($res_id)); $res = $stmt->fetchObject(); $bitmask = $res->answer_type_bitmask; $process_notes = functions::show_string($res->process_notes); @@ -858,13 +715,10 @@ abstract class indexing_searching_app_Abstract extends Database $email = false; $other = false; $no_answer = false; - if ($bitmask == '000000' || $bitmask == '') - { + if ($bitmask == '000000' || $bitmask == '') { $no_answer = true; - } - else - { - /** + } else { + /* * Answer type bitmask * 0 0 0 0 0 0 * | | | | | |_ Simple Mail @@ -875,32 +729,26 @@ abstract class indexing_searching_app_Abstract extends Database * |___________ Other Answer **/ - if ($bitmask[0] == '1') - { + if ($bitmask[0] == '1') { $other = true; } - if ($bitmask[1] == '1') - { + if ($bitmask[1] == '1') { $fax = true; } - if ($bitmask[2] == '1') - { + if ($bitmask[2] == '1') { $email = true; } - if ($bitmask[3] == '1') - { + if ($bitmask[3] == '1') { $contact = true; } - if ($bitmask[4] == '1') - { + if ($bitmask[4] == '1') { $AR = true; } - if ($bitmask[5] == '1') - { + if ($bitmask[5] == '1') { $mail = true; } } + return array('process_notes' => $process_notes, 'direct_contact' => $contact, 'simple_mail' => $mail, 'registered_mail' => $AR, 'fax' => $fax, 'email' => $email, 'no_answer' => $no_answer, 'other' => $other, 'other_answer_desc' => $other_answer_desc); } - } diff --git a/apps/maarch_entreprise/indexing_searching/details.php b/apps/maarch_entreprise/indexing_searching/details.php index 31702a52c8ea41964c71b2e97d103b74a1aff319..b732f97085271d447ec1d3cda1f48932c009c34b 100755 --- a/apps/maarch_entreprise/indexing_searching/details.php +++ b/apps/maarch_entreprise/indexing_searching/details.php @@ -1,23 +1,15 @@ <?php - /** - * Copyright Maarch since 2008 under licence GPLv3. - * See LICENCE.txt file at the root folder for more details. - * This file is part of Maarch software. - */ +* Copyright Maarch since 2008 under licence GPLv3. +* See LICENCE.txt file at the root folder for more details. +* This file is part of Maarch software. -/** - * File : details.php. - * - * Detailed informations on an indexed document - * - * @version 1.3 - * - * @since 10/2005 - * - * @license GPL - * @author Claire Figueras <dev@maarch.org> - */ +* +* @brief details +* +* @author dev <dev@maarch.org> +* @ingroup indexing_searching +*/ //DECLARATIONS require_once 'core/manage_bitmask.php'; @@ -112,12 +104,6 @@ if ($core->test_service('add_new_version', 'apps', false)) { $addNewVersion = true; } -//test service view_emails_notifs -// $viewEmailsNotifs = false; -// if ($core->test_service('view_emails_notifs', 'notifications', false)) { - // $viewEmailsNotifs = true; -// } - /****************Management of the location bar ************/ $init = false; if (isset($_REQUEST['reinit']) && $_REQUEST['reinit'] == 'true') { @@ -151,17 +137,16 @@ if (isset($_GET['id']) && !empty($_GET['id'])) { $s_id = addslashes($func->wash($_GET['id'], 'num', _THE_DOC)); } +//CHECK IF DATAS IN MLB_COLL_EXT $stmt = $db->query('SELECT res_id FROM mlb_coll_ext WHERE res_id = ?', array($s_id)); if ($stmt->rowCount() <= 0) { - $_SESSION['error'] = _QUALIFY_FIRST; ?> - <script type="text/javascript">window.top.location.href='<?php - echo $_SESSION['config']['businessappurl']; ?>index.php';</script> - <?php + $_SESSION['error'] = _QUALIFY_FIRST; + echo "<script language=\"javascript\" type=\"text/javascript\">window.top.location.href='index.php';</script>"; exit(); } + $_SESSION['doc_id'] = $s_id; $right = $security->test_right_doc($coll_id, $s_id); -//$_SESSION['error'] = 'coll '.$coll_id.', res_id : '.$s_id; $stmt = $db->query('SELECT typist, creation_date, filename FROM '.$table.' WHERE res_id = ?', array($s_id)); $info_mail = $stmt->fetchObject(); @@ -170,20 +155,20 @@ $date1 = new DateTime($info_mail->creation_date); $date2 = new DateTime(); $date2->sub(new DateInterval('PT1M')); +//WARNING IF NO RIGHT BUT OWNER OF CURRENT DOC if (!$right && $_SESSION['user']['UserId'] == $info_mail->typist && $date1 > $date2) { $right = true; $_SESSION['info'] = _MAIL_WILL_DISAPPEAR; } +//REDIRECT IF NO RIGHT if (!$right) { - $_SESSION['error'] = _NO_RIGHT_TXT; ?> - <script type="text/javascript"> - window.top.location.href = '<?php - echo $_SESSION['config']['businessappurl']; ?>index.php'; - </script> - <?php + $_SESSION['error'] = _NO_RIGHT_TXT; + echo "<script language=\"javascript\" type=\"text/javascript\">window.top.location.href='index.php';</script>"; exit(); } + +//RECORD ACCESS TO THE DOC if (isset($s_id) && !empty($s_id) && $_SESSION['history']['resview'] == 'true') { $hist->add( $table, @@ -198,7 +183,7 @@ if (isset($s_id) && !empty($s_id) && $_SESSION['history']['resview'] == 'true') $modify_doc = $core->test_service('edit_document_in_detail', 'apps', false); -//update index with the doctype +//UPDATE DATAS (IF FIELDS CAN BE MODIFIED) OF DOC if (isset($_POST['submit_index_doc'])) { $is->update_mail($_POST, 'POST', $s_id, $coll_id); @@ -224,999 +209,990 @@ if (isset($_POST['submit_index_doc'])) { } } -//delete the doctype +//DELETE DOC (status to DEL) if (isset($_POST['delete_doc'])) { - $is->delete_doc($s_id, $coll_id); ?> - <script type="text/javascript">window.top.location.href='<?php - echo $_SESSION['config']['businessappurl'] - .'index.php?page=search_adv&dir=indexing_searching'; ?>';</script> - <?php + $is->delete_doc($s_id, $coll_id); + echo "<script language=\"javascript\" type=\"text/javascript\">window.top.location.href='index.php?page=search_adv&dir=indexing_searching';</script>"; exit(); } + +//CHANGE STATUS DOC TO VAL if (isset($_POST['put_doc_on_validation'])) { - $is->update_doc_status($s_id, $coll_id, 'VAL'); ?> - <script language="javascript" type="text/javascript">window.top.location.href='<?php - echo $_SESSION['config']['businessappurl'] - .'index.php?page=search_adv&dir=indexing_searching'; ?>';</script> - <?php + $is->update_doc_status($s_id, $coll_id, 'VAL'); + echo "<script language=\"javascript\" type=\"text/javascript\">window.top.location.href='index.php?page=search_adv&dir=indexing_searching';</script>"; exit(); } +$_SESSION['adresses']['to'] = array(); +$_SESSION['adresses']['addressid'] = array(); +$_SESSION['adresses']['contactid'] = array(); -//Load multicontacts -$query = "SELECT c.contact_firstname, c.contact_lastname, c.firstname, c.lastname, c.society - FROM view_contacts c, contacts_res cres - WHERE cres.coll_id = 'letterbox_coll' AND cres.res_id = ? AND cast (c.contact_id as varchar(128)) = cres.contact_id AND c.ca_id = cres.address_id - GROUP BY c.firstname, c.lastname, c.society, c.contact_firstname, c.contact_lastname"; - -$stmt = $db->query($query, array($_REQUEST['id'])); -$nbContacts = 0; -$frameContacts = ''; -$frameContacts = '{'; -while ($res = $stmt->fetchObject()) { - $nbContacts = $nbContacts + 1; - $contact_firstname = str_replace("'", "\'", $res->contact_firstname); - $contact_firstname = str_replace('"', ' ', $contact_firstname); - $contact_lastname = str_replace("'", "\'", $res->contact_lastname); - $contact_lastname = str_replace('"', ' ', $contact_lastname); - $firstname = str_replace("'", "\'", $res->firstname); - $firstname = str_replace('"', ' ', $firstname); - $lastname = str_replace("'", "\'", $res->lastname); - $lastname = str_replace('"', ' ', $lastname); - $society = str_replace("'", "\'", $res->society); - $society = str_replace('"', ' ', $society); - $frameContacts .= "'contact ".$nbContacts."' : '".$contact_firstname.' '.$contact_lastname.' '.$firstname.' '.$lastname.' '.$society." (contact)', "; -} -$query = 'SELECT u.firstname, u.lastname, u.user_id '; -$query .= 'FROM users u, contacts_res cres '; -$query .= "WHERE cres.coll_id = 'letterbox_coll' AND cres.res_id = ? AND cast (u.user_id as varchar(128)) = cres.contact_id "; -$query .= 'GROUP BY u.firstname, u.lastname, u.user_id'; - -$stmt = $db->query($query, array($_REQUEST['id'])); - -while ($res = $stmt->fetchObject()) { - $nbContacts = $nbContacts + 1; - $firstname = str_replace("'", "\'", $res->firstname); - $firstname = str_replace('"', ' ', $firstname); - $lastname = str_replace("'", "\'", $res->lastname); - $lastname = str_replace('"', ' ', $lastname); - $frameContacts .= "'contact ".$nbContacts."' : '".$firstname.' '.$lastname." (utilisateur)', "; -} -$frameContacts = substr($frameContacts, 0, -2); -$frameContacts .= '}'; - -if (empty($_SESSION['error']) || $_SESSION['indexation']) { - $comp_fields = ''; - $stmt = $db->query('SELECT type_id FROM '.$table.' WHERE res_id = ?', array($s_id)); - if ($stmt->rowCount() > 0) { - $res = $stmt->fetchObject(); - $type_id = $res->type_id; - $indexes = $type->get_indexes($type_id, $coll_id, 'minimal'); - for ($i = 0; $i < count($indexes); ++$i) { - // In the view all custom from res table begin with doc_ - if (preg_match('/^custom_/', $indexes[$i])) { - $comp_fields .= ', doc_'.$indexes[$i]; - } else { - $comp_fields .= ', '.$indexes[$i]; - } +$comp_fields = ''; +$stmt = $db->query('SELECT type_id FROM '.$table.' WHERE res_id = ?', array($s_id)); +if ($stmt->rowCount() > 0) { + $res = $stmt->fetchObject(); + $type_id = $res->type_id; + $indexes = $type->get_indexes($type_id, $coll_id, 'minimal'); + for ($i = 0; $i < count($indexes); ++$i) { + // In the view all custom from res table begin with doc_ + if (preg_match('/^custom_/', $indexes[$i])) { + $comp_fields .= ', doc_'.$indexes[$i]; + } else { + $comp_fields .= ', '.$indexes[$i]; } } - $case_sql_complementary = ''; - if ($core->is_module_loaded('cases') == true) { - $case_sql_complementary = ' , case_id'; - } - $stmt = $db->query( - 'SELECT status, format, typist, creation_date, fingerprint, filesize, ' - .'res_id, destination, work_batch, page_count, is_paper, scan_date, scan_user, ' - .'scan_location, scan_wkstation, scan_batch, source, doc_language, ' - .'description, closing_date, alt_identifier, initiator, entity_label '.$comp_fields - .$case_sql_complementary.' FROM '.$table.' WHERE res_id = ?', - array($s_id) - ); - $res = $stmt->fetchObject(); } +$case_sql_complementary = ''; +if ($core->is_module_loaded('cases') == true) { + $case_sql_complementary = ' , case_id'; +} +$stmt = $db->query( + 'SELECT status, format, typist, creation_date, fingerprint, filesize, ' + .'res_id, destination, work_batch, page_count, is_paper, scan_date, scan_user, ' + .'scan_location, scan_wkstation, scan_batch, source, doc_language, ' + .'description, closing_date, alt_identifier, initiator, entity_label '.$comp_fields + .$case_sql_complementary.' FROM '.$table.' WHERE res_id = ?', + array($s_id) +); +$res = $stmt->fetchObject(); ?> <div id="details_div"> -<h1 class="titdetail"> - <i class="fa fa-info-circle fa-2x"></i> - <?php - if (_ID_TO_DISPLAY == 'res_id') { - echo '<i style="font-style:normal;">'._DETAILS.' : '._DOC.' '.strtolower(_NUM).$s_id.'</i>'; - } else { - echo '<i style="font-style:normal;" title="'._LETTER_NUM.$s_id.'">'._DETAILS.' : '._DOC.' '.$res->alt_identifier.'</i>'; - } - ?> - <span>(<?php - echo $security->retrieve_coll_label_from_coll_id($coll_id); - ?>)</span> -</h1> +<?php +echo '<h1 class="titdetail"><i class="fa fa-info-circle fa-2x"></i> '; +if (_ID_TO_DISPLAY == 'res_id') { + $idToDisplay = $s_id; + $titleToDisplay = $res->alt_identifier; +} else { + $idToDisplay = $res->alt_identifier; + $titleToDisplay = strtolower(_NUM).$s_id; +} +echo "<i style='font-style:normal;' title='{$titleToDisplay}'>"._DETAILS.' : '._DOC." {$idToDisplay}</i> <span>({$security->retrieve_coll_label_from_coll_id($coll_id)})</span>"; +echo '</h1>'; +?> <div id="inner_content" class="clearfix"> -<?php -if ((!empty($_SESSION['error']) && !($_SESSION['indexation']))) { - ?> - <div class="error"> - <br /> - <br /> - <br /> - <?php echo $_SESSION['error']; - $_SESSION['error'] = ''; ?> - <br /> - <br /> - <br /> - </div> - <?php +<?php +if ($stmt->rowCount() == 0) { + $_SESSION['error'] = _NO_DOCUMENT_CORRESPOND_TO_IDENTIFIER; + echo "<script language=\"javascript\" type=\"text/javascript\">window.top.location.href='index.php';</script>"; + exit(); } else { - if ($stmt->rowCount() == 0) { - ?> - <div align="center"> - <br /> - <br /> - <?php echo _NO_DOCUMENT_CORRESPOND_TO_IDENTIFIER; ?>. - <br /> - <br /> - <br /> - </div> - <?php + //POPUP INFO AND ERROR + echo '<div class="info" id="info_detail" onclick="this.hide();" style="display: none;">'.$_SESSION['info'].'</div>'; + echo '<div class="error" id="error_detail" onclick="this.hide();" style="display: none;">'.$_SESSION['error'].'</div>'; + + if (isset($_SESSION['info']) && $_SESSION['info'] != '') { + echo '<script language=\'javascript\' type=\'text/javascript\'>$j("#info_detail").show().delay(5000).fadeOut();</script>'; + $_SESSION['info'] = ''; + } + if ((!empty($_SESSION['error']) && !($_SESSION['indexation']))) { + echo '<script language=\'javascript\' type=\'text/javascript\'>$j("#error_detail").show().delay(5000).fadeOut();</script>'; + $_SESSION['error'] = ''; + } + + $typist = $res->typist; + $format = $res->format; + $filesize = $res->filesize; + $creation_date = functions::format_date_db($res->creation_date, false); + $chrono_number = $res->alt_identifier; + $initiator = $res->initiator; + $fingerprint = $res->fingerprint; + $work_batch = $res->work_batch; + $destination = $res->destination; + $page_count = $res->page_count; + $is_paper = $res->is_paper; + $scan_date = functions::format_date_db($res->scan_date); + $scan_user = $res->scan_user; + $scan_location = $res->scan_location; + $scan_wkstation = $res->scan_wkstation; + $scan_batch = $res->scan_batch; + $doc_language = $res->doc_language; + $closing_date = functions::format_date_db($res->closing_date, false); + $indexes = $type->get_indexes($type_id, $coll_id); + $entityLabel = $res->entity_label; + + $queryUser = 'SELECT firstname, lastname FROM users WHERE user_id = ?'; + $stmt = $db->query($queryUser, array($typist)); + $resultUser = $stmt->fetchObject(); + + $queryEntities = 'SELECT entity_label FROM entities WHERE entity_id = ?'; + $stmt = $db->query($queryEntities, array($initiator)); + $resultEntities = $stmt->fetchObject(); + $entities = $resultEntities->entity_label; + + if ($resultUser->lastname != '') { + $typistLabel = $resultUser->firstname.' '.$resultUser->lastname; + } else { + $typistLabel = $typist; + } + + if ($core->is_module_loaded('cases') == true) { + require_once 'modules/cases/class/class_modules_tools.php'; + $case = new cases(); + if ($res->case_id != '') { + $case_properties = $case->get_case_info($res->case_id); + } + } + + foreach (array_keys($indexes) as $key) { + if (preg_match('/^custom/', $key)) { + $tmp = 'doc_'.$key; } else { - ?> - <div id="info_detail" class="info" onclick="this.hide();"> - <?php echo $_SESSION['info']; ?> - <br /> - <br /> - </div> + $tmp = $key; + } + if ($indexes[$key]['type'] == 'date') { + $res->{$tmp} = functions::format_date_db($res->{$tmp}, false); + } + $indexes[$key]['value'] = $res->{$tmp}; + $indexes[$key]['show_value'] = $res->{$tmp}; + if ($indexes[$key]['type'] == 'string') { + $indexes[$key]['show_value'] = functions::show_string($res->{$tmp}); + } elseif ($indexes[$key]['type'] == 'date') { + $indexes[$key]['show_value'] = functions::format_date_db($res->{$tmp}, true); + } + } + $status = $res->status; + if (!empty($status)) { + require_once 'core/class/class_manage_status.php'; + $status_obj = new manage_status(); + $res_status = $status_obj->get_status_data($status); + if ($modify_doc) { + $can_be_modified = $status_obj->can_be_modified($status); + if (!$can_be_modified) { + $modify_doc = false; + } + } + if ($_SESSION['user']['UserId'] == 'superadmin') { + $modify_doc = true; + } + } + $mode_data = 'full'; + if ($modify_doc) { + $mode_data = 'form'; + } + foreach (array_keys($indexes) as $key) { + $indexes[$key]['opt_index'] = true; + if ($indexes[$key]['type_field'] == 'select') { + for ($i = 0; $i < count($indexes[$key]['values']); ++$i) { + if ($indexes[$key]['values'][$i]['id'] == $indexes[$key]['value']) { + $indexes[$key]['show_value'] = $indexes[$key]['values'][$i]['label']; + break; + } + } + } + if (!$modify_doc) { + $indexes[$key]['readonly'] = true; + $indexes[$key]['type_field'] = 'input'; + } else { + $indexes[$key]['readonly'] = false; + } + } + $data = get_general_data($coll_id, $s_id, $mode_data, $param_data); ?> + <div class="block"> + <b> + <p id="back_list"> <?php - if (isset($_SESSION['info']) && $_SESSION['info'] != '') { + if (!isset($_POST['up_res_id']) || !$_POST['up_res_id']) { + if ($_SESSION['indexation'] == false) { + echo '<a href="#" onclick="document.getElementById(\'ariane\').childNodes[document.getElementById(\'ariane\').childNodes.length-2].click();"><i class="fa fa-arrow-circle-left fa-2x" title="'._BACK.'"></i></a>'; + } + } ?> + </p> + <p id="viewdoc"> + <?php if ($info_mail->filename) { ?> + <a href="index.php?display=true&editingMode=true&dir=indexing_searching&page=view_resource_controler&id=<?php functions::xecho($s_id); ?>" + target="_blank"><i class="fa fa-download fa-2x" title="<?php echo _VIEW_DOC; ?>"></i></a> + <?php + } ?> + + </p> + </b> + </div> + <br/> + <?php + //CONSTRUCT TABS + echo '<div class="whole-panel">'; - <script> - var info_detail = $('info_detail'); - if (info_detail != null) { - info_detail.style.display = 'table-cell'; - Element.hide.delay(10, 'info_detail'); - } - </script> - <?php - $_SESSION['info'] = ''; - } + //DETAILS TAB + if ($nbAttach == 0 && strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { + $style = 'padding-right: 0px;'; + $styleBadge = 'visibility:hidden;"'; + } else { + $style = 'padding-right: 15px;'; + $styleBadge = 'display:none;"'; + } + echo "<div class='fa fa-info-circle detailsTab DetailsTabFunc TabSelected' id='DetailstachometerTab' style='font-size:2em;padding-left: 15px;{$style}' title='"._PROPERTIES."' onclick=\"tabClicked('DetailstachometerTab',false);\">"; + echo "<sup><span style='font-size: 10px;{$styleBadge}' class='nbResZero'>0</span></sup>"; + echo '</div>'; + + //TECHNICAL INFO TAB + if ($viewTechnicalInfos) { + $technicalInfo_frame = ''; + $pathScriptTab = $_SESSION['config']['businessappurl'].'index.php?display=true&page=show_technicalInfo_tab'; + $technicalInfo_frame .= '<div class="fa fa-cogs DetailsTabFunc" id="DetailsCogdTab" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._TECHNICAL_INFORMATIONS.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'DetailsCogdTab\',true);"><sup><span style="font-size: 10px;display: none;" class="nbResZero"></span></sup></div>'; + echo $technicalInfo_frame; + } - $param_data = array( - 'img_category_id' => true, - 'img_priority' => true, - 'img_type_id' => true, - 'img_doc_date' => true, - 'img_admission_date' => true, - 'img_nature_id' => true, - 'img_reference_number' => true, - 'img_subject' => true, - 'img_process_limit_date' => true, - 'img_author' => true, - 'img_destination' => true, - 'img_folder' => true, - 'img_contact' => true, - 'img_confidentiality' => true, - ); + //DIFF LIST TAB + if ($core->is_module_loaded('entities')) { + require_once 'modules/entities/class/class_manage_listdiff.php'; + $diff_list = new diffusion_list(); + $_SESSION['details']['diff_list'] = $diff_list->get_listinstance($s_id, false, $coll_id); + $_SESSION['details']['difflist_type'] = $diff_list->get_difflist_type($_SESSION['details']['diff_list']['difflist_type']); + $roles = $diff_list->list_difflist_roles(); + + $roles_str = json_encode($roles); - $typist = $res->typist; - $format = $res->format; - $filesize = $res->filesize; - $creation_date = functions::format_date_db($res->creation_date, false); - $chrono_number = $res->alt_identifier; - $initiator = $res->initiator; - $fingerprint = $res->fingerprint; - $work_batch = $res->work_batch; - $destination = $res->destination; - $page_count = $res->page_count; - $is_paper = $res->is_paper; - $scan_date = functions::format_date_db($res->scan_date); - $scan_user = $res->scan_user; - $scan_location = $res->scan_location; - $scan_wkstation = $res->scan_wkstation; - $scan_batch = $res->scan_batch; - $doc_language = $res->doc_language; - $closing_date = functions::format_date_db($res->closing_date, false); - $indexes = $type->get_indexes($type_id, $coll_id); - $entityLabel = $res->entity_label; - - $queryUser = 'SELECT firstname, lastname FROM users WHERE user_id = ?'; - $stmt = $db->query($queryUser, array($typist)); - $resultUser = $stmt->fetchObject(); - - $queryEntities = 'SELECT entity_label FROM entities WHERE entity_id = ?'; - $stmt = $db->query($queryEntities, array($initiator)); - $resultEntities = $stmt->fetchObject(); - $entities = $resultEntities->entity_label; - - if ($resultUser->lastname != '') { - $typistLabel = $resultUser->firstname.' '.$resultUser->lastname; + $diffList_frame = ''; + $category = $data['category_id']['value']; + + $onlyCC = ''; + if ($core->test_service('add_copy_in_indexing_validation', 'entities', false) && $_SESSION['user']['UserId'] != 'superadmin') { + $onlyCC = '&only_cc'; + } + $pathScriptTab = $_SESSION['config']['businessappurl'] + .'index.php?display=true&page=show_diffList_tab&module=entities&resId='.$s_id.'&collId='.$coll_id.'&fromDetail=true&category='.$category.'&roles='.urlencode($roles_str).$onlyCC; + + $diffList_frame .= '<div class="fa fa-share-alt DetailsTabFunc" id="DetailsGearTab" style="display:block !important;font-size:2em;padding-left: 15px;'; + if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { + $diffList_frame .= 'padding-right: 0px;height: 29px;'; + } else { + $diffList_frame .= 'padding-right: 15px;height: auto;'; + } + $diffList_frame .= '" title="'._DIFF_LIST.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'DetailsGearTab\',true);"><sup><span style="font-size: 10px;'; + $diffList_frame .= $styleBadge.' class="nbResZero">0</span></sup></div>'; + + echo $diffList_frame; + } + + //PRINT FOLDER TAB + if ($core->test_service('print_folder_doc', 'visa', false)) { + $printFolder_frame = ''; + require_once 'modules'.DIRECTORY_SEPARATOR.'visa'.DIRECTORY_SEPARATOR + .'class'.DIRECTORY_SEPARATOR + .'class_modules_tools.php'; + + $pathScriptTab = $_SESSION['config']['businessappurl'] + .'index.php?display=true&page=show_printFolder_tab&module=visa&resId=' + .$s_id.'&collId='.$coll_id.'&table='.$table; + $printFolder_frame .= '<div class="fa fa-print DetailsTabFunc" id="DetailsPrintTab" style="font-size:2em;padding-left: 15px;'; + if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { + $printFolder_frame .= 'padding-right: 0px;'; + } else { + $printFolder_frame .= 'padding-right: 15px;'; + } + $printFolder_frame .= '" title="'._PRINTFOLDER.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'DetailsPrintTab\',true);"> <sup><span style="font-size: 10px;'; + $printFolder_frame .= $styleBadge.'class="nbResZero">0</span></sup></div>'; + echo $printFolder_frame; + } + + //VISA TAB + if ($core->is_module_loaded('visa')) { + $visa_frame = ''; + $pathScriptTab = $_SESSION['config']['businessappurl'] + .'index.php?display=true&page=show_visa_tab&module=visa&resId='.$s_id.'&collId='.$coll_id.'&destination='.$destination.'&fromDetail=true'; + $visa_frame .= '<div id="visa_tab" class="fa fa-list-ol DetailsTabFunc" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._VISA_WORKFLOW.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'visa_tab\',true);"> <sup id="visa_tab_badge"></sup>'; + $visa_frame .= '</div>'; + + //LOAD TOOLBAR BADGE + $toolbarBagde_script = $_SESSION['config']['businessappurl'].'index.php?display=true&module=visa&page=load_toolbar_visa&resId='.$s_id.'&collId='.$coll_id; + $visa_frame .= '<script>loadToolbarBadge(\'visa_tab\',\''.$toolbarBagde_script.'\');</script>'; + + echo $visa_frame; + } + + //AVIS TAB + if ($core->is_module_loaded('avis')) { + $avis_frame = ''; + $pathScriptTab = $_SESSION['config']['businessappurl'] + .'index.php?display=true&page=show_avis_tab&module=avis&resId='.$s_id.'&collId='.$coll_id.'&fromDetail=true'; + $avis_frame .= '<div id="avis_tab" class="fa fa-commenting DetailsTabFunc" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._AVIS_WORKFLOW.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'avis_tab\',true);"> <sup id="avis_tab_badge"></sup>'; + $avis_frame .= '</div>'; + $avis_frame .= '<div id="page_circuit_avis" style="overflow-x: hidden;"></div>'; + + //LOAD TOOLBAR BADGE + $toolbarBagde_script = $_SESSION['config']['businessappurl'].'index.php?display=true&module=avis&page=load_toolbar_avis&resId='.$s_id.'&collId='.$coll_id; + $avis_frame .= '<script>loadToolbarBadge(\'avis_tab\',\''.$toolbarBagde_script.'\');</script>'; + + echo $avis_frame; + } + + //ATTACHMENTS TAB + if ($core->is_module_loaded('attachments')) { + $attachments_frame = ''; + $extraParam = '&attach_type_exclude=response_project,signed_response,outgoing_mail_signed,converted_pdf,outgoing_mail,print_folder'; + $pathScriptTab = $_SESSION['config']['businessappurl'] + .'index.php?display=true&page=show_attachments_details_tab&module=attachments&resId=' + .$s_id.'&collId='.$coll_id.'&fromDetail=attachments'.$extraParam; + $attachments_frame .= '<div class="fa fa-paperclip DetailsTabFunc" id="attachments_tab" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._ATTACHMENTS.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'attachments_tab\',true);"> <sup id="attachments_tab_badge"></sup>'; + $attachments_frame .= '</div>'; + + //LOAD TOOLBAR BADGE + $toolbarBagde_script = $_SESSION['config']['businessappurl'].'index.php?display=true&module=attachments&page=load_toolbar_attachments&resId='.$s_id.'&collId='.$coll_id; + $attachments_frame .= '<script>loadToolbarBadge(\'attachments_tab\',\''.$toolbarBagde_script.'\');</script>'; + + echo $attachments_frame; + } + + //RESPONSES TAB + if ($core->is_module_loaded('attachments')) { + $responses_frame = ''; + $extraParam = '&attach_type=response_project,outgoing_mail_signed,signed_response,outgoing_mail'; + $pathScriptTab = $_SESSION['config']['businessappurl'] + .'index.php?display=true&page=show_attachments_details_tab&module=attachments&fromDetail=response&resId=' + .$s_id.'&collId='.$coll_id.$extraParam; + $responses_frame .= '<div id="responses_tab" class="fa fa-mail-reply DetailsTabFunc" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._DONE_ANSWERS.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'responses_tab\',true);"> <sup id="responses_tab_badge"></sup>'; + $responses_frame .= '</div>'; + + //LOAD TOOLBAR BADGE + $toolbarBagde_script = $_SESSION['config']['businessappurl'].'index.php?display=true&module=attachments&page=load_toolbar_attachments&responses&resId='.$s_id.'&collId='.$coll_id; + $responses_frame .= '<script>loadToolbarBadge(\'responses_tab\',\''.$toolbarBagde_script.'\');</script>'; + + echo $responses_frame; + } + + //HISTORY TAB + if ($viewDocHistory) { + $history_frame = ''; + + $pathScriptTab = $_SESSION['config']['businessappurl'] + .'index.php?display=true&page=show_history_tab&resId=' + .$s_id.'&collId='.$coll_id; + $history_frame .= '<div class="fa fa-history DetailsTabFunc" id="DetailsLineChartTab" style="font-size:2em;padding-left: 15px;'; + if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { + $history_frame .= 'padding-right: 0px;'; + } else { + $history_frame .= 'padding-right: 15px;'; + } + $history_frame .= '" title="'._DOC_HISTORY.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'DetailsLineChartTab\',true);"> <sup><span style="font-size: 10px;'; + $history_frame .= $styleBadge.' class="nbResZero">0</span></sup>'; + $history_frame .= '</div>'; + echo $history_frame; + } + + //NOTES TAB + if ($core->is_module_loaded('notes')) { + $note = ''; + $pathScriptTab = $_SESSION['config']['businessappurl'] + .'index.php?display=true&module=notes&page=notes&identifier=' + .$s_id.'&origin=document&coll_id='.$coll_id.'&load&size=full'; + $note .= '<div id="notes_tab" class="fa fa-pencil DetailsTabFunc" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._NOTES.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'notes_tab\',true);"> <sup id="notes_tab_badge"></sup>'; + $note .= '</div>'; + + //LOAD TOOLBAR BADGE + $toolbarBagde_script = $_SESSION['config']['businessappurl'].'index.php?display=true&module=notes&page=load_toolbar_notes&resId='.$s_id.'&collId='.$coll_id; + $note .= '<script>loadToolbarBadge(\'notes_tab\',\''.$toolbarBagde_script.'\');</script>'; + + echo $note; + } + + //CASES TAB + if ($core->is_module_loaded('cases') == true) { + $case_frame = ''; + $pathScriptTab = $_SESSION['config']['businessappurl'] + .'index.php?display=true&page=show_case_tab&module=cases&collId='.$coll_id.'&resId='.$s_id; + $case_frame .= '<div id="cases_tab" class="fa fa-suitcase DetailsTabFunc" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._CASE.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'cases_tab\',true);"> <sup id="cases_tab_badge"></sup>'; + $case_frame .= '</div>'; + + //LOAD TOOLBAR BADGE + $toolbarBagde_script = $_SESSION['config']['businessappurl'].'index.php?display=true&module=cases&page=load_toolbar_cases&resId='.$s_id.'&collId='.$coll_id; + $case_frame .= '<script>loadToolbarBadge(\'cases_tab\',\''.$toolbarBagde_script.'\');</script>'; + + echo $case_frame; + } + + //SENDMAILS TAB + if ($core->test_service('sendmail', 'sendmail', false) === true) { + $sendmail = ''; + $pathScriptTab = $_SESSION['config']['businessappurl'].'index.php?display=true&module=sendmail&page=sendmail&identifier='.$s_id.'&origin=document&coll_id='.$coll_id.'&load&size=medium'; + + $sendmail .= '<div id="sendmail_tab" class="fa fa-envelope DetailsTabFunc" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._SENDED_EMAILS.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'sendmail_tab\',true);"> <sup id="sendmail_tab_badge"></sup>'; + $sendmail .= '</div>'; + + //LOAD TOOLBAR BADGE + $toolbarBagde_script = $_SESSION['config']['businessappurl'].'index.php?display=true&module=sendmail&page=load_toolbar_sendmail&resId='.$s_id.'&collId='.$coll_id; + $sendmail .= '<script>loadToolbarBadge(\'sendmail_tab\',\''.$toolbarBagde_script.'\');</script>'; + + echo $sendmail; + } + + //VERSIONS TAB + if ($core->test_service('view_version_letterbox', 'apps', false)) { + $version = ''; + $versionTable = $security->retrieve_version_table_from_coll_id( + $coll_id + ); + $selectVersions = 'SELECT res_id FROM ' + .$versionTable." WHERE res_id_master = ? and status <> 'DEL' order by res_id desc"; + + $stmt = $db->query($selectVersions, array($s_id)); + $nb_versions_for_title = $stmt->rowCount(); + $lineLastVersion = $stmt->fetchObject(); + $lastVersion = $lineLastVersion->res_id; + if ($lastVersion != '') { + $objectId = $lastVersion; + $objectTable = $versionTable; + } else { + $objectTable = $security->retrieve_table_from_coll( + $coll_id + ); + $objectId = $s_id; + $_SESSION['cm']['objectId4List'] = $s_id; + } + if ($nb_versions_for_title == 0) { + $extend_title_for_versions = '0'; + $class = 'nbResZero'; + if ($nbAttach == 0 && strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { + $style = 'visibility:hidden;font-size: 10px;'; } else { - $typistLabel = $typist; + $style = 'display:none;font-size: 10px;'; } - if ($core->is_module_loaded('cases') == true) { - require_once('modules/cases/class/class_modules_tools.php'); - $case = new cases(); - if ($res->case_id != '') { - $case_properties = $case->get_case_info($res->case_id); - } - } + $style2 = 'color:#9AA7AB;font-size:2em;padding-left: 15px;padding-right: 15px;'; + } else { + $extend_title_for_versions = $nb_versions_for_title; + $class = 'nbRes'; + $style = 'font-size: 10px;'; + } + $_SESSION['cm']['resMaster'] = ''; - foreach (array_keys($indexes) as $key) { - if (preg_match('/^custom/', $key)) { - $tmp = 'doc_'.$key; - } else { - $tmp = $key; - } - if ($indexes[$key]['type'] == 'date') { - $res->{$tmp} = functions::format_date_db($res->{$tmp}, false); - } - $indexes[$key]['value'] = $res->{$tmp}; - $indexes[$key]['show_value'] = $res->{$tmp}; - if ($indexes[$key]['type'] == 'string') { - $indexes[$key]['show_value'] = functions::show_string($res->{$tmp}); - } elseif ($indexes[$key]['type'] == 'date') { - $indexes[$key]['show_value'] = functions::format_date_db($res->{$tmp}, true); - } - } + $pathScriptTab = $_SESSION['config']['businessappurl'] + .'index.php?display=true&page=show_versions_tab&collId='.$coll_id.'&resId='.$s_id.'&objectTable='.$objectTable; + $version .= '<div class="fa fa-code-fork DetailsTabFunc" id="DetailsCodeForkTab" style="font-size:2em;padding-left: 15px;'; + if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { + $version .= 'padding-right: 0px;'; + } else { + $version .= 'padding-right: 15px;'; + } + $version .= '"title="'._VERSIONS.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'DetailsCodeForkTab\',true);">'; + $version .= ' <sup><span id="nbVersions" '; + $version .= 'class="'.$class.'" style="'.$styleBadge.'">'.$extend_title_for_versions.'</span></sup>'; + $version .= '</div>'; + echo $version; + } - $process_data = $is->get_process_data($coll_id, $s_id); - $status = $res->status; - if (!empty($status)) { - require_once('core/class/class_manage_status.php'); - $status_obj = new manage_status(); - $res_status = $status_obj->get_status_data($status); - if ($modify_doc && !$status_obj->can_be_modified($status)) { - $modify_doc = false; - } - if ($_SESSION['user']['UserId'] == 'superadmin') { - $modify_doc = true; - } - } - $mode_data = 'full'; - if ($modify_doc) { - $mode_data = 'form'; + //LINKS TAB + $Links = ''; + $pathScriptTab = $_SESSION['config']['businessappurl'].'index.php?display=true&page=show_links_tab'; + $Links .= '<div id="links_tab" class="fa fa-link DetailsTabFunc" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._LINK_TAB.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'links_tab\',true);"> <sup id="links_tab_badge"></sup>'; + $Links .= '</div>'; + + //LOAD TOOLBAR BADGE + $toolbarBagde_script = $_SESSION['config']['businessappurl'].'index.php?display=true&page=load_toolbar_links&resId='.$s_id.'&collId='.$coll_id; + $Links .= '<script>loadToolbarBadge(\'links_tab\',\''.$toolbarBagde_script.'\');</script>'; + echo $Links; ?> + + <div class="detailsDisplayDiv" id = "home-panel"> + <br/> + <form method="post" name="index_doc" id="index_doc" action="index.php?page=details&dir=indexing_searching&id=<?php functions::xecho($s_id); ?>"> + <div align="center"> + <?php + //TOOLBAR + $toolBar = ''; + if ($printDetails) { + $toolBar .= '<input type="button" class="button" name="print_details" id="print_details" value="'._PRINT_DETAILS.'" onclick="window.open(\''.$_SESSION['config']['businessappurl'].'index.php?display=true&page=print&id='.$s_id.'\', \'_blank\');" /> '; + } + + if ($putInValid) { + $toolBar .= '<input type="submit" class="button" value="'._PUT_DOC_ON_VALIDATION.'" name="put_doc_on_validation" onclick="return(confirm(\''._REALLY_PUT_DOC_ON_VALIDATION.'\n\r\n\r\'));" /> '; + } + + if ($delete_doc) { + $toolBar .= '<input type="submit" class="button" value="'._DELETE_DOC.'" name="delete_doc" onclick="return(confirm(\''._REALLY_DELETE.' '._THIS_DOC.' ?\n\r\n\r\'));" /> '; + } + + if ($modify_doc) { + $toolBar .= '<input type="submit" class="button" value="'._SAVE_MODIFICATION.'" name="submit_index_doc" /> '; + } + $toolBar .= '<input type="button" class="button" name="back_welcome" id="back_welcome" value="'._BACK_TO_WELCOME.'" onclick="window.top.location.href=\''.$_SESSION['config']['businessappurl'].'index.php\';" />'; + + echo $toolBar; ?> + </div> + <h2> + <span class="date"> + <b><?php echo _FILE_DATA; ?></b> + </span> + </h2> + <table cellpadding="2" cellspacing="2" border="0" class="block forms details" width="100%"> + <?php + $i = 0; + if (!$modify_doc) { + $data['process_limit_date']['readonly'] = true; + } + foreach (array_keys($data) as $key) { + if ($key != 'is_multicontacts' || ($key == 'is_multicontacts' && $data[$key]['show_value'] == 'Y')) { + if ($i % 2 != 1 || $i == 0) { // pair + echo '<tr class="col">'; } - foreach (array_keys($indexes) as $key) { - $indexes[$key]['opt_index'] = true; - if ($indexes[$key]['type_field'] == 'select') { - for ($i = 0; $i < count($indexes[$key]['values']); ++$i) { - if ($indexes[$key]['values'][$i]['id'] == $indexes[$key]['value']) { - $indexes[$key]['show_value'] = $indexes[$key]['values'][$i]['label']; - break; - } - } - } - if (!$modify_doc) { - $indexes[$key]['readonly'] = true; - $indexes[$key]['type_field'] = 'input'; - } else { - $indexes[$key]['readonly'] = false; - } + $folder_id = ''; + if ($key == 'folder' && $data[$key]['show_value'] != '') { + $folderTmp = $data[$key]['show_value']; + $find1 = strpos($folderTmp, '('); + $folder_id = substr($folderTmp, $find1, strlen($folderTmp)); + $folder_id = str_replace('(', '', $folder_id); + $folder_id = str_replace(')', '', $folder_id); } - $data = get_general_data($coll_id, $s_id, $mode_data, $param_data); - - $detailsExport = '<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd" >'; - $detailsExport .= '<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">'; - $detailsExport .= "<head><title>Maarch Details</title><meta http-equiv='Content-Type' content='text/html; charset=UTF-8' /><meta content='fr' http-equiv='Content-Language'/><meta http-equiv='cache-control' content='no-cache'/><meta http-equiv='pragma' content='no-cache'><meta http-equiv='Expires' content='0'></head>"; - $detailsExport .= "<body onload='javascript:window.print();' style='font-size:8pt'>"; ?> - <div class="block"> - <b> - <p id="back_list"> - <?php - if (!isset($_POST['up_res_id']) || !$_POST['up_res_id']) { - if ($_SESSION['indexation'] == false) { - echo '<a href="#" onclick="document.getElementById(\'ariane\').childNodes[document.getElementById(\'ariane\').childNodes.length-2].click();"><i class="fa fa-arrow-circle-left fa-2x" title="'._BACK.'"></i></a>'; - } - } ?> - </p> - <p id="viewdoc"> - <?php if ($info_mail->filename) { - ?> - <a href="index.php?display=true&editingMode=true&dir=indexing_searching&page=view_resource_controler&id=<?php functions::xecho($s_id); ?>" - target="_blank"><i class="fa fa-download fa-2x" title="<?php echo _VIEW_DOC; ?>"></i></a> - <?php - } ?> - - </p> - </b> - </div> - <br/> - <div class="whole-panel"> + //GET DATA ICON + echo '<th align="center" class="picto" >'; - <?php - if ($nbAttach == 0 && strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { - $style = 'visibility:hidden;"'; - } else { - $style = 'display:none;"'; - } ?> - <?php $detailsExport .= '<h1><center>'._DETAILS_PRINT.' : '.$s_id.'</center></h1><hr>'; ?> + $iconLabel = $data[$key]['label']; + $iconLinkAttr = ''; - <div class="fa fa-info-circle detailsTab DetailsTabFunc TabSelected " id="DetailstachometerTab" style="font-size:2em;padding-left: 15px;<?php if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { - echo 'padding-right: 0px;'; - } else { - echo 'padding-right: 15px;'; - } ?>" title="<?php echo _PROPERTIES; ?>" onclick="tabClicked('DetailstachometerTab',false);"> - <sup><span style="font-size: 10px;<?php echo $style; ?>" class="nbResZero">0</span></sup></div> - - - <?php - //SERVICE TO VIEW TECHNICAL INDEX - if ($viewTechnicalInfos) { - $uniqueString = ''; - $pathScriptTab = 'index.php?display=true&page=show_technicalInfo_tab'; - $uniqueString .= '<div class="fa fa-cogs DetailsTabFunc" id="DetailsCogdTab" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._TECHNICAL_INFORMATIONS.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'DetailsCogdTab\',true);"><sup><span style="font-size: 10px;display: none;" class="nbResZero"></span></sup></div>'; - } - $uniqueString .= '<div class="fa fa-share-alt DetailsTabFunc" id="DetailsGearTab" " style="display:block !important;font-size:2em;padding-left: 15px;'; - if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { - $uniqueString .= 'padding-right: 0px;height:29px;'; + if ($key == 'is_multicontacts') { + echo '<i class="fa fa-book fa-2x"></i>'; + } elseif (isset($data[$key]['img'])) { + $iconCode = $data[$key]['img']; + + $iconShow = "<i class='fa fa-{$iconCode} fa-2x' title='{$iconLabel}'></i>"; + + if ($folder_id != '') { + $iconShow = "<a href='index.php?page=show_folder&module=folder&id={$folder_id}'>".$iconShow.'</a>'; + } elseif (in_array($key, ['dest_contact_id', 'exp_contact_id'])) { + $inputValue = $data[$key]['value']; + $inputAddressValue = $data[$key]['address_value']; + + $iconShow = "<a href=\"#\" onclick=\"window.open('index.php?display=true&dir=my_contacts&page=info_contact_iframe&mode=view&popup&contactid={$inputValue}&addressid={$inputAddressValue}', 'contact_info', 'height=800, width=1000,scrollbars=yes,resizable=yes');\">".$iconShow.'</a>'; + } elseif (in_array($key, ['dest_user_id', 'exp_user_id'])) { + $inputValue = $data[$key]['value']; + $inputAddressValue = $data[$key]['address_value']; + + $iconShow = "<a style='cursor:pointer;' onclick=\"window.open('index.php?display=true&page=user_info&id={$inputValue}', 'contact_info', 'height=400, width=600,scrollbars=yes,resizable=yes');\">".$iconShow.'</a>'; + } + + echo $iconShow; } else { - $uniqueString .= 'padding-right: 15px;height:auto;'; + echo "<i class='fa fa-question-circle-o fa-2x' title='{$iconLabel}'></i>"; } - require_once('modules/entities/class/class_manage_listdiff.php'); - $diff_list = new diffusion_list(); - $_SESSION['details']['diff_list'] = $diff_list->get_listinstance($s_id, false, $coll_id); - $_SESSION['details']['difflist_type'] = $diff_list->get_difflist_type($_SESSION['details']['diff_list']['difflist_type']); - $roles = $diff_list->list_difflist_roles(); - $roles_str = json_encode($roles); - $category = $data['category_id']['value']; - $pathScriptTab = 'index.php?display=true&page=show_diffList_tab&module=entities&resId='.$s_id.'&collId='.$coll_id.'&fromDetail=true&category='.$category.'&roles='.urlencode($roles_str).$onlyCC; - $uniqueString .= '" title="'._DIFF_LIST.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'DetailsGearTab\',true);"><sup><span style="font-size: 10px;'; - if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { - $style = 'visibility:hidden;"'; + echo '</th>'; + // END DATA ICON + + //GET DATA LABEL + echo '<td align="left" width="200px">'; + echo $data[$key]['label']; + echo '</td>'; + //END DATA LABEL + + //GET DATA INPUT + echo '<td>'; + if (!isset($data[$key]['readonly']) || $data[$key]['readonly'] == true) { + $disabledAttr = 'disabled="disabled"'; + $disabledClass = 'readonly'; } else { - $style = 'display:none;"'; - } - $uniqueString .= $style.' class="nbResZero">0</span></sup></div>'; - - if ($core->test_service('print_folder_doc', 'visa', false)) { - require_once 'modules'.DIRECTORY_SEPARATOR.'visa'.DIRECTORY_SEPARATOR - .'class'.DIRECTORY_SEPARATOR - .'class_modules_tools.php'; - - $pathScriptTab = $_SESSION['config']['businessappurl'] - .'index.php?display=true&page=show_printFolder_tab&module=visa&resId=' - .$s_id.'&collId='.$coll_id.'&table='.$table; - $uniqueString .= '<div class="fa fa-print DetailsTabFunc" id="DetailsPrintTab" style="font-size:2em;padding-left: 15px;'; - if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { - $uniqueString .= 'padding-right: 0px;'; - } else { - $uniqueString .= 'padding-right: 15px;'; - } - $uniqueString .= '" title="'._PRINTFOLDER.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'DetailsPrintTab\',true);"> <sup><span style="font-size: 10px;'; - if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { - $style = 'visibility:hidden;"'; - } else { - $style = 'display:none;"'; - } - $uniqueString .= $style.'class="nbResZero">0</span></sup></div>'; - } - - if ($core->is_module_loaded('visa')) { - $pathScriptTab = 'index.php?display=true&page=show_visa_tab&module=visa&resId='.$s_id.'&collId='.$coll_id.'&destination='.$destination.'&fromDetail=true'; - $uniqueString .= '<div id="visa_tab" class="fa fa-list-ol DetailsTabFunc " style="font-size:2em;padding-left: 15px;'; - $uniqueString .= 'padding-right: 15px;" title="'._VISA_WORKFLOW.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'visa_tab\',true);"> <sup id="visa_tab_badge"></sup></div>'; - //LOAD TOOLBAR BADGE - $toolbarBagde_script = 'index.php?display=true&module=visa&page=load_toolbar_visa&resId='.$s_id.'&collId='.$coll_id; - $uniqueString .= '<script>loadToolbarBadge(\'visa_tab\',\''.$toolbarBagde_script.'\');</script>'; + $disabledAttr = ''; + $disabledClass = ''; } + if ($data[$key]['field_type'] == 'textfield') { + $inputValue = $data[$key]['show_value']; + + if (in_array($key, ['exp_contact_id', 'dest_contact_id', 'exp_user_id', 'dest_user_id'])) { + unset($_SESSION['adresses']); + + echo "<textarea name='contact' id='contact' rows='3' class='{$disabledClass}' {$disabledAttr}/>{$inputValue}</textarea>"; + + $inputValue = $data[$key]['value']; + $inputAddressValue = $data[$key]['address_value']; + echo "<input type='hidden' name='contactid' id='contactid' value='{$inputValue}' title='{$inputValue}' alt='{$inputValue}' size='40' />"; + echo "<input type='hidden' name='addressid' id='addressid' value='{$inputAddressValue}' title='{$inputAddressValue}' alt='{$inputAddressValue}' size='40' />"; + echo "<input type='hidden' name='contact_type' id='contact_type' value='{$key}' title='{$key}' alt='{$key}' size='40' />"; + + //initialize autocomplete + echo '<div id="show_contacts" class="autocomplete autocompleteIndex" style="width:200px;"></div><div class="autocomplete autocompleteIndex" id="searching_autocomplete" style="display: none;text-align:left;padding:5px;width:200px;"><i class="fa fa-spinner fa-spin" aria-hidden="true"></i> chargement ...</div></span>'; + echo '<script>launch_autocompleter_contacts_v2(\''.$_SESSION['config']['businessappurl'].'index.php?display=true&dir=indexing_searching&page=autocomplete_contacts\', \'\', \'\', \'\', \'contactid\', \'addressid\');</script>'; + } elseif ($key == 'is_multicontacts') { + $_SESSION['adresses']['to'] = array(); + $_SESSION['adresses']['addressid'] = array(); + $_SESSION['adresses']['contactid'] = array(); + + $path_to_script = $_SESSION['config']['businessappurl'] + .'index.php?display=true&dir=indexing_searching&page=add_multi_contacts&coll_id='.$collId; + + if (empty($disabledAttr)) { + echo "<div id='input_multi_contact_add' style=''>"; + echo "<input type='text' name='{$key}' id='{$key}' value='' title='' alt='' size='40' style='width:140px;'/>"; + echo '<div id="multiContactList" class="autocomplete" style="width:200px;"></div><div class="autocomplete autocompleteIndex" id="searching_autocomplete_multi" style="display: none;text-align:left;padding:5px;width:200px;"><i class="fa fa-spinner fa-spin" aria-hidden="true"></i> chargement ...</div></span>'; + echo '<script type="text/javascript">addMultiContacts(\'is_multicontacts\', \'multiContactList\', \'' + .$_SESSION['config']['businessappurl'] + .'index.php?display=true&dir=indexing_searching&page=autocomplete_contacts\', \'Input\', \'2\', \'contactid\', \'addressid\');</script>'; + echo ' <input type="button" name="add" value=" '._ADD + .' " id="valid_multi_contact" class="button" onclick="updateMultiContacts(\''.$path_to_script + .'&mode=adress\', \'add\', document.getElementById(\'is_multicontacts\').value, ' + .'\'to\', false, document.getElementById(\'addressid\').value, document.getElementById(\'contactid\').value);" />'; + echo '</div>'; + } - if ($core->is_module_loaded('avis')) { - $pathScriptTab = 'index.php?display=true&page=show_avis_tab&module=avis&resId='.$s_id.'&collId='.$coll_id.'&fromDetail=true'; - $uniqueString .= '<div id="avis_tab" class="fa fa-commenting DetailsTabFunc " style="font-size:2em;padding-left: 15px;'; - $uniqueString .= 'padding-right: 15px;" title="'._AVIS_WORKFLOW.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'avis_tab\',true);"> <sup id="avis_tab_badge"></sup></div><div id="page_circuit_avis" style="overflow-x: hidden;">'; - $uniqueString .= '</div>'; + echo '<div name="to" id="to" class="multicontactInput">'; - //LOAD TOOLBAR BADGE - $toolbarBagde_script = 'index.php?display=true&module=avis&page=load_toolbar_avis&resId='.$s_id.'&collId='.$coll_id; - $uniqueString .= '<script>loadToolbarBadge(\'avis_tab\',\''.$toolbarBagde_script.'\');</script>'; - } + $nbContacts = count($data[$key]['multi']['contact_id']); + if ($nbContacts > 0) { + for ($icontacts = 0; $icontacts < $nbContacts; ++$icontacts) { + $_SESSION['adresses']['to'][] = $data[$key]['multi']['arr_values'][$icontacts]; + $_SESSION['adresses']['addressid'][] = $data[$key]['multi']['address_id'][$icontacts]; + $_SESSION['adresses']['contactid'][] = $data[$key]['multi']['contact_id'][$icontacts]; - if ($core->is_module_loaded('attachments')) { - $extraParam = '&attach_type_exclude=response_project,signed_response,outgoing_mail_signed,converted_pdf,outgoing_mail,print_folder'; - $pathScriptTab = 'index.php?display=true&page=show_attachments_details_tab&module=attachments&resId=' - .$s_id.'&collId='.$coll_id.'&fromDetail=attachments'.$extraParam; - $uniqueString .= '<div class="fa fa-paperclip DetailsTabFunc " id="attachments_tab" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._ATTACHMENTS.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'attachments_tab\',true);"> <sup id="attachments_tab_badge"></sup></div>'; - //LOAD TOOLBAR BADGE - $toolbarBagde_script = 'index.php?display=true&module=attachments&page=load_toolbar_attachments&resId='.$s_id.'&collId='.$coll_id; - $uniqueString .= '<script>loadToolbarBadge(\'attachments_tab\',\''.$toolbarBagde_script.'\');</script>'; - } - - if ($core->is_module_loaded('attachments')) { - $extraParam = '&attach_type=response_project,outgoing_mail_signed,signed_response,outgoing_mail'; - $pathScriptTab = 'index.php?display=true&page=show_attachments_details_tab&module=attachments&fromDetail=response&resId=' - .$s_id.'&collId='.$coll_id.$extraParam; - $uniqueString .= '<div id="responses_tab" class="fa fa-mail-reply DetailsTabFunc" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._DONE_ANSWERS.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'responses_tab\',true);"> <sup id="responses_tab_badge"></sup></div>'; - //LOAD TOOLBAR BADGE - $toolbarBagde_script = 'index.php?display=true&module=attachments&page=load_toolbar_attachments&responses&resId='.$s_id.'&collId='.$coll_id; - $uniqueString .= '<script>loadToolbarBadge(\'responses_tab\',\''.$toolbarBagde_script.'\');</script>'; - } + echo '<div class="multicontact_element" style="display:table;width:200px;" id="'.$icontacts.'_'.$data[$key]['multi']['contact_id'][$icontacts].'"><div style="display:table-cell;width:100%;vertical-align:middle;">'.$data[$key]['multi']['arr_values'][$icontacts].'</div>'; - if ($viewDocHistory) { - $pathScriptTab = 'index.php?display=true&page=show_history_tab&resId=' - .$s_id.'&collId='.$coll_id; - $uniqueString .= '<div class="fa fa-history DetailsTabFunc" id="DetailsLineChartTab" style="font-size:2em;padding-left: 15px;'; - if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { - $uniqueString .= 'padding-right: 0px;'; + if (empty($disabledAttr)) { + echo ' <div class="email_delete_button" style="display:table-cell;vertical-align:middle" id="'.$icontacts.'"' + .'onclick="updateMultiContacts(\''.$path_to_script + .'&mode=adress\', \'del\', \''.$data[$key]['multi']['arr_values'][$icontacts].'\', \'to\', this.id, \''.$data[$key]['multi']['address_id'][$icontacts].'\', \''.$data[$key]['multi']['contact_id'][$icontacts].'\');" alt="'._DELETE.'" title="' + ._DELETE.'">x</div>'; + echo '</div>'; + } else { + echo ' <div class="email_delete_button" style="display:none;vertical-align:middle" id="'.$icontacts.'"' + .'onclick="" alt="'._DELETE.'" title="' + ._DELETE.'">x</div>'; + echo '</div>'; + } + } + } + echo '</div>'; + echo "<input type='hidden' name='contactid' id='contactid' value='' title='' alt='' size='40' />"; + echo "<input type='hidden' name='addressid' id='addressid' value='' title='' alt='' size='40' />"; } else { - $uniqueString .= 'padding-right: 15px;'; + echo "<input type='text' name='{$key}' id='{$key}' value='{$inputValue}' title='{$inputValue}' alt='{$inputValue}' size='40' class='{$disabledClass}' {$disabledAttr}/>"; } - $uniqueString .= '" title="'._DOC_HISTORY.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'DetailsLineChartTab\',true);"> <sup><span style="font-size: 10px;'; - if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { - $style .= 'visibility:hidden;"'; - } else { - $style .= 'display:none;"'; + } elseif ($data[$key]['display'] == 'textarea') { + $inputValue = $data[$key]['show_value']; + + echo "<textarea name='{$key}' id='{$key}' rows='3' style='width: 200px; max-width: 200px;' class='{$disabledClass}' {$disabledAttr}>{$inputValue}</textarea>"; + } elseif ($data[$key]['field_type'] == 'date') { + $inputValue = $data[$key]['show_value']; + + echo "<input type='text' name='{$key}' id='{$key}' value='{$inputValue}' size='40' title='{$inputValue}' alt='{$inputValue}' class='{$disabledClass}' {$disabledAttr} onclick='showCalender(this);' />"; + } elseif ($data[$key]['field_type'] == 'select') { + $inputUrl = $_SESSION['config']['businessappurl']; + if ($key == 'type_id') { + $inputAttr = 'onchange="change_doctype_details(this.options[this.options.selectedIndex].value, \''.$_SESSION['config']['businessappurl'].'index.php?display=true&dir=indexing_searching&page=change_doctype_details\' , \''._DOCTYPE.' '._MISSING.'\');"'; + } elseif ($key == 'priority') { + $inputAttr = 'onchange="updateProcessDate(\''.$_SESSION['config']['businessappurl'].'index.php?display=true&dir=indexing_searching&page=update_process_date\', '.$s_id.')"'; } - $uniqueString .= $style.' class="nbResZero">0</span></sup></div>'; - } - if ($core->is_module_loaded('notes')) { - // $note = ''; - $pathScriptTab = 'index.php?display=true&module=notes&page=notes&identifier=' - .$s_id.'&origin=document&coll_id='.$coll_id.'&load&size=full'; - $uniqueString .= '<div id="notes_tab" class="fa fa-pencil DetailsTabFunc" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._NOTES.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');;tabClicked(\'notes_tab\',true);"> <sup id="notes_tab_badge"></sup></div>'; - //LOAD TOOLBAR BADGE - $toolbarBagde_script = 'index.php?display=true&module=notes&page=load_toolbar_notes&resId='.$s_id.'&collId='.$coll_id; - $uniqueString .= '<script>loadToolbarBadge(\'notes_tab\',\''.$toolbarBagde_script.'\');</script>'; - } + echo "<select id='{$key}' name='{$key}' class='{$disabledClass}' {$disabledAttr} {$inputAttr} >"; - //CASES TAB - if ($core->is_module_loaded('cases') == true) { - $pathScriptTab = 'index.php?display=true&page=show_case_tab&module=cases&collId='.$coll_id.'&resId='.$s_id; - $uniqueString .= '<div id="cases_tab" class="fa fa-suitcase DetailsTabFunc" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._CASE.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'cases_tab\',true);"> <sup id="cases_tab_badge"></sup></div>'; - //LOAD TOOLBAR BADGE - $toolbarBagde_script = 'index.php?display=true&module=cases&page=load_toolbar_cases&resId='.$s_id.'&collId='.$coll_id; - $uniqueString .= '<script>loadToolbarBadge(\'cases_tab\',\''.$toolbarBagde_script.'\');</script>'; - } + if ($key == 'type_id') { + if ($_SESSION['features']['show_types_tree'] == 'true') { + for ($k = 0; $k < count($data[$key]['select']); ++$k) { + $inputValue = $data[$key]['select'][$k]['label']; + echo "<optgroup class='doctype_level1' label='{$inputValue}'>"; - //SENDMAILS TAB - if ($core->test_service('sendmail', 'sendmail', false) === true) { - $pathScriptTab = 'index.php?display=true&module=sendmail&page=sendmail&identifier='.$s_id.'&origin=document&coll_id='.$coll_id.'&load&size=medium'; - $uniqueString .= '<div id="sendmail_tab" class="fa fa-envelope DetailsTabFunc" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._SENDED_EMAILS.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'sendmail_tab\',true);"> <sup id="sendmail_tab_badge"></sup></div>'; - //LOAD TOOLBAR BADGE - $toolbarBagde_script = 'index.php?display=true&module=sendmail&page=load_toolbar_sendmail&resId='.$s_id.'&collId='.$coll_id; - $uniqueString .= '<script>loadToolbarBadge(\'sendmail_tab\',\''.$toolbarBagde_script.'\');</script>'; - } - /// LINKS - if ($core->test_service('view_version_letterbox', 'apps', false)) { - //VERSIONS TAB - $versionTable = $security->retrieve_version_table_from_coll_id( - $coll_id - ); - $selectVersions = 'SELECT res_id FROM '.$versionTable." WHERE res_id_master = ? and status <> 'DEL' order by res_id desc"; - - $stmt = $db->query($selectVersions, array($s_id)); - $nb_versions_for_title = $stmt->rowCount(); - $lineLastVersion = $stmt->fetchObject(); - $lastVersion = $lineLastVersion->res_id; - if ($lastVersion != '') { - $objectId = $lastVersion; - $objectTable = $versionTable; + for ($j = 0; $j < count($data[$key]['select'][$k]['level2']); ++$j) { + $inputValue = $data[$key]['select'][$k]['level2'][$j]['label']; + echo "<optgroup class='doctype_level2' label=' {$inputValue}'>"; + + for ($l = 0; $l < count($data[$key]['select'][$k]['level2'][$j]['types']); ++$l) { + $inputValue = $data[$key]['select'][$k]['level2'][$j]['types'][$l]['label']; + $inputId = $data[$key]['select'][$k]['level2'][$j]['types'][$l]['id']; + + if ($data[$key]['value'] == $data[$key]['select'][$k]['level2'][$j]['types'][$l]['id']) { + $inputAttr = 'selected="selected"'; + } else { + $inputAttr = ''; + } + echo "<option value='{$inputId}' {$inputAttr}> {$inputValue}</option>"; + } + echo '</optgroup>'; + } + echo '</optgroup>'; + } + } else { + for ($k = 0; $k < count($data[$key]['select']); ++$k) { + $inputValue = $data[$key]['select'][$k]['LABEL']; + $inputId = $data[$key]['select'][$k]['ID']; + + if ($data[$key]['value'] == $data[$key]['select'][$k]['ID']) { + $inputAttr = 'selected="selected"'; + } else { + $inputAttr = ''; + } + echo "<option value='{$inputId}' {$inputAttr}>{$inputValue}</option>"; + } + } } else { - $objectTable = $security->retrieve_table_from_coll( - $coll_id - ); - $objectId = $s_id; - $_SESSION['cm']['objectId4List'] = $s_id; + for ($k = 0; $k < count($data[$key]['select']); ++$k) { + $inputValue = $data[$key]['select'][$k]['LABEL']; + $inputId = $data[$key]['select'][$k]['ID']; + + if ($data[$key]['value'] == $data[$key]['select'][$k]['ID']) { + $inputAttr = 'selected="selected"'; + } else { + $inputAttr = ''; + } + echo "<option value='{$inputId}' {$inputAttr}>{$inputValue}</option>"; + } } - if ($nb_versions_for_title == 0) { - $extend_title_for_versions = '0'; - $class = 'nbResZero'; - if ($nbAttach == 0 && strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { - $style = 'visibility:hidden;font-size: 10px;'; + echo '</select>'; + } elseif ($data[$key]['field_type'] == 'radio') { + for ($k = 0; $k < count($data[$key]['radio']); ++$k) { + $inputValue = $data[$key]['radio'][$k]['LABEL']; + $inputId = $data[$key]['radio'][$k]['ID']; + + if ($data[$key]['value'] == $data[$key]['radio'][$k]['ID']) { + $inputAttr = 'checked'; } else { - $style = 'display:none;font-size: 10px;'; + $inputAttr = ''; } - $style2 = 'color:#9AA7AB;font-size:2em;padding-left: 15px;padding-right: 15px;'; - } else { - $extend_title_for_versions = $nb_versions_for_title; - $class = 'nbRes'; - $style = 'font-size: 10px;'; + echo "<input type='radio' name='{$key}' id='{$key}_{$inputId}' value='{$inputId}' class='{$disabledClass}' {$disabledAttr} {$inputAttr}/>{$inputValue}"; } - $_SESSION['cm']['resMaster'] = ''; - - $pathScriptTab = 'index.php?display=true&page=show_versions_tab&collId='.$coll_id.'&resId='.$s_id.'&objectTable='.$objectTable; - $uniqueString .= '<div class="fa fa-code-fork DetailsTabFunc" id="DetailsCodeForkTab" style="font-size:2em;padding-left: 15px;'; - if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { - $uniqueString .= 'padding-right: 0px;'; + } elseif ($data[$key]['field_type'] == 'autocomplete') { + if ($key == 'folder' && $core->is_module_loaded('folder') && ($core->test_service('associate_folder', 'folder', false) == 1)) { + $inputValue = $data['folder']['show_value']; + echo "<input type='text' name='folder' id='folder' onblur='' value='{$inputValue}' class='{$disabledClass}' {$disabledAttr}/>"; + echo '<div id="show_folder" class="autocomplete"></div>'; + echo '<script type="text/javascript">initList(\'folder\', \'show_folder\',\''.$_SESSION['config']['businessappurl'].'index.php?display=true&module=folder&page=autocomplete_folders&mode=folder\', \'Input\', \'2\');</script>'; } else { - $uniqueString .= 'padding-right: 15px;'; + $inputValue = $data['folder']['show_value']; + echo "<input type='text' name='folder' id='folder' class='readonly' onblur='' value='{$inputValue}' readonly='readonly'/>"; } - $uniqueString .= '"title="'._VERSIONS.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'DetailsCodeForkTab\',true);">'; - $uniqueString .= ' <sup><span id="nbVersions" '; - if (strpos($_SERVER['HTTP_USER_AGENT'], 'Chrome')) { - $style .= 'visibility:hidden;"'; - } else { - $style .= 'display:none;"'; + } elseif ($data[$key]['display'] == 'textinput') { + $inputValue = $data[$key]['show_value']; + + echo "<input type='text' name='{$key}' id='{$key}' value='{$inputValue}' title='{$inputValue}' alt='{$inputValue}' size='40' class='{$disabledClass}' {$disabledAttr}/>"; + + if ($key == 'type_id') { + $inputValue = $data[$key]['value']; + echo "<input type='hidden' name='{$key}' id='{$key}' value='{$inputValue}' title='{$inputValue}' alt='{$inputValue}' size='40' readonly='readonly' class='readonly'/>"; } - $uniqueString .= 'class="'.$class.'" style="'.$style.'">'.$extend_title_for_versions.'</span></sup>'; - $uniqueString .= '</div>'; - } - //LINKS TAB - $pathScriptTab = 'index.php?display=true&page=show_links_tab'; - $uniqueString .= '<div id="links_tab" class="fa fa-link DetailsTabFunc" style="font-size:2em;padding-left: 15px;padding-right: 15px;" title="'._LINK_TAB.'" onclick="loadSpecificTab(\'uniqueDetailsIframe\',\''.$pathScriptTab.'\');tabClicked(\'links_tab\',true);"> <sup id="links_tab_badge"></sup>'; - $uniqueString .= '</div>'; - - //LOAD TOOLBAR BADGE - $toolbarBagde_script = 'index.php?display=true&page=load_toolbar_links&resId='.$s_id.'&collId='.$coll_id; - $uniqueString .= '<script>loadToolbarBadge(\'links_tab\',\''.$toolbarBagde_script.'\');</script>'; - echo $uniqueString; ?> - - <div class="detailsDisplayDiv" id = "home-panel"> - - <br/> - <form method="post" name="index_doc" id="index_doc" action="index.php?page=details&dir=indexing_searching&id=<?php functions::xecho($s_id); ?>"> - <div align="center"> - <?php - //TOOLBAR - $toolBar = ''; - if ($printDetails) { - $toolBar .= '<input type="button" class="button" name="print_details" id="print_details" value="'._PRINT_DETAILS.'" onclick="window.open(\''.$_SESSION['config']['businessappurl'].'index.php?display=true&page=print&id='.$s_id.'\', \'_blank\');" /> '; } - if ($putInValid) { - $toolBar .= '<input type="submit" class="button" value="'._PUT_DOC_ON_VALIDATION.'" name="put_doc_on_validation" onclick="return(confirm(\''._REALLY_PUT_DOC_ON_VALIDATION.'\n\r\n\r\'));" /> '; - } - if ($core->test_service('delete_document_in_detail', 'apps', false)) { - $toolBar .= '<input type="submit" class="button" value="'._DELETE_DOC.'" name="delete_doc" onclick="return(confirm(\''._REALLY_DELETE.' '._THIS_DOC.' ?\n\r\n\r\'));" /> '; - } + echo '</td>'; + //END DATA INPUT - if ($modify_doc) { - $toolBar .= '<input type="submit" class="button" value="'._SAVE_MODIFICATION.'" name="submit_index_doc" /> '; + if ($i % 2 == 1 && $i != 0) { // impair + echo '</tr>'; + } else { + if ($i + 1 == count($data)) { + echo '<td colspan="2"> </td></tr>'; + } } - $toolBar .= '<input type="button" class="button" name="back_welcome" id="back_welcome" value="'._BACK_TO_WELCOME.'" onclick="window.top.location.href=\''.$_SESSION['config']['businessappurl'].'index.php\';" />'; - - echo $toolBar; ?> - </div> - <h2> - <span class="date"> - <?php $detailsExport .= '<h2>'._FILE_DATA.'</h2>'; ?> - <b><?php echo _FILE_DATA; ?></b> - </span> - </h2> - <?php $detailsExport .= "<table cellpadding='2' cellspacing='0' border='1' class='block forms details' width='100%'>"; ?> - <table cellpadding="2" cellspacing="2" border="0" class="block forms details" width="100%" id="informations-panel"> + ++$i; + } + } + //OTHER DATAS STATUS, CHRONO NUMBER + echo '<tr class="col">'; + + //STATUS + echo '<th align="left" class="picto">'; + $statusId = $res_status['ID']; + $statusLabel = $res_status['LABEL']; + $iconClass = substr($res_status['IMG_SRC'], 0, 2); + $iconCode = $res_status['IMG_SRC']; + + echo "<i class='{$iconClass} {$iconCode} {$iconClass}-2x' alt='{$statusLabel}' title='$statusLabel'></i>"; + echo '</th>'; + echo '<td align="left" width="200px">'; + echo _STATUS; + echo '</td>'; + echo '<td>'; + echo "<input type='text' class='readonly' readonly='readonly' value='{$statusLabel}' title='{$statusId}' size='40'"; + echo '</td>'; + + //CHRONO NUMBER + echo '<th align="left" class="picto">'; + echo '<i class="fa fa-compass fa-2x" title="'._CHRONO_NUMBER.'" ></i>'; + echo '</th>'; + echo '<td align="left" width="200px">'; + echo _CHRONO_NUMBER; + echo '</td>'; + echo '<td>'; + echo "<input type='text' class='readonly' readonly='readonly' value='{$chrono_number}' title='{$chrono_number}' alt='{$chrono_number}' size='40'"; + echo '</td>'; + echo '</tr>'; + + //OTHER DATAS INITIATOR, TYPIST + echo '<tr class="col">'; + + //INITIATOR + echo '<th align="left" class="picto">'; + echo '<i class="fa fa-sitemap fa-2x" title="'._INITIATOR.'"></i>'; + echo '</th>'; + echo '<td align="left" width="200px">'; + echo _INITIATOR; + echo '</td>'; + echo '<td>'; + echo "<textarea rows='2' style='width: 200px; max-width: 200px;' class='readonly' readonly='readonly'>{$entities}</textarea>"; + echo '</td>'; + + //TYPIST + echo '<th align="left" class="picto">'; + echo '<i class="fa fa-user fa-2x" title="'._TYPIST.'"></i>'; + echo '</th>'; + echo '<td align="left" width="200px">'; + echo _TYPIST; + echo '</td>'; + echo '<td>'; + echo "<input type='text' class='readonly' readonly='readonly' value='{$typistLabel}' title='{$typistLabel}' alt='{$typistLabel}' size='40'"; + echo '</td>'; + echo '</tr>'; + echo '</table>'; + //END GENERAL DATAS?> + + <div id="opt_indexes"> + <?php if (count($indexes) > 0 || ($core->is_module_loaded('tags') && ($core->test_service('tag_view', 'tags', false) == 1)) || ($core->is_module_loaded('thesaurus') && ($core->test_service('thesaurus_view', 'thesaurus', false) == 1))) { + ?> + <br/> + <h2> + <span class="date"> + <b><?php echo _OPT_INDEXES; ?></b> + </span> + </h2> + <br/> + <div class="block forms details"> + <table cellpadding="2" cellspacing="2" border="0" id="opt_indexes_custom" width="100%"> + <?php + $i = 0; + foreach (array_keys($indexes) as $key) { + if ($i % 2 != 1 || $i == 0) { // pair + echo '<tr class="col">'; + } ?> + <th align="left" class="picto" > <?php - $i = 0; - if (!$modify_doc) { - $data['process_limit_date']['readonly'] = true; - } - foreach (array_keys($data) as $key) { - if ($key != 'is_multicontacts' || ($key == 'is_multicontacts' && $data[$key]['show_value'] == 'Y')) { - if ($i % 2 != 1 || $i == 0) { // pair - $detailsExport .= "<tr class='col'>"; ?> - <tr class="col"> - <?php - } - $folder_id = ''; - if ($key == 'folder' && $data[$key]['show_value'] != '') { - $folderTmp = $data[$key]['show_value']; - $find1 = strpos($folderTmp, '('); - $folder_id = substr($folderTmp, $find1, strlen($folderTmp)); - $folder_id = str_replace('(', '', $folder_id); - $folder_id = str_replace(')', '', $folder_id); - } - //$detailsExport .= "<th align='left' width='50px'>"; ?> - <th align="left" class="picto" > - <?php - if (isset($data[$key]['addon'])) { - if (in_array($key, ['dest_user_id', 'exp_user_id', 'dest_contact_id', 'exp_contact_id'])) { - echo $data[$key]['addon_detail']; - } else { - echo $data[$key]['addon']; - } - } elseif (isset($data[$key]['img'])) { - //$detailsExport .= "<img alt='".$data[$key]['label']."' title='".$data[$key]['label']."' src='".$data[$key]['img']."' />"; - if ($folder_id != '') { - echo "<a href='".$_SESSION['config']['businessappurl'].'index.php?page=show_folder&module=folder&id='.$folder_id."'>"; ?> - <i class="fa fa-<?php functions::xecho($data[$key]['img']); ?> fa-2x" title="<?php functions::xecho($data[$key]['label']); ?>"></i> - </a> - <?php - } elseif ($key == 'is_multicontacts') { - ?> - - <i class="fa fa-<?php functions::xecho($data[$key]['img']); ?> fa-2x" title="<?php functions::xecho($data[$key]['label']); ?>" - onclick = "previsualiseAdminRead(event, <?php functions::xecho($frameContacts); ?>);" style="cursor: pointer;"></i> - </a> - <?php - } else { - ?> - <i class="fa fa-<?php functions::xecho($data[$key]['img']); ?> fa-2x" title="<?php functions::xecho($data[$key]['label']); ?>"></i> - <?php - } - } ?> - </th> - <?php - $detailsExport .= "<td align='left' width='200px'>"; ?> - <td align="left" width="200px"> - <?php - $detailsExport .= $data[$key]['label']; - echo $data[$key]['label']; ?> - </td> - <?php - $detailsExport .= '</td>'; - $detailsExport .= '<td>'; ?> - <td> - <?php - $detailsExport .= $data[$key]['show_value']; - if (!isset($data[$key]['readonly']) || $data[$key]['readonly'] == true) { - if ($key == 'is_multicontacts') { - if ($data[$key]['show_value'] == 'Y') { - ?> - <input type="hidden" name="<?php functions::xecho($key); ?>" id="<?php functions::xecho($key); ?>" value="<?php functions::xecho($data[$key]['show_value']); ?>" readonly="readonly" class="readonly" size="40" title="<?php functions::xecho($data[$key]['show_value']); ?>" alt="<?php functions::xecho($data[$key]['show_value']); ?>" /> - - <div onClick="$('return_previsualise').style.display='none';" id="return_previsualise" style="cursor: pointer; display: none; border-radius: 10px; box-shadow: 10px 10px 15px rgba(0, 0, 0, 0.4); padding: 10px; width: auto; height: auto; position: absolute; top: 0; left: 0; z-index: 999; background-color: rgba(255, 255, 255, 0.9); border: 3px solid #459ed1;">'; - <input type="hidden" id="identifierDetailFrame" value="" /> - </div> - - <input type="text" value="<?php functions::xecho($nbContacts.' '._CONTACTS); ?>" readonly="readonly" class="readonly" size="40" title="<?php echo _SHOW_MULTI_CONTACT; ?>" alt="<?php functions::xecho($data[$key]['show_value']); ?>" - onclick = "previsualiseAdminRead(event, <?php functions::xecho($frameContacts); ?>);" style="cursor: pointer;"/> - <?php - } - } elseif ($data[$key]['display'] == 'textinput') { - if ($key == 'type_id') { - ?> - <input type="text" name="<?php echo $key; ?>" value="<?php echo $data[$key]['show_value']; ?>" readonly="readonly" class="readonly" size="40" title="<?php echo $data[$key]['show_value']; ?>" alt="<?php echo $data[$key]['show_value']; ?>" /> - <input type="hidden" name="<?php echo $key; ?>" id="<?php echo $data[$key]['value']; ?>" value="<?php echo $data[$key]['value']; ?>" readonly="readonly" class="readonly" size="40" title="<?php echo $data[$key]['show_value']; ?>" alt="<?php echo $data[$key]['show_value']; ?>" /> - <?php - } else { - ?> - <input type="text" name="<?php echo $key; ?>" id="<?php echo $key; ?>" value="<?php echo $data[$key]['show_value']; ?>" readonly="readonly" class="readonly" size="40" title="<?php echo $data[$key]['show_value']; ?>" alt="<?php echo $data[$key]['show_value']; ?>" /> - <?php - } - } elseif ($data[$key]['display'] == 'textarea') { - echo '<textarea name="'.$key.'" id="'.$key.'" rows="3" readonly="readonly" class="readonly" style="width: 200px; max-width: 200px;">' - .$data[$key]['show_value'] - .'</textarea>'; - } elseif ($data[$key]['field_type'] == 'radio') { - for ($k = 0; $k < count($data[$key]['radio']); ++$k) { - ?><input name ="<?php functions::xecho($key); ?>" <?php if ($data[$key]['value'] == $data[$key]['radio'][$k]['ID']) { - echo 'checked'; - } ?> type="radio" id="<?php functions::xecho($key).'_'.$data[$key]['radio'][$k]['ID']; ?>" value="<?php functions::xecho($data[$key]['radio'][$k]['ID']); ?>" disabled ><?php functions::xecho($data[$key]['radio'][$k]['LABEL']); - } - } else { - ?> - <input type="text" name="<?php functions::xecho($key); ?>" id="<?php functions::xecho($key); ?>" value="<?php functions::xecho($data[$key]['show_value']); ?>" readonly="readonly" class="readonly" size="40" title="<?php functions::xecho($data[$key]['show_value']); ?>" alt="<?php functions::xecho($data[$key]['show_value']); ?>" /> - <?php - if (isset($data[$key]['addon'])) { - $frm_str .= $data[$key]['addon']; - } - } - } else { - if ($data[$key]['field_type'] == 'textfield') { + if (isset($indexes[$key]['img'])) { ?> - <input type="text" name="<?php functions::xecho($key); ?>" id="<?php functions::xecho($key); ?>" value="<?php echo $data[$key]['show_value']; ?>" size="40" title="<?php echo $data[$key]['show_value']; ?>" alt="<?php echo $data[$key]['show_value']; ?>" /> - <?php - } elseif ($data[$key]['display'] == 'textarea') { - echo '<textarea name="'.$key.'" id="'.$key.'" rows="3" style="width: 200px; max-width: 200px;">' - .$data[$key]['show_value'] - .'</textarea>'; - } elseif ($data[$key]['field_type'] == 'date') { + <i class="fa fa-<?php functions::xecho($indexes[$key]['img']); ?> fa-2x" title="<?php functions::xecho($indexes[$key]['label']); ?>" ></i> + <?php + } ?> + </th> + <td align="left" width="200px"> + <?php + functions::xecho($indexes[$key]['label']); ?> : + </td> + <td> + <?php + if ($indexes[$key]['type_field'] == 'input') { ?> - <input type="text" name="<?php functions::xecho($key); ?>" id="<?php functions::xecho($key); ?>" value="<?php functions::xecho($data[$key]['show_value']); ?>" size="40" title="<?php functions::xecho($data[$key]['show_value']); ?>" alt="<?php functions::xecho($data[$key]['show_value']); ?>" onclick="showCalender(this);" /> - <?php - } elseif ($data[$key]['field_type'] == 'select') { + <!--<input type="text" name="<?php functions::xecho($key); ?>" id="<?php functions::xecho($key); ?>" value="<?php functions::xecho($indexes[$key]['show_value']); ?>" <?php if (!isset($indexes[$key]['readonly']) || $indexes[$key]['readonly'] == true) { + echo 'readonly="readonly" class="readonly"'; + } elseif ($indexes[$key]['type'] == 'date') { + echo 'onclick="showCalender(this);"'; + } ?> style="width: 99%; font-size:100%" title="<?php functions::xecho($indexes[$key]['show_value']); ?>" alt="<?php functions::xecho($indexes[$key]['show_value']); ?>" />--> + <textarea name="<?php functions::xecho($key); ?>" id="<?php functions::xecho($key); ?>" <?php if (!isset($indexes[$key]['readonly']) || $indexes[$key]['readonly'] == true) { + echo 'readonly="readonly" class="readonly"'; + } elseif ($indexes[$key]['type'] == 'date') { + echo 'onclick="showCalender(this);"'; + } ?> style="width: 200px; " title="<?php functions::xecho($indexes[$key]['show_value']); ?>" alt="<?php functions::xecho($indexes[$key]['show_value']); ?>" ><?php functions::xecho($indexes[$key]['show_value']); ?></textarea> + <?php + } else { ?> - <select id="<?php functions::xecho($key); ?>" name="<?php functions::xecho($key); ?>" - <?php if ($key == 'type_id') { - echo 'onchange="change_doctype_details(this.options[this.options.selectedIndex].value, \''.$_SESSION['config']['businessappurl'].'index.php?display=true&dir=indexing_searching&page=change_doctype_details\' , \''._DOCTYPE.' '._MISSING.'\');"'; - } elseif ($key == 'priority') { - echo 'onchange="updateProcessDate(\''.$_SESSION['config']['businessappurl'].'index.php?display=true&dir=indexing_searching&page=update_process_date\', '.$s_id.')"'; - } ?> - > - <?php - if ($key == 'type_id') { - if ($_SESSION['features']['show_types_tree'] == 'true') { - for ($k = 0; $k < count($data[$key]['select']); ++$k) { - ?><option value="" class="doctype_level1" disabled><?php functions::xecho($data[$key]['select'][$k]['label']); ?></option><?php - for ($j = 0; $j < count($data[$key]['select'][$k]['level2']); ++$j) { - ?><option value="" class="doctype_level2" disabled> <?php functions::xecho($data[$key]['select'][$k]['level2'][$j]['label']); ?></option><?php - for ($l = 0; $l < count($data[$key]['select'][$k]['level2'][$j]['types']); ++$l) { - ?><option - <?php if ($data[$key]['value'] == $data[$key]['select'][$k]['level2'][$j]['types'][$l]['id']) { - echo 'selected="selected"'; - } ?> - value="<?php functions::xecho($data[$key]['select'][$k]['level2'][$j]['types'][$l]['id']); ?>" > <?php functions::xecho($data[$key]['select'][$k]['level2'][$j]['types'][$l]['label']); ?></option><?php - } - } - } - } else { - for ($k = 0; $k < count($data[$key]['select']); ++$k) { - ?><option <?php if ($data[$key]['value'] == $data[$key]['select'][$k]['ID']) { - echo 'selected="selected"'; - } ?> value="<?php functions::xecho($data[$key]['select'][$k]['ID']); ?>" ><?php functions::xecho($data[$key]['select'][$k]['LABEL']); ?></option><?php - } - } - } else { - for ($k = 0; $k < count($data[$key]['select']); ++$k) { - ?><option value="<?php functions::xecho($data[$key]['select'][$k]['ID']); ?>" <?php if ($data[$key]['value'] == $data[$key]['select'][$k]['ID']) { - echo 'selected="selected"'; - } ?>><?php functions::xecho($data[$key]['select'][$k]['LABEL']); ?></option><?php - } - } ?> - </select> - <?php - } elseif ($data[$key]['field_type'] == 'radio') { - for ($k = 0; $k < count($data[$key]['radio']); ++$k) { - ?><input name ="<?php functions::xecho($key); ?>" <?php if ($data[$key]['value'] == $data[$key]['radio'][$k]['ID']) { - echo 'checked'; - } ?> type="radio" id="<?php functions::xecho($key).'_'.$data[$key]['radio'][$k]['ID']; ?>" value="<?php functions::xecho($data[$key]['radio'][$k]['ID']); ?>" ><?php functions::xecho($data[$key]['radio'][$k]['LABEL']); - } - } elseif ($data[$key]['field_type'] == 'autocomplete') { - if ($key == 'folder' && $core->is_module_loaded('folder') && ($core->test_service('associate_folder', 'folder', false) == 1)) { - ?> - <input type="text" name="folder" id="folder" onblur="" value="<?php echo $data['folder']['show_value']; ?>" /> - <div id="show_folder" class="autocomplete"></div> - <script type="text/javascript">initList('folder', 'show_folder','<?php echo $_SESSION['config']['businessappurl']; ?>index.php?display=true&module=folder&page=autocomplete_folders&mode=folder', 'Input', '2');</script> - <?php - } else { - ?> - <input class="readonly" type="text" name="folder" id="folder" onblur="" value="<?php echo $data['folder']['show_value']; ?>" readonly="readonly"/> - <?php - } - } - } - $detailsExport .= '</td>'; ?> - </td> - <?php - if ($i % 2 == 1 && $i != 0) { // impair - $detailsExport .= '</td>'; ?> - </tr> + <select name="<?php functions::xecho($key); ?>" id="<?php functions::xecho($key); ?>" > + <option value=""><?php echo _CHOOSE; ?>...</option> <?php - } else { - if ($i + 1 == count($data)) { - $detailsExport .= "<td colspan='2'> </td></tr>"; - echo '<td colspan="2"> </td></tr>'; - } - } - ++$i; + for ($j = 0; $j < count($indexes[$key]['values']); ++$j) { + ?> + <option value="<?php functions::xecho($indexes[$key]['values'][$j]['id']); ?>" <?php + if ($indexes[$key]['values'][$j]['id'] == $indexes[$key]['value']) { + echo 'selected="selected"'; + } ?>><?php functions::xecho($indexes[$key]['values'][$j]['label']); ?></option><?php + } ?> + </select><?php + } + echo '</td>'; + + if ($i % 2 == 1 && $i != 0) { // impair + echo '</tr>'; + } else { + if ($i + 1 == count($indexes)) { + echo '<td colspan="2"> </td></tr>'; } } - $detailsExport .= "<tr class='col'>"; - $detailsExport .= "<td align='left' width='200px'>"; - $detailsExport .= _STATUS; - $detailsExport .= '</td>'; - $detailsExport .= '<td>'; - $detailsExport .= $res_status['LABEL']; - $detailsExport .= '</td>'; - $detailsExport .= "<td align='left' width='200px'>"; - $detailsExport .= _CHRONO_NUMBER; - $detailsExport .= '</td>'; - $detailsExport .= '<td>'; - $detailsExport .= $chrono_number; - $detailsExport .= '</td>'; - $detailsExport .= '</tr>'; ?> - <tr class="col"> - <th align="left" class="picto"> - <!--img alt="<?php echo _STATUS.' : '.$res_status['LABEL']; ?>" src="<?php functions::xecho($res_status['IMG_SRC']); ?>" title="<?php functions::xecho($res_status['LABEL']); ?>" alt="<?php functions::xecho($res_status['LABEL']); ?>"/--> - <?php - $img_class = substr($res_status['IMG_SRC'], 0, 2); ?> - <i class = "<?php echo $img_class; ?> <?php functions::xecho($res_status['IMG_SRC']); ?> <?php echo $img_class; ?>-2x" alt = "<?php functions::xecho($res_status['LABEL']); ?>" title = "<?php functions::xecho($res_status['LABEL']); ?>"></i> - </th> - <td align="left" width="200px"> - <?php echo _STATUS; ?> - </td> - <td> - <input type="text" class="readonly" readonly="readonly" value="<?php functions::xecho($res_status['LABEL']); ?>" size="40" /> - </td> - <!--</tr> - <tr class="col">--> - <th align="left" class="picto"> - <i class="fa fa-compass fa-2x" title="<?php echo _CHRONO_NUMBER; ?>" ></i> - </th> - <td align="left" width="200px"> - <?php echo _CHRONO_NUMBER; ?> - </td> - <td> - <input type="text" class="readonly" readonly="readonly" value="<?php functions::xecho($chrono_number); ?>" size="40" title="<?php functions::xecho($chrono_number); ?>" alt="<?php functions::xecho($chrono_number); ?>" /> - </td> - </tr> - <tr class="col"> - <th align="left" class="picto"> - <i class="fa fa-sitemap fa-2x" title="<?php echo _INITIATOR; ?>" ></i> - </th> - <td align="left" width="200px"> - <?php echo _INITIATOR; ?> - </td> - <td> - <textarea rows="2" style="width: 200px; max-width: 200px;" class="readonly" readonly="readonly"><?php functions::xecho($entities); ?></textarea> - </td> - <!-- typist --> - <th align="left" class="picto"> - <i class="fa fa-user fa-2x"></i> - </th> - <td align="left" width="200px"> - <?php echo _TYPIST; ?> - </td> - <td> - <input type="text" class="readonly" readonly="readonly" value="<?php functions::xecho($typistLabel); ?>" size="40" title="<?php functions::xecho($typistLabel); ?>" alt="<?php functions::xecho($typistLabel); ?>" /> - </td> - </tr> - - </table> - <?php - $detailsExport .= '</table>'; ?> - - <div id="opt_indexes"> - <?php if (count($indexes) > 0 || ($core->is_module_loaded('tags') && ($core->test_service('tag_view', 'tags', false) == 1)) || ($core->is_module_loaded('thesaurus') && ($core->test_service('thesaurus_view', 'thesaurus', false) == 1))) { - ?><br/> - <h2> - <span class="date"> - <b><?php echo _OPT_INDEXES; ?></b> - </span> - </h2> - <br/> - <div class="block forms details"> - <table cellpadding="2" cellspacing="2" border="0" id="opt_indexes_custom" width="100%"> - <?php - $i = 0; - foreach (array_keys($indexes) as $key) { - if ($i % 2 != 1 || $i == 0) { // pair - $detailsExport .= "<tr class='col'>"; ?> - <tr class="col"> - <?php - } - $detailsExport .= "<th align='left' width='50px'>"; ?> - <th align="left" class="picto" > - <?php - if (isset($indexes[$key]['img'])) { - //$detailsExport .= "<img alt='".$indexes[$key]['label']."' title='".$indexes[$key]['label']."' src='".$indexes[$key]['img']."' />"; ?> - <i class="fa fa-<?php functions::xecho($indexes[$key]['img']); ?> fa-2x" title="<?php functions::xecho($indexes[$key]['label']); ?>" ></i> - <?php - } - $detailsExport .= '</th>'; ?> - </th> - <?php - $detailsExport .= "<td align='left' width='200px'>"; ?> - <td align="left" width="200px"> - <?php - $detailsExport .= $indexes[$key]['label']; - functions::xecho($indexes[$key]['label']); ?> : - </td> - <?php - $detailsExport .= '</td>'; - $detailsExport .= '<td>'; ?> - <td> - <?php - $detailsExport .= $indexes[$key]['show_value']; - if ($indexes[$key]['type_field'] == 'input') { - ?> - <textarea name="<?php functions::xecho($key); ?>" id="<?php functions::xecho($key); ?>" <?php if (!isset($indexes[$key]['readonly']) || $indexes[$key]['readonly'] == true) { - echo 'readonly="readonly" class="readonly"'; - } elseif ($indexes[$key]['type'] == 'date') { - echo 'onclick="showCalender(this);"'; - } ?> style="width: 200px; " title="<?php functions::xecho($indexes[$key]['show_value']); ?>" alt="<?php functions::xecho($indexes[$key]['show_value']); ?>" ><?php functions::xecho($indexes[$key]['show_value']); ?></textarea> - <?php - } else { - ?> - <select name="<?php functions::xecho($key); ?>" id="<?php functions::xecho($key); ?>" > - <option value=""><?php echo _CHOOSE; ?>...</option> - <?php - for ($j = 0; $j < count($indexes[$key]['values']); ++$j ) { - ?> - <option value="<?php functions::xecho($indexes[$key]['values'][$j]['id']); ?>" <?php - if ($indexes[$key]['values'][$j]['id'] == $indexes[$key]['value']) { - echo 'selected="selected"'; - } ?>><?php functions::xecho($indexes[$key]['values'][$j]['label']); ?></option><?php - } ?> - </select><?php - } + ++$i; + } ?> + </table> + <table cellpadding="2" cellspacing="2" border="0" width="100%"> + <?php + if ($core->is_module_loaded('tags') && ($core->test_service('tag_view', 'tags', false) == 1)) { + include_once 'modules/tags/templates/details/index.php'; + } + if ($core->is_module_loaded('thesaurus') && ($core->test_service('thesaurus_view', 'thesaurus', false) == 1)) { + require_once 'modules'.DIRECTORY_SEPARATOR.'thesaurus' + .DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_modules_tools.php'; + $thesaurus = new thesaurus(); - $detailsExport .= '</td>'; ?> - </td> - <?php - if ($i % 2 == 1 && $i != 0) { // impair - $detailsExport .= '</td>'; ?> - </tr> - <?php - } else { - if ($i + 1 == count($indexes)) { - $detailsExport .= "<td colspan='2'> </td></tr>"; - echo '<td colspan="2"> </td></tr>'; - } - } - ++$i; - } ?> - </table> - <table cellpadding="2" cellspacing="2" border="0" width="100%"> - <?php - if ($core->is_module_loaded('tags') && ($core->test_service('tag_view', 'tags', false) == 1)) { - include_once 'modules/tags/templates/details/index.php'; - } - } - if ($core->is_module_loaded('thesaurus') && ($core->test_service('thesaurus_view', 'thesaurus', false) == 1)) { - require_once 'modules'.DIRECTORY_SEPARATOR.'thesaurus' - .DIRECTORY_SEPARATOR.'class'.DIRECTORY_SEPARATOR.'class_modules_tools.php'; - $thesaurus = new thesaurus(); + $thesaurusListRes = array(); - $thesaurusListRes = array(); + $thesaurusListRes = $thesaurus->getThesaursusListRes($s_id); - $thesaurusListRes = $thesaurus->getThesaursusListRes($s_id); + echo '<tr id="thesaurus_tr_label" >'; + echo '<th align="left" class="picto" ><i class="fa fa-bookmark fa-2x" title="'._THESAURUS.'"></i></th>'; + echo '<td style="font-weight:bold;width:200px;">'._THESAURUS.'</td>'; + echo '<td id="thesaurus_field" colspan="6"><select multiple="multiple" id="thesaurus" name="thesaurus[]" data-placeholder=" "'; - echo '<tr id="thesaurus_tr_label" >'; - echo '<th align="left" class="picto" ><i class="fa fa-bookmark fa-2x" title="'._THESAURUS.'"></i></th>'; - echo '<td style="font-weight:bold;width:200px;">'._THESAURUS.'</td>'; - echo '<td id="thesaurus_field" colspan="6"><select multiple="multiple" id="thesaurus" name="thesaurus[]" data-placeholder=" "'; + if (!$core->test_service('add_thesaurus_to_res', 'thesaurus', false)) { + echo 'disabled="disabled"'; + } - if (!$core->test_service('add_thesaurus_to_res', 'thesaurus', false)) { - echo 'disabled="disabled"'; + echo '>'; + if (!empty($thesaurusListRes)) { + foreach ($thesaurusListRes as $key => $value) { + echo '<option title="'.functions::show_string($value['LABEL']).'" data-object_type="thesaurus_id" id="thesaurus_'.$value['ID'].'" value="'.$value['ID'].'"'; + echo ' selected="selected"'; + echo '>' + .functions::show_string($value['LABEL']) + .'</option>'; } + } - echo '>'; - if (!empty($thesaurusListRes)) { - foreach ($thesaurusListRes as $key => $value) { - echo '<option title="'.functions::show_string($value['LABEL']).'" data-object_type="thesaurus_id" id="thesaurus_'.$value['ID'].'" value="'.$value['ID'].'"'; - echo ' selected="selected"'; - echo '>' - .functions::show_string($value['LABEL']) - .'</option>'; - } - } + echo '</select> <i onclick="lauch_thesaurus_list(this);" class="fa fa-search" title="parcourir le thésaurus" aria-hidden="true" style="cursor:pointer;"></i></td>'; + echo '</tr>'; + echo '<div onClick="$(\'return_previsualise_thes\').style.display=\'none\';" id="return_previsualise_thes" style="cursor: pointer; display: none; border-radius: 10px; box-shadow: 10px 10px 15px rgba(0, 0, 0, 0.4); padding: 10px; width: auto; height: auto; position: absolute; top: 0; left: 0; z-index: 999; color: #4f4b47; text-shadow: -1px -1px 0px rgba(255,255,255,0.2);background:#FFF18F;border-radius:5px;overflow:auto;">\'; + <input type="hidden" id="identifierDetailFrame" value="" /> + </div>'; + echo '<script>$j("#thesaurus").chosen({width: "95%", disable_search_threshold: 10});getInfoIcon();</script>'; + echo '<style>#thesaurus_chosen .chosen-drop{display:none;}</style>'; - echo '</select> <i onclick="lauch_thesaurus_list(this);" class="fa fa-search" title="parcourir le thésaurus" aria-hidden="true" style="cursor:pointer;"></i></td>'; - echo '</tr>'; - echo '<div onClick="$(\'return_previsualise_thes\').style.display=\'none\';" id="return_previsualise_thes" style="cursor: pointer; display: none; border-radius: 10px; box-shadow: 10px 10px 15px rgba(0, 0, 0, 0.4); padding: 10px; width: auto; height: auto; position: absolute; top: 0; left: 0; z-index: 999; color: #4f4b47; text-shadow: -1px -1px 0px rgba(255,255,255,0.2);background:#FFF18F;border-radius:5px;overflow:auto;">\'; - <input type="hidden" id="identifierDetailFrame" value="" /> - </div>'; - echo '<script>$j("#thesaurus").chosen({width: "95%", disable_search_threshold:10});getInfoIcon();</script>'; - echo '<style>#thesaurus_chosen .chosen-drop{display:none;}</style>'; - } + /*****************/ + } - if ($core->is_module_loaded('fileplan') && ($core->test_service('put_doc_in_fileplan', 'fileplan', false) == 1) && $fileplanLabel != '') { - //Requete pour récupérer position_label - $stmt = $db->query('SELECT position_label FROM fp_fileplan_positions INNER JOIN fp_res_fileplan_positions - ON fp_fileplan_positions.position_id = fp_res_fileplan_positions.position_id - WHERE fp_res_fileplan_positions.res_id=?', array($idCourrier)); + if ($core->is_module_loaded('fileplan') && ($core->test_service('put_doc_in_fileplan', 'fileplan', false) == 1) && $fileplanLabel != '') { + //Requete pour récupérer position_label + $stmt = $db->query('SELECT position_label FROM fp_fileplan_positions INNER JOIN fp_res_fileplan_positions + ON fp_fileplan_positions.position_id = fp_res_fileplan_positions.position_id + WHERE fp_res_fileplan_positions.res_id=?', array($idCourrier)); - while ($res_fileplan = $stmt->fetchObject()) { - if (!isset($positionLabel)) { - $positionLabel = $res_fileplan->position_label; - } else { - $positionLabel = $positionLabel.' / '.$res_fileplan->position_label; - } + while ($res_fileplan = $stmt->fetchObject()) { + if (!isset($positionLabel)) { + $positionLabel = $res_fileplan->position_label; + } else { + $positionLabel = $positionLabel.' / '.$res_fileplan->position_label; } + } - //Requete pour récuperer fileplan_label - $stmt = $db->query('SELECT fileplan_label FROM fp_fileplan INNER JOIN fp_res_fileplan_positions - ON fp_fileplan.fileplan_id = fp_res_fileplan_positions.fileplan_id - WHERE fp_res_fileplan_positions.res_id=? AND fp_fileplan.user_id = ?', array($idCourrier, $_SESSION['user']['UserId'])); - $res2 = $stmt->fetchObject(); - $fileplanLabel = $res2->fileplan_label; - $planClassement = $fileplanLabel.' / '.$positionLabel; ?> - <tr class="col"> - <th align="left" class="picto"> - <i class="fa fa-bookmark fa-2x" title="<?php echo _FILEPLAN; ?>"></i> - </th> - <td align="left" width="200px"> - <?php echo _FILEPLAN; ?> : - </td> - <td colspan="6"> - <input type="text" class="readonly" readonly="readonly" style="width:95%;" value="<?php functions::xecho($planClassement); ?>" size="110" /> - </td> - </tr> - <?php - } ?> - </table> - </div> + //Requete pour récuperer fileplan_label + $stmt = $db->query('SELECT fileplan_label FROM fp_fileplan INNER JOIN fp_res_fileplan_positions + ON fp_fileplan.fileplan_id = fp_res_fileplan_positions.fileplan_id + WHERE fp_res_fileplan_positions.res_id=? AND fp_fileplan.user_id = ?', array($idCourrier, $_SESSION['user']['UserId'])); + $res2 = $stmt->fetchObject(); + $fileplanLabel = $res2->fileplan_label; + $planClassement = $fileplanLabel.' / '.$positionLabel; ?> + <tr class="col"> + <th align="left" class="picto"> + <i class="fa fa-bookmark fa-2x" title="<?php echo _FILEPLAN; ?>"></i> + </th> + <td align="left" width="200px"> + <?php echo _FILEPLAN; ?> : + </td> + <td colspan="6"> + <input type="text" class="readonly" readonly="readonly" style="width:95%;" value="<?php functions::xecho($planClassement); ?>" size="110" /> + </td> + </tr> <?php } ?> - </div> - </form><br><br> - -<!-- IFRAME !--> - - </div> - <?php - $technicalInfo_frame = '<div class="detailsDisplayDiv" id="uniqueDetailsDiv">'; - $technicalInfo_frame .= '<iframe src="" name="uniqueDetailsIframe" width="100%" align="left" scrolling="yes" frameborder="0" id="uniqueDetailsIframe" style="height:100%;"></iframe>'; - $technicalInfo_frame .= '</div>'; - echo $technicalInfo_frame; ?> - <?php - ?> - </dl> - </div> - + </table> + </div> + <?php + } ?> + </div> + </form> + <br> + <br> <?php - } -?> - +} + ?> +</div> +<?php + $technicalInfo_frame = '<div class="detailsDisplayDiv" id="uniqueDetailsDiv">'; + $technicalInfo_frame .= '<iframe src="" name="uniqueDetailsIframe" width="100%" align="left" scrolling="yes" frameborder="0" id="uniqueDetailsIframe" style="height:100%;"></iframe>'; + $technicalInfo_frame .= '</div>'; + echo $technicalInfo_frame; ?> + </div> </div> </div> <?php @@ -1233,7 +1209,5 @@ if ($_SESSION['indexation'] == true && $category == 'outgoing') { echo '<script type="text/javascript">document.getElementById(\'responses_tab\').click();showAttachmentsForm(\''.$_SESSION['config']['businessappurl'].'index.php?display=true&module=attachments&page=attachments_content&fromDetail=create&cat=outgoing\',\'98%\',\'auto\');</script>'; } } -$detailsExport .= '</body></html>'; -$_SESSION['doc_convert'] = array(); -$_SESSION['doc_convert']['details_result'] = $detailsExport; + $_SESSION['info'] = '';