You are here

public function WebformVariant::prepare in Webform 8.5

Same name and namespace in other branches
  1. 6.x src/Plugin/WebformElement/WebformVariant.php \Drupal\webform\Plugin\WebformElement\WebformVariant::prepare()

Prepare an element to be rendered within a webform.

Parameters

array $element: An element.

\Drupal\webform\WebformSubmissionInterface $webform_submission: A webform submission. Webform submission is optional since it is not used by composite sub elements.

Overrides WebformDisplayOnTrait::prepare

See also

\Drupal\webform\Element\WebformCompositeBase::processWebformComposite

File

src/Plugin/WebformElement/WebformVariant.php, line 88

Class

WebformVariant
Provides a 'webform_variant' element.

Namespace

Drupal\webform\Plugin\WebformElement

Code

public function prepare(array &$element, WebformSubmissionInterface $webform_submission = NULL) {
  parent::prepare($element, $webform_submission);

  // Hide element if it should not be displayed on 'form'.
  if ($this
    ->hasProperty('display_on') && !$this
    ->isDisplayOn($element, WebformElementDisplayOnInterface::DISPLAY_ON_FORM)) {
    $element['#access'] = FALSE;
  }

  // Hide empty element.
  if (empty($element['#default_value'])) {
    $element['#access'] = FALSE;
  }
}