You are here

function require_on_publish_field_config_submit in Require on Publish 8

Submit handler for the form_field_config_edit form.

1 string reference to 'require_on_publish_field_config_submit'
require_on_publish_form_field_config_edit_form_alter in ./require_on_publish.module
Implements hook_form_FORM_ID_alter().

File

./require_on_publish.module, line 70
Module file for the Require on Publish module.

Code

function require_on_publish_field_config_submit($form, FormStateInterface $form_state) {

  /** @var \Drupal\field\FieldConfigInterface $entity */
  $entity = $form_state
    ->getFormObject()
    ->getEntity();

  /** @var int $require_on_publish */
  $require_on_publish = $form_state
    ->getValue('require_on_publish');

  /** @var int $warn_on_empty */
  $warn_on_empty = $form_state
    ->getValue('warn_on_empty');
  if ($require_on_publish) {
    $entity
      ->setThirdPartySetting('require_on_publish', 'require_on_publish', $require_on_publish);
    if ($warn_on_empty) {
      $entity
        ->setThirdPartySetting('require_on_publish', 'warn_on_empty', $warn_on_empty);
    }
    else {
      $entity
        ->unsetThirdPartySetting('require_on_publish', 'warn_on_empty');
    }
  }
  else {
    $entity
      ->unsetThirdPartySetting('require_on_publish', 'require_on_publish');
    $entity
      ->unsetThirdPartySetting('require_on_publish', 'warn_on_empty');
  }
  $entity
    ->save();
}