You are here

function uc_extra_fields_pane_form_alter in Extra Fields Checkout Pane 6.2

Implementation of hook_form_alter().

_state

Parameters

array $form:

string $form_id:

Return value

void

File

./uc_extra_fields_pane.module, line 1064
Module: uc_extra_fields_pane.module

Code

function uc_extra_fields_pane_form_alter(&$form, &$form_state, $form_id) {
  switch ($form_id) {

    // Address fields configuration form
    case 'uc_store_address_fields_form':
      module_load_include('inc', 'uc_extra_fields_pane', 'includes/weights');
      module_load_include('inc', 'uc_extra_fields_pane', 'includes/addressfields');

      // Add extra address fields currently defined on /admin/store/settings/checkout/edit/extrafields
      _uc_extra_fields_pane_address_fields_uc_store_address_fields_alter($form, $form_state);

      // add the possibility to order the address fields.
      _uc_extra_fields_pane_weight_uc_store_address_fields_alter($form, $form_state);

      // Add our theme function to the form, so that function can add draggable rows functionality
      // and also the delete/edit-actions
      $form['#theme'][] = 'uc_extra_fields_pane_uc_store_address_fields';
      break;

    // The checkout form and the order edit form are altered by an implementation of hook_form_FORM_ID_alter().
    // Ubercart Addresses 6.x-1.x integration: add/edit address form
    case 'uc_addresses_get_address_form':
      if (uc_addresses_version() === 1) {
        module_load_include('inc', 'uc_extra_fields_pane', 'includes/weights');
        module_load_include('inc', 'uc_extra_fields_pane', 'includes/addressfields');

        // add extra address fields
        uc_extra_fields_pane_addressfields_uc_addresses_get_address_form_alter($form, $form_state);

        // add weight to the address fields
        _uc_extra_fields_pane_applyWeights($form['panes']['address']);
      }
      break;

    // Ubercart Addresses 6.x-1.x integration: address fields on user registration page
    case 'user_register':
      if (uc_addresses_version() === 1 && variable_get('uc_addresses_require_address', TRUE)) {
        module_load_include('inc', 'uc_extra_fields_pane', 'includes/weights');
        module_load_include('inc', 'uc_extra_fields_pane', 'includes/addressfields');

        // add extra address fields
        uc_extra_fields_pane_addressfields_user_register_form_alter($form, $form_state);

        // add weight to the address fields
        _uc_extra_fields_pane_applyWeights($form[0]);
      }
      break;
  }
}