summaryrefslogtreecommitdiff
path: root/includes/htmlform/HTMLTextAreaField.php
diff options
context:
space:
mode:
Diffstat (limited to 'includes/htmlform/HTMLTextAreaField.php')
-rw-r--r--includes/htmlform/HTMLTextAreaField.php38
1 files changed, 38 insertions, 0 deletions
diff --git a/includes/htmlform/HTMLTextAreaField.php b/includes/htmlform/HTMLTextAreaField.php
new file mode 100644
index 00000000..21173d2a
--- /dev/null
+++ b/includes/htmlform/HTMLTextAreaField.php
@@ -0,0 +1,38 @@
+<?php
+
+class HTMLTextAreaField extends HTMLFormField {
+ const DEFAULT_COLS = 80;
+ const DEFAULT_ROWS = 25;
+
+ function getCols() {
+ return isset( $this->mParams['cols'] ) ? $this->mParams['cols'] : static::DEFAULT_COLS;
+ }
+
+ function getRows() {
+ return isset( $this->mParams['rows'] ) ? $this->mParams['rows'] : static::DEFAULT_ROWS;
+ }
+
+ function getInputHTML( $value ) {
+ $attribs = array(
+ 'id' => $this->mID,
+ 'cols' => $this->getCols(),
+ 'rows' => $this->getRows(),
+ ) + $this->getTooltipAndAccessKey();
+
+ if ( $this->mClass !== '' ) {
+ $attribs['class'] = $this->mClass;
+ }
+
+ $allowedParams = array(
+ 'placeholder',
+ 'tabindex',
+ 'disabled',
+ 'readonly',
+ 'required',
+ 'autofocus'
+ );
+
+ $attribs += $this->getAttributes( $allowedParams );
+ return Html::textarea( $this->mName, $value, $attribs );
+ }
+}