function uc_extra_fields_pane_form_uc_store_address_fields_form_alter in Extra Fields Checkout Pane 7
Implements hook_form_FORM_ID_alter() for uc_store_address_fields_form().
Adds enabled/required checkboxes for Extra Fields Pane address fields.
_state
Parameters
array $form:
See also
uc_extra_fields_pane_address_fields_uc_store_address_fields_submit()
File
- ./
uc_extra_fields_pane.module, line 428 - Module: uc_extra_fields_pane.module
Code
function uc_extra_fields_pane_form_uc_store_address_fields_form_alter(&$form, $form_state) {
try {
$fields = UCXF_FieldList::getAllAddressFields();
// Similar to uc_store_address_fields_form() from uc_store.module
foreach ($fields as $fieldname => $field) {
// The "enabled" setting is inside "$form['uc_address_fields']'.
$form['uc_address_fields'][$fieldname] = array(
'#type' => 'checkbox',
'#default_value' => $field->enabled ? TRUE : FALSE,
);
// The "required" setting is inside "$form['uc_address_fields_required']'.
$form['uc_address_fields_required'][$fieldname] = array(
'#type' => 'checkbox',
'#default_value' => $field->required ? TRUE : FALSE,
);
// Title field.
$form['fields'][$fieldname]['uc_field_' . $fieldname] = array(
'#markup' => $field
->output('label'),
);
// Add field machine name.
$form['fields'][$fieldname]['default'] = array(
'#markup' => $field->db_name,
);
}
// Add submit function so 'enabled', 'required' and 'weight' can be saved.
array_unshift($form['#submit'], 'uc_extra_fields_pane_form_uc_store_address_fields_form_submit');
} catch (UCXF_Exception $e) {
$e
->printMessage();
$e
->logError();
}
}