function _uc_extra_field_pane_get_uc_addresses in Extra Fields Checkout Pane 6.2
_get_uc_addresses() Returns addresses using the uc_addresses table
Parameters
int $uid:
string $type:
Return value
array
1 call to _uc_extra_field_pane_get_uc_addresses()
- uc_extra_fields_pane_get_addresses in includes/
address_select.inc - get_addresses() Similar to uc_get_addresses() in uc_store.module
File
- includes/
address_select.inc, line 35 - This file contains code for getting all addresses for one user
Code
function _uc_extra_field_pane_get_uc_addresses($uid, $type) {
$fields = UCXF_FieldList::getAllAddressFields();
$element_type = UCXF_VALUE_ADDRESS;
// Make queryparts
$queryparts = _uc_extra_field_pane_get_addresses_queryparts($fields, 'uc_addresses', 'aid', $element_type);
$uc_addresses_schema = drupal_get_schema('uc_addresses');
$select = array();
foreach ($uc_addresses_schema['fields'] as $fieldname => $field) {
$select[] = $fieldname;
}
$select = array_merge($select, $queryparts['select']);
$joins = $queryparts['joins'];
// Load addresses from UC Addresses
$query = "SELECT " . implode(", ", $select) . "\n FROM {uc_addresses}\n " . implode(" ", $joins) . "\n WHERE uid = %d\n ORDER BY created\n ";
$result = db_query($query, $uid);
// --------------------------------
// following is copied from uc_addresses.module
// --------------------------------
$default_aid = _uc_addresses_get_default_address_id($uid);
// Gather up everything
$num_rows = 0;
while ($address = db_fetch_object($result)) {
$num_rows++;
$address->is_default = $default_aid == $address->aid;
$addresses[] = $address;
}
if ($num_rows == 0) {
return FALSE;
}
return $addresses;
}