function cw_user_update_address($customer_id, $address_id, $address) { global $tables; cw_load('profile_fields'); $address['customer_id'] = $customer_id; if ($address_id) { $count = cw_query_first_cell("select count(*) from {$tables['customers_addresses']} where customer_id='{$customer_id}' and address_id='{$address_id}'"); if ($count) { $address['address_id'] = $address_id; } } if (is_numeric($address['address_id']) && $address['address_id'] > 0) { cw_array2update('customers_addresses', $address, "address_id='{$address['address_id']}'"); } else { if (in_array($address['address_id'], array('main', 'current'), TRUE)) { $address[$address['address_id']] = 1; } $address_id = cw_array2insert('customers_addresses', $address, TRUE); } if (is_array($address['custom_fields']) && !empty($address['custom_fields'])) { cw_profile_fields_update_type($customer_id, $address_id, 'A', $address['custom_fields']); } return $address_id; }
function cw_doc_update_user_information($doc_type, $doc_info_id, $userinfo, $is_create_user = false) { global $customer_id, $config; $address_fields = array('company', 'title', 'firstname', 'lastname', 'address', 'address_2', 'city', 'county', 'state', 'country', 'zipcode', 'phone', 'fax', 'region'); foreach (array('main_address', 'current_address') as $address_type) { $address = $userinfo[$address_type]; cw_array2update('customers_addresses', cw_addslashes($address), "address_id='{$address['address_id']}'", $address_fields); if (is_array($address['custom_fields']) && !empty($address['custom_fields'])) { cw_profile_fields_update_type(0, $address['address_id'], 'A', $address['custom_fields']); } } if (!$userinfo['customer_id'] && $is_create_user) { $userinfo['customer_id'] = cw_user_create_profile(array('usertype' => $userinfo['usertype'])); $userinfo['additional_info'] = $userinfo; cw_user_update(cw_addslashes($userinfo), $userinfo['customer_id'], $customer_id); } $userinfo_fields = array('customer_id', 'membership_id', 'company', 'email', 'tax_number', 'tax_exempt', 'ssn', 'company_type', 'usertype'); // Real e-mail for anonymous buyer that will be placed in order $userinfo['email'] = cw_real_mail_address($userinfo['email']); # kornev, 'company_id' ? cw_array2update('docs_user_info', cw_addslashes($userinfo), "doc_info_id='{$doc_info_id}'", $userinfo_fields); }