/** * Update affected users in an inventory. * * @param int inventory id to update. * @param array List of affected users ids. * @param update = false to create and update = true to update */ function inventory_update_users($id_inventory, $users, $update = false) { error_reporting(0); $where_clause = ''; if (empty($users)) { $users = array(0); } if ($update) { $sql = sprintf("DELETE FROM tinventory_acl WHERE id_inventory = %d AND type='user'", $id_inventory); $res = process_sql($sql); if ($res !== false && $res > 0) { $updated = true; } } $type = 'user'; foreach ($users as $key => $id_user) { if ($id_user != '') { $value = array(); $value['id_inventory'] = $id_inventory; $value['id_reference'] = $id_user; $value['type'] = $type; $tmp = process_sql_insert('tinventory_acl', $value); } } if ($update && $updated === true) { inventory_tracking($id_inventory, INVENTORY_USERS_UPDATED); } else { if (!empty($users) && $users != array(0)) { inventory_tracking($id_inventory, INVENTORY_USERS_CREATED); } } }
//parent has object if ($id_object_type_inherit !== false) { $inherit_fields = get_db_all_rows_filter('tobject_type_field', array('id_object_type' => $id_object_type_inherit, 'inherit' => 1)); if ($inherit_fields === false) { $inherit_fields = array(); } foreach ($inherit_fields as $key => $field) { $values = array(); $values['id_object_type_field'] = $field['id']; $values['id_inventory'] = $id; $data = get_db_value_filter('data', 'tobject_field_data', array('id_inventory' => $id_parent, 'id_object_type_field' => $field['id'])); $values['data'] = $data; process_sql_insert('tobject_field_data', $values); } } inventory_tracking($id, INVENTORY_PARENT_CREATED, $id_parent); } $result_companies = enterprise_hook('inventory_update_companies', array($id, get_parameter('companies'))); $result_users = enterprise_hook('inventory_update_users', array($id, get_parameter('users'))); $result_msg = '<h3 class="suc">' . __('Successfully created') . '</h3>'; $result_msg .= "<h3><a href='index.php?sec=inventory&sec2=operation/inventories/inventory_detail&id={$id}'>" . __("Click here to continue working with Object #") . $id . "</a></h3>"; } else { $result_msg = '<h3 class="error">' . $err_message . '</h3>'; } $id = 0; $name = ""; $description = ""; $id_contract = ""; $id_parent = ""; $id_manufacturer = 0; $public = false;