You are here

function webform_civicrm_form_alter in Webform CiviCRM Integration 7.5

Same name and namespace in other branches
  1. 8.5 webform_civicrm.module \webform_civicrm_form_alter()
  2. 6.2 webform_civicrm.module \webform_civicrm_form_alter()
  3. 6 webform_civicrm.module \webform_civicrm_form_alter()
  4. 7 webform_civicrm.module \webform_civicrm_form_alter()
  5. 7.2 webform_civicrm.module \webform_civicrm_form_alter()
  6. 7.3 webform_civicrm.module \webform_civicrm_form_alter()
  7. 7.4 webform_civicrm.module \webform_civicrm_form_alter()

Implements hook_form_alter().

File

./webform_civicrm.module, line 67
Webform CiviCRM Integration Module: Links webform submissions to contacts in a CiviCRM database. @author Coleman Watts

Code

function webform_civicrm_form_alter(&$form, &$form_state, $form_id) {

  // Alter back-end webform component edit forms
  if ($form_id == 'webform_component_edit_form') {
    if (substr($form['form_key']['#default_value'], 0, 7) == 'civicrm') {
      form_load_include($form_state, 'inc', 'webform_civicrm', 'includes/wf_crm_admin_component');
      $admin_form = new wf_crm_admin_component($form, $form_state);
      $admin_form
        ->alterForm();
    }
    if ($form['type']['#value'] == 'pagebreak') {
      form_load_include($form_state, 'inc', 'webform_civicrm', 'includes/wf_crm_admin_component');
      $admin_form = new wf_crm_admin_component($form, $form_state);
      $admin_form
        ->adjustPageBreak();
    }
  }
  elseif (strpos($form_id, 'webform_client_form_') !== FALSE && !empty($form['#node']->webform_civicrm)) {
    form_load_include($form_state, 'inc', 'webform_civicrm', 'includes/wf_crm_webform_preprocess');
    $processor = new wf_crm_webform_preprocess($form, $form_state);
    $processor
      ->alterForm();
  }
  elseif ($form_id == 'webform_components_form') {
    form_load_include($form_state, 'inc', 'webform_civicrm', 'includes/wf_crm_admin_component');
    $form['#validate'][] = 'wf_crm_components_form_validate';
    if (empty($form_state['input'])) {
      wf_crm_admin_component::checkBillingPagination($form['#node']);
    }
  }
}