function inventories_get_info($id_item, $id_father) { global $config; $result = array(); $info_inventory = get_db_row('tinventory', 'id', $id_item); $info_fields = get_db_all_rows_filter('tobject_type_field', array('id_object_type' => $id_father)); if ($info_inventory !== false) { $result['name'] = $info_inventory['name']; $result['data'] = array(); if (!empty($info_inventory['owner'])) { $owner = $info_inventory['owner']; $name_owner = get_db_value('nombre_real', 'tusuario', 'id_usuario', $owner); if (empty($name_owner)) { $name_owner = '--'; } } else { $name_owner = '--'; } $row = array(); $row['label'] = __('Owner'); $row['data'] = $name_owner; $result['data'][] = $row; if (!empty($info_inventory['id_parent'])) { $parent = $info_inventory['id_parent']; $name_parent = get_db_value('name', 'tinventory', 'id', $parent); if (empty($name_parent)) { $name_parent = '--'; } } else { $name_parent = '--'; } $row = array(); $row['label'] = __('Parent'); $row['data'] = $name_parent; $result['data'][] = $row; if (!empty($info_inventory['id_manufacturer'])) { $manufacturer = $info_inventory['id_manufacturer']; $name_manufacturer = get_db_value('name', 'tmanufacturer', 'id', $info_inventory['id_manufacturer']); if (empty($name_manufacturer)) { $name_manufacturer = '--'; } } else { $name_manufacturer = '--'; } $row = array(); $row['label'] = __('Manufacturer'); $row['data'] = $name_manufacturer; $result['data'][] = $row; if (!empty($info_inventory['id_contract'])) { $contract = $info_inventory['id_contract']; $name_contract = get_db_value('name', 'tcontract', 'id', $info_inventory['id_contract']); if (empty($name_contract)) { $name_contract = '--'; } } else { $name_contract = '--'; } $row = array(); $row['label'] = __('Contract'); $row['data'] = $name_contract; $result['data'][] = $row; if ($info_fields !== false) { foreach ($info_fields as $info) { $filter = array('id_inventory' => $id_item, 'id_object_type_field' => $info['id']); $value = get_db_value_filter('data', 'tobject_field_data', $filter); $data = '--'; if (!empty($value)) { $data = $value; } $info_field = array(); $info_field['label'] = $info['label']; $info_field['data'] = $data; $result['data'][] = $info_field; if ($info['type'] == 'external' && $value != false) { $all_fields_ext = inventories_get_all_external_field($info['external_table_name'], $info['external_reference_field'], $info['id']); foreach ($all_fields_ext as $field) { $data = '--'; if (!empty($field['data'])) { $data = $field['data']; } $info_field_external = array(); $info_field['label'] = $field['label']; $info_field['data'] = $data; $result['data'][] = $info_field_external; } } } } } return $result; }
$show_external_data = (bool) get_parameter('show_external_data', 0); $update_external_id = (bool) get_parameter('update_external_id', 0); $get_company_name = (bool) get_parameter('get_company_name', 0); $get_user_name = (bool) get_parameter('get_user_name', 0); if ($show_type_fields) { $id_object_type = get_parameter('id_object_type'); $id_inventory = get_parameter('id_inventory'); $fields = inventories_get_all_type_field($id_object_type, $id_inventory); echo json_encode($fields); return; } if ($show_external_data) { $external_table_name = get_parameter('external_table_name'); $external_reference_field = get_parameter('external_reference_field'); $data_id_external_table = get_parameter('id_external_table'); $fields_ext = inventories_get_all_external_field($external_table_name, $external_reference_field, $data_id_external_table); echo json_encode($fields_ext); return; } if ($update_external_id) { $id_object_type_field = get_parameter('id_object_type_field'); $id_inventory = get_parameter('id_inventory'); $id_value = get_parameter('id_value'); //new value for id field $exists = get_db_value_filter('data', 'tobject_field_data', array('id_object_type_field' => $id_object_type_field, 'id_inventory' => $id_inventory)); if ($exists) { $result = process_sql_update('tobject_field_data', array('data' => $id_value), array('id_object_type_field' => $id_object_type_field, 'id_inventory' => $id_inventory), 'AND'); } else { $result = process_sql_insert('tobject_field_data', array('data' => $id_value, 'id_object_type_field' => $id_object_type_field, 'id_inventory' => $id_inventory)); } return $result;