PEAR is discontinued

This is a static archive preserving historical releases and metadata. No new packages or updates will be published. For updates to existing packages, or to publish new packages, please use Composer and Packagist.

Home » Database » DB_DataObject_FormBuilder » Bug #5992

Support for defining field label as array

Details

Request #5992Support for defining field label as array
Submitted2005-11-17 07:12 UTC
Fromalex at cgi-central dot net
StatusOpen
PackageDB_DataObject_FormBuilder
PHP Version4.3.11
OSany
Roadmaps(Not assigned)

Comments

[2005-11-17 07:12 UTC] alex at cgi-central dot net

Description:
------------
HTML_QuickForm supports defining field labels as array. Have a look to pear/docs/HTML_QuickForm/docs/renderers/multiple-labels.php

Howevr, when you define field label as array in $fb_FieldLabels array, it is handled incorrectly ("Array" is passed instead of field title to addRule function). Below patch will fix this situation.

I hope this is self-explanatory

Test script:
---------------
diff -ur DataObject-orig/FormBuilder/QuickForm.php DataObject/FormBuilder/QuickForm.php
--- DataObject-orig/FormBuilder/QuickForm.php Thu Oct 20 13:01:36 2005
+++ DataObject/FormBuilder/QuickForm.php Mon Oct 24 10:21:33 2005
@@ -787,13 +787,13 @@
}
if ($rule['rule'] === false) {
$this->_form->$ruleFunction($realFieldName,
- sprintf($rule['message'], $fieldLabel),
+ sprintf($rule['message'], is_array($fieldLabel)? $fieldLabel[0] : $fieldLabel),
$rule['validator'],
'',
$ruleSide);
} else {
$this->_form->$ruleFunction($realFieldName,
- sprintf($rule['message'], $fieldLabel),
+ sprintf($rule['message'], is_array($fieldLabel)? $fieldLabel[0] : $fieldLabel),
$rule['validator'],
$rule['rule'],
$ruleSide);