public function WebformSubmissionField::render in Webform Views Integration 8.5
Renders the field.
Parameters
\Drupal\views\ResultRow $values: The values retrieved from a single row of a view's query result.
Return value
string|\Drupal\Component\Render\MarkupInterface The rendered output. If the output is safe it will be wrapped in an object that implements MarkupInterface. If it is empty or unsafe it will be a string.
Overrides FieldPluginBase::render
1 method overrides WebformSubmissionField::render()
- WebformSubmissionCompositeField::render in src/
Plugin/ views/ field/ WebformSubmissionCompositeField.php - Renders the field.
File
- src/
Plugin/ views/ field/ WebformSubmissionField.php, line 128
Class
- WebformSubmissionField
- Webform submission field.
Namespace
Drupal\webform_views\Plugin\views\fieldCode
public function render(ResultRow $values) {
/** @var \Drupal\webform\WebformSubmissionInterface $webform_submission */
$webform_submission = $this
->getEntity($values);
if ($webform_submission && $webform_submission
->access('view')) {
$webform = $webform_submission
->getWebform();
// Get format and element key.
$format = $this->options['webform_element_format'];
$element_key = $this->definition['webform_submission_field'];
// Get element and element handler plugin.
$element = $webform
->getElement($element_key, TRUE);
if (!$element) {
return [];
}
// Set the format.
$element['#format'] = $format;
// Get element handler and get the element's HTML render array.
$element_handler = $this->webformElementManager
->getElementInstance($element);
$options = [];
if (!$this->options['webform_multiple_value']) {
$options['delta'] = $this->options['webform_multiple_delta'];
}
return $element_handler
->formatHtml($element, $webform_submission, $options);
}
return [];
}