HtmlElement.php in Field Group 8.3
File
src/Element/HtmlElement.php
View source
<?php
namespace Drupal\field_group\Element;
use Drupal\Core\Form\FormStateInterface;
use Drupal\Core\Render\Element\RenderElement;
class HtmlElement extends RenderElement {
public function getInfo() {
$class = get_class($this);
return [
'#process' => [
[
$class,
'processGroup',
],
[
$class,
'processHtmlElement',
],
],
'#pre_render' => [
[
$class,
'preRenderGroup',
],
],
'#theme_wrappers' => [
'field_group_html_element',
],
];
}
public static function processHtmlElement(array &$element, FormStateInterface $form_state) {
if (!empty($element['#effect']) && $element['#effect'] !== 'none') {
$element['#attached']['library'][] = 'field_group/formatter.html_element';
$element['#attached']['library'][] = 'field_group/core';
$element['#attributes']['class'][] = 'field-group-html-element';
$element['#attributes']['class'][] = 'fieldgroup-collapsible';
$element['#attributes']['class'][] = 'effect-' . $element['#effect'];
if (!empty($element['#speed'])) {
$element['#attributes']['class'][] = 'speed-' . $element['#speed'];
}
if ($element['#effect'] == 'blind') {
$element['#attached']['library'][] = 'core/jquery.ui.effects.blind';
}
}
return $element;
}
}