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">&nbsp;</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">&nbsp;</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">&nbsp;</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>&nbsp;
-    <?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
+            } ?>
+            &nbsp;&nbsp;&nbsp;
+        </p>
+        </b>&nbsp;
+    </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
-                    } ?>
-                    &nbsp;&nbsp;&nbsp;
-                </p>
-                </b>&nbsp;
-            </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="&nbsp;'._ADD
+                                                .'&nbsp;" 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 '&nbsp;<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 '&nbsp;<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='&nbsp;&nbsp;&nbsp;&nbsp;{$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}>&nbsp;&nbsp;&nbsp;&nbsp;{$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">&nbsp;</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>&nbsp;&nbsp;<?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']); ?>" >&nbsp;&nbsp;&nbsp;&nbsp;<?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'>&nbsp;</td></tr>";
-                                    echo '<td  colspan="2">&nbsp;</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">&nbsp;</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'>&nbsp;</td></tr>";
-                                        echo '<td  colspan="2">&nbsp;</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'] = '';