You are here

function acquia_lift_admin_form_submit in Acquia Lift Connector 7.3

Same name and namespace in other branches
  1. 7 acquia_lift.admin.inc \acquia_lift_admin_form_submit()
  2. 7.2 acquia_lift.admin.inc \acquia_lift_admin_form_submit()

Submit handler for the acquia_lift configuration form.

File

./acquia_lift.admin.inc, line 327
acquia_lift.admin.inc Provides functions needed for the admin UI.

Code

function acquia_lift_admin_form_submit($form, &$form_state) {

  // Field mappings.
  if (isset($form_state['values']['acquia_lift_field_mappings'])) {

    // Don't save empty entries.
    $acquia_lift_field_mappings = array_filter($form_state['values']['acquia_lift_field_mappings']);
    variable_set('acquia_lift_field_mappings', $acquia_lift_field_mappings);
  }
  if (isset($form_state['values']['acquia_lift_udf_mappings'])) {
    $udf_types = acquia_lift_get_udf_types();
    $acquia_lift_udf_mappings = array();
    foreach ($udf_types as $type => $count) {
      if (isset($form_state['values']['acquia_lift_udf_mappings'][$type])) {
        $acquia_lift_udf_mappings[$type] = array_filter($form_state['values']['acquia_lift_udf_mappings'][$type]);
      }
    }
    $acquia_lift_udf_mappings = array_filter($acquia_lift_udf_mappings);
    variable_set('acquia_lift_udf_mappings', $acquia_lift_udf_mappings);
  }

  // Enforce https and clean up the urls
  $assets_url = $form_state['values']['acquia_lift_assets_url'];
  $decision_api_url = $form_state['values']['acquia_lift_decision_api_url'];
  $oauth_url = $form_state['values']['acquia_lift_oauth_url'];
  if (!empty($assets_url)) {
    $assets_url = 'https://' . _acquia_lift_admin_clean_url($assets_url);
    _acquia_lift_ping('Assets', $assets_url);
  }
  if (!empty($decision_api_url)) {
    $decision_api_url = 'https://' . _acquia_lift_admin_clean_url($decision_api_url);
    _acquia_lift_ping('Decision API', $decision_api_url);
  }
  if (!empty($oauth_url)) {
    $oauth_url = 'https://' . _acquia_lift_admin_remove_authorize_suffix(_acquia_lift_admin_clean_url($oauth_url)) . '/authorize';
    _acquia_lift_ping('Authentication', $oauth_url);
  }
  variable_set('acquia_lift_assets_url', $assets_url);
  variable_set('acquia_lift_decision_api_url', $decision_api_url);
  variable_set('acquia_lift_oauth_url', $oauth_url);

  // The rest of the variables are set as is.
  $standard_variables = array(
    'acquia_lift_identity_param',
    'acquia_lift_identity_type_param',
    'acquia_lift_default_identity_type',
    'acquia_lift_account_id',
    'acquia_lift_site_id',
    'acquia_lift_ignore_path_patterns',
    'acquia_lift_bootstrap_mode',
    'acquia_lift_content_replacement_mode',
    'acquia_lift_content_origin',
  );
  foreach ($standard_variables as $key) {
    variable_set($key, $form_state['values'][$key]);
  }
  drupal_set_message(t('The configuration settings have been saved.'), 'status');
}