summaryrefslogtreecommitdiffstats
path: root/src/usr/local/www
diff options
context:
space:
mode:
authorStephen Beaver <sbeaver@netgate.com>2015-12-21 17:06:56 -0500
committerStephen Beaver <sbeaver@netgate.com>2015-12-21 17:06:56 -0500
commitc70b6835c32aaf16b0f6d89e596bf70f4b03008c (patch)
tree3874a311f9a38075504ebd7492f9e4a0261bac00 /src/usr/local/www
parent070a3568b90bd8636dd9e629ba63988ec8b62c96 (diff)
downloadpfsense-c70b6835c32aaf16b0f6d89e596bf70f4b03008c.zip
pfsense-c70b6835c32aaf16b0f6d89e596bf70f4b03008c.tar.gz
Added support for rows, cols and wrap to Forms_Textarea and to pkg_edit.php
Diffstat (limited to 'src/usr/local/www')
-rw-r--r--src/usr/local/www/classes/Form/Input.class.php7
-rw-r--r--src/usr/local/www/classes/Form/Textarea.class.php14
-rw-r--r--src/usr/local/www/pkg_edit.php44
3 files changed, 48 insertions, 17 deletions
diff --git a/src/usr/local/www/classes/Form/Input.class.php b/src/usr/local/www/classes/Form/Input.class.php
index 80b96c8..b8c0a30 100644
--- a/src/usr/local/www/classes/Form/Input.class.php
+++ b/src/usr/local/www/classes/Form/Input.class.php
@@ -122,6 +122,13 @@ class Form_Input extends Form_Element
return $this;
}
+ public function setCols($size)
+ {
+ $this->_attributes['cols'] = $size;
+
+ return $this;
+ }
+
public function setReadonly()
{
$this->_attributes['readonly'] = 'readonly';
diff --git a/src/usr/local/www/classes/Form/Textarea.class.php b/src/usr/local/www/classes/Form/Textarea.class.php
index 8c1c157..9cda51a 100644
--- a/src/usr/local/www/classes/Form/Textarea.class.php
+++ b/src/usr/local/www/classes/Form/Textarea.class.php
@@ -42,6 +42,20 @@ class Form_Textarea extends Form_Input
$this->_value = $value;
}
+ public function setRows($size)
+ {
+ $this->_attributes['rows'] = $size;
+
+ return $this;
+ }
+
+ public function setNoWrap()
+ {
+ $this->_attributes['wrap'] = 'none';
+
+ return $this;
+ }
+
protected function _getInput()
{
$element = parent::_getInput();
diff --git a/src/usr/local/www/pkg_edit.php b/src/usr/local/www/pkg_edit.php
index 45cf8f4..e304ca1 100644
--- a/src/usr/local/www/pkg_edit.php
+++ b/src/usr/local/www/pkg_edit.php
@@ -1015,37 +1015,47 @@ foreach ($pkg['fields']['field'] as $pkga) {
// Create a textarea element
case "textarea":
+ $rows = $cols = 0;
+
if ($pkga['rows']) {
- $rows = " rows='{$pkga['rows']}' ";
+ $rows = $pkga['rows'];
}
if ($pkga['cols']) {
- $cols = " cols='{$pkga['cols']}' ";
+ $cols = $pkga['cols'];
}
+
if (($pkga['encoding'] == 'base64') && !$get_from_post && !empty($value)) {
$value = base64_decode($value);
}
- $wrap =($pkga['wrap'] == "off" ? 'wrap="off" style="white-space:nowrap;"' : '');
-
- if ($grouping) {
- $group->add(new Form_Textarea(
+ $grp = new Form_Textarea(
$pkga['fieldname'],
$pkga['fielddescr'],
$value
- ))->setHelp(fixup_string($pkga['description']));
+ );
+
+ $grp->setHelp(fixup_string($pkga['description']));
+
+ if ($rows > 0) {
+ $grp->setRows($rows);
+ }
+
+ if ($cols > 0) {
+ $grp->setCols($cols);
+ }
+
+ if ($pkga['wrap'] == "off") {
+ $grp->setAttribute("wrap", "off");
+ $grp->setAttribute("style", "white-space:nowrap;");
+ }
+
+ if ($grouping) {
+ $group->add($grp);
} else {
if (isset($pkga['advancedfield']) && isset($advfield_count)) {
- $advanced->addInput(new Form_Textarea(
- $pkga['fieldname'],
- $pkga['fielddescr'],
- $value
- ))->setHelp(fixup_string($pkga['description']));
+ $advanced->addInput($grp);
} else {
- $section->addInput(new Form_Textarea(
- $pkga['fieldname'],
- $pkga['fielddescr'],
- $value
- ))->setHelp(fixup_string($pkga['description']));
+ $section->addInput($grp);
}
}
OpenPOWER on IntegriCloud