function template_preprocess_uc_addresses_list_address in Ubercart Addresses 7
Same name and namespace in other branches
- 6.2 uc_addresses.pages.inc \template_preprocess_uc_addresses_list_address()
Prepares variables for one address.
Parameters
array $vars: An array with the following:
- address (instance of UcAddressesAddress)
- options (array):
- view_link (boolean): whether or not display a link to the address.
- edit_link (boolean): whether or not display a link to edit the address.
- delete_link (boolean): whether or not display a link to delete the address.
- destination (string): path to return to after editing the address.
- default_flags (boolean): whether or not display "default address" labels.
- context (string): the context to use for display the addresses. This has effect on which fields are displayed. Defaults to "address_view".
Return value
void
File
- ./
uc_addresses.pages.inc, line 155 - Page callbacks for viewing, adding, editing, and deleting addresses.
Code
function template_preprocess_uc_addresses_list_address(&$vars) {
drupal_add_css(drupal_get_path('module', 'uc_addresses') . '/uc_addresses.css');
$address = $vars['address'];
// Initialize variables.
$vars['options'] += array(
'view_link' => FALSE,
'edit_link' => FALSE,
'delete_link' => FALSE,
'destination' => '',
'default_flags' => FALSE,
'context' => 'address_view',
);
$vars['label'] = NULL;
$vars['admin_links'] = NULL;
// Retrieve ID's.
$vars['aid'] = $address
->getId();
$vars['uid'] = $address
->getUserId();
// Preprocess address fields, context is 'address_view' by default.
$vars['fields'] = uc_addresses_preprocess_address($address, $vars['options']['context']);
// Setup admin links.
$link_options = array();
$links = array();
if ($vars['options']['destination']) {
// Add destinations for all admin links.
$link_options['query'] = array(
'destination' => $vars['options']['destination'],
);
}
if ($vars['options']['view_link']) {
// Create view link.
$vars['view_address_link'] = uc_addresses_render_link($address, 'view', $link_options);
if ($vars['view_address_link']) {
$links['view'] = $vars['view_address_link'];
}
}
if ($vars['options']['edit_link']) {
// Create edit link.
$vars['edit_address_link'] = uc_addresses_render_link($address, 'edit', $link_options);
if ($vars['edit_address_link']) {
$links['edit'] = $vars['edit_address_link'];
}
}
if ($vars['options']['delete_link']) {
// Create delete link.
$vars['delete_address_link'] = uc_addresses_render_link($address, 'delete', $link_options);
if ($vars['delete_address_link']) {
$links['delete'] = $vars['delete_address_link'];
}
}
if (count($links) > 0) {
// Combine all links into a single variable.
$vars['admin_links'] = implode(' <span class="separator uc-addresses-separator">|</span> ', $links);
}
// Setup labels.
if ($vars['options']['default_flags']) {
$flags = array();
if ($address
->isDefault('billing') && variable_get('uc_addresses_use_default_billing', TRUE)) {
$flags['billing'] = '<span class="uc-addresses-default-address-label uc-addresses-default-billing-address-label">' . t('Default billing address') . '</span>';
}
if ($address
->isDefault('shipping') && variable_get('uc_addresses_use_default_shipping', TRUE)) {
$flags['shipping'] = '<span class="uc-addresses-default-address-label uc-addresses-default-shipping-address-label">' . t('Default shipping address') . '</span>';
}
if (count($flags) > 0) {
$vars['label'] = implode(' <span class="separator uc-addresses-separator"><br /></span> ', $flags);
}
}
// CSS classes.
$vars['classes_array'] = array();
if ($address
->isDefault('billing')) {
$vars['classes_array']['default'] = 'uc-addresses-default-address';
$vars['classes_array']['default_billing'] = 'uc-addresses-default-billing-address';
}
if ($address
->isDefault('shipping')) {
$vars['classes_array']['default'] = 'uc-addresses-default-address';
$vars['classes_array']['default_shipping'] = 'uc-addresses-default-shipping-address';
}
$vars['classes'] = implode(' ', $vars['classes_array']);
}