function uc_extra_fields_pane_views_get_fields in Extra Fields Checkout Pane 6.2
Same name and namespace in other branches
- 7 views/uc_extra_fields_pane.views.inc \uc_extra_fields_pane_views_get_fields()
Get all uc_extra_fields_pane fields
Return value
array
1 call to uc_extra_fields_pane_views_get_fields()
- uc_extra_fields_pane_views_data in views/
uc_extra_fields_pane.views.inc - Implementation of hook_views_data().
File
- views/
uc_extra_fields_pane.views.inc, line 106 - Provide views data and handlers for Extra Fields Pane
Code
function uc_extra_fields_pane_views_get_fields() {
static $fields = NULL;
if (!isset($fields)) {
// Make sure all fields are loaded
$ucxf_fields = UCXF_FieldList::getAllFields();
$fields = array();
$fields_by_pane = array(
'extra_delivery' => UCXF_FieldList::getFieldsFromPane('extra_delivery'),
'extra_billing' => UCXF_FieldList::getFieldsFromPane('extra_billing'),
'custom' => UCXF_FieldList::getAllCustomFields(),
'extra_address' => UCXF_FieldList::getAllAddressFields(),
);
foreach ($fields_by_pane as $pane_type => $fieldlist) {
foreach ($fieldlist as $fieldname => $field) {
$fields[$pane_type][$fieldname] = clone $field;
switch ($pane_type) {
case 'extra_delivery':
$fields[$pane_type][$fieldname]->element_type = UCXF_VALUE_ORDER_DELIVERY;
$fields[$pane_type][$fieldname]->prefix = UC_RECIPIENT_PREFIX;
$fields[$pane_type][$fieldname]->suffix = 'delivery';
break;
case 'extra_billing':
$fields[$pane_type][$fieldname]->element_type = UCXF_VALUE_ORDER_BILLING;
$fields[$pane_type][$fieldname]->prefix = UC_PAYER_PREFIX;
$fields[$pane_type][$fieldname]->suffix = 'billing';
break;
case 'custom':
$fields[$pane_type][$fieldname]->element_type = UCXF_VALUE_ORDER_INFO;
$fields[$pane_type][$fieldname]->prefix = t('Extra info:');
$fields[$pane_type][$fieldname]->suffix = 'info';
break;
case 'extra_address':
$fields[$pane_type][$fieldname]->element_type = UCXF_VALUE_ADDRESS;
break;
}
}
}
}
return $fields;
}