function EditExpressionForm::buildForm
Overrides FormInterface::buildForm
1 call to EditExpressionForm::buildForm()
- AddExpressionForm::buildForm in src/
Form/ AddExpressionForm.php - Form constructor.
1 method overrides EditExpressionForm::buildForm()
- AddExpressionForm::buildForm in src/
Form/ AddExpressionForm.php - Form constructor.
File
-
src/
Form/ EditExpressionForm.php, line 54
Class
- EditExpressionForm
- UI form to edit an expression like a condition or action in a rule.
Namespace
Drupal\rules\FormCode
public function buildForm(array $form, FormStateInterface $form_state, RulesUiHandlerInterface $rules_ui_handler = NULL, $uuid = NULL) {
$this->rulesUiHandler = $rules_ui_handler;
$this->component = is_object($form_state->get('component')) ? $form_state->get('component') : $this->rulesUiHandler
->getComponent();
$this->uuid = $form_state->get('uuid') ?: $uuid;
// During form rebuilds, keep track of changes using form state.
$form_state->set('rules_ui_handler', $this->rulesUiHandler);
$form_state->set('component', $this->component);
$form_state->set('uuid', $this->uuid);
$expression = $this->getEditedExpression($this->component);
if (!$expression) {
throw new NotFoundHttpException();
}
$form_handler = $expression->getFormHandler();
$form = $form_handler->form($form, $form_state);
return $form;
}