Commit b9de0424 authored by webchick's avatar webchick

Issue #2152229 by steveoliver, rteijeiro, joelpittet, JeroenT, InternetDevels,...

Issue #2152229 by steveoliver, rteijeiro, joelpittet, JeroenT, InternetDevels, michamilz, burgerboydaddy, hussainweb, shanethehat, jenlampton, kpa, AnythonyR, EVIIILJ, kgoel, Cottser, dsdeiz, hanpersand: Convert theme_textarea() to Twig
parent 4fe6358e
......@@ -2576,34 +2576,33 @@ function theme_form($variables) {
}
/**
* Returns HTML for a textarea form element.
* Prepares variables for textarea templates.
*
* @param $variables
* Default template: textarea.html.twig.
*
* @param array $variables
* An associative array containing:
* - element: An associative array containing the properties of the element.
* Properties used: #title, #value, #description, #rows, #cols,
* #placeholder, #required, #attributes, #resizable
*
* @ingroup themeable
*/
function theme_textarea($variables) {
function template_preprocess_textarea(&$variables) {
$element = $variables['element'];
element_set_attributes($element, array('id', 'name', 'rows', 'cols', 'placeholder'));
_form_set_attributes($element, array('form-textarea'));
$wrapper_attributes = array(
$variables['wrapper_attributes'] = new Attribute(array(
'class' => array('form-textarea-wrapper'),
);
));
// Add resizable behavior.
if (!empty($element['#resizable'])) {
$element['#attributes']['class'][] = 'resize-' . $element['#resizable'];
}
$output = '<div' . new Attribute($wrapper_attributes) . '>';
$output .= '<textarea' . new Attribute($element['#attributes']) . '>' . String::checkPlain($element['#value']) . '</textarea>';
$output .= '</div>';
return $output;
$variables['attributes'] = new Attribute($element['#attributes']);
$variables['value'] = String::checkPlain($element['#value']);
}
/**
......
......@@ -2725,6 +2725,7 @@ function drupal_common_theme() {
),
'textarea' => array(
'render element' => 'element',
'template' => 'textarea',
),
'tableselect' => array(
'render element' => 'element',
......
{#
/**
* @file
* Default theme implementation for a 'textarea' #type form element.
*
* Available variables
* - wrapper_attributes: A list of HTML attributes for the wrapper element.
* - attributes: A list of HTML attributes for the textarea element.
* - value: The textarea content.
*
* @see template_preprocess_textarea()
*
* @ingroup themeable
*/
#}
<div{{ wrapper_attributes }}><textarea{{ attributes }}>{{ value }}</textarea></div>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment