You are here

public static function ContextFormTrait::switchContextMode in Rules 8.3

Submit callback: switch a context to data selecor or direct input mode.

File

src/Context/Form/ContextFormTrait.php, line 179

Class

ContextFormTrait
Provides form logic for handling contexts when configuring an expression.

Namespace

Drupal\rules\Context\Form

Code

public static function switchContextMode(array &$form, FormStateInterface $form_state) {
  $element_name = $form_state
    ->getTriggeringElement()['#name'];
  $mode = $form_state
    ->get($element_name);
  $switched_mode = $mode == ContextDefinitionInterface::ASSIGNMENT_RESTRICTION_SELECTOR ? ContextDefinitionInterface::ASSIGNMENT_RESTRICTION_INPUT : ContextDefinitionInterface::ASSIGNMENT_RESTRICTION_SELECTOR;
  $form_state
    ->set($element_name, $switched_mode);
  $form_state
    ->setRebuild();
}