diff options
Diffstat (limited to 'platform/www/inc/Form/TextareaElement.php')
-rw-r--r-- | platform/www/inc/Form/TextareaElement.php | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/platform/www/inc/Form/TextareaElement.php b/platform/www/inc/Form/TextareaElement.php new file mode 100644 index 0000000..92741ee --- /dev/null +++ b/platform/www/inc/Form/TextareaElement.php @@ -0,0 +1,51 @@ +<?php +namespace dokuwiki\Form; + +/** + * Class TextareaElement + * @package dokuwiki\Form + */ +class TextareaElement extends InputElement { + + /** + * @var string the actual text within the area + */ + protected $text; + + /** + * @param string $name The name of this form element + * @param string $label The label text for this element + */ + public function __construct($name, $label) { + parent::__construct('textarea', $name, $label); + $this->attr('dir', 'auto'); + } + + /** + * Get or set the element's value + * + * This is the preferred way of setting the element's value + * + * @param null|string $value + * @return string|$this + */ + public function val($value = null) { + if($value !== null) { + $this->text = cleanText($value); + return $this; + } + return $this->text; + } + + /** + * The HTML representation of this element + * + * @return string + */ + protected function mainElementHTML() { + if($this->useInput) $this->prefillInput(); + return '<textarea ' . buildAttributes($this->attrs()) . '>' . + formText($this->val()) . '</textarea>'; + } + +} |