You are here

public function SmartImporterConfigurationForm::submitForm in Commerce Smart Importer 8

Form submission handler.

Parameters

array $form: An associative array containing the structure of the form.

\Drupal\Core\Form\FormStateInterface $form_state: The current state of the form.

Overrides ConfigFormBase::submitForm

File

src/Form/SmartImporterConfigurationForm.php, line 234

Class

SmartImporterConfigurationForm
Smart importer config form.

Namespace

Drupal\commerce_smart_importer\Form

Code

public function submitForm(array &$form, FormStateInterface $form_state) {
  $values = $form_state
    ->getValues();
  $config = $this
    ->config('commerce_smart_importer.settings');
  if ($values['store'] != '') {
    $config
      ->set('store', $values['store']);
  }
  elseif ($config
    ->get('store') == NULL) {
    $config
      ->set('store', 1);
  }
  if ($values['sku_prefix'] != '') {
    $config
      ->set('sku_prefix', $values['sku_prefix']);
  }
  elseif ($config
    ->get('sku_prefix') == NULL) {
    $config
      ->set('sku_prefix', 'si_');
  }
  if ($values['sku_method'] != '') {
    $config
      ->set('sku_method', $values['sku_method']);
  }
  elseif ($config
    ->get('sku_method') == NULL) {
    $config
      ->set('sku_method', 1);
  }
  if ($values['sku_digits'] != '' && $values['sku_digits'] > 2 && $values['sku_digits'] < 20 && is_numeric($values['sku_digits'])) {
    $config
      ->set('sku_random_digits', floor($values['sku_digits']));
  }
  elseif ($values['sku_digits'] > 2 && $values['sku_digits'] <= 20 && is_numeric($values['sku_digits'])) {
    if ($config
      ->get('sku_random_digits') == NULL) {
      $config
        ->set('sku_random_digits', 6);
    }
  }
  elseif ($config
    ->get('sku_random_digits') == NULL) {
    $config
      ->set('sku_random_digits', 6);
  }
  if (!empty($values['batch'])) {
    $config
      ->set('batch_products', $values['batch']);
  }
  elseif ($config
    ->get('batch_products') == NULL) {
    $config
      ->set('batch_products', 50);
  }
  if (!empty($values['commerce_product_variation_bundle'])) {
    $config
      ->set('commerce_product_variation_bundle', $values['commerce_product_variation_bundle']);
  }
  elseif ($config
    ->get('commerce_product_variation_bundle') == NULL) {
    $config
      ->set('commerce_product_variation_bundle', 'default');
  }
  if (!empty($values['commerce_product_bundle'])) {
    $config
      ->set('commerce_product_bundle', $values['commerce_product_bundle']);
  }
  elseif ($config
    ->get('commerce_product_bundle') == NULL) {
    $config
      ->set('commerce_product_bundle', 'default');
  }
  if (!empty($values['external_folders'])) {
    $config
      ->set('external_folders', explode(',', $values['external_folders']));
  }
  elseif ($config
    ->get('external_folders') == NULL) {
    $config
      ->set('external_folders', []);
  }
  if (array_key_exists('flush_image_cache', $values)) {
    $config
      ->set('flush_image_cache', $values['flush_image_cache']);
  }
  $config
    ->set('expose_store', $values['expose_store']);
  $config
    ->save();
}