[Pieforms-commit] SF.net SVN: pieforms: [67] pieforms-php5/trunk/src/pieform.php
Status: Alpha
Brought to you by:
oracleshinoda
From: <ora...@us...> - 2006-11-22 20:54:10
|
Revision: 67 http://svn.sourceforge.net/pieforms/?rev=67&view=rev Author: oracleshinoda Date: 2006-11-22 12:54:03 -0800 (Wed, 22 Nov 2006) Log Message: ----------- Allow elements to have an 'ignore' parameter - if set, the element will not be output. Useful for keeping form definitions as one big array, instead of if statements and ['foo'] =... madness everywhere. Also copied a couple of checks to fieldset elements Modified Paths: -------------- pieforms-php5/trunk/src/pieform.php Modified: pieforms-php5/trunk/src/pieform.php =================================================================== --- pieforms-php5/trunk/src/pieform.php 2006-11-22 00:40:42 UTC (rev 66) +++ pieforms-php5/trunk/src/pieform.php 2006-11-22 20:54:03 UTC (rev 67) @@ -402,12 +402,16 @@ // Set some attributes for all elements $autofocusadded = false; foreach ($this->elements as $name => &$element) { + if (!empty($element['ignore'])) { + unset($this->elements[$name]); + continue; + } // The name can be in the element itself. This is compatibility for the perl version if (isset($element['name'])) { $name = $element['name']; } if (count($element) == 0) { - throw new PieformException('An element in form "' . $this->name . '" has no data'); + throw new PieformException('An element in form "' . $this->name . '" has no data (' . $name . ')'); } if (!isset($element['type'])) { $element['type'] = 'markup'; @@ -428,6 +432,17 @@ } if ($element['type'] == 'fieldset') { foreach ($element['elements'] as $subname => &$subelement) { + if (!empty($subelement['ignore'])) { + unset($element['elements'][$subname]); + continue; + } + // The name can be in the element itself. This is compatibility for the perl version + if (isset($subelement['name'])) { + $subname = $subelement['name']; + } + if (count($subelement) == 0) { + throw new PieformException('An element in form "' . $this->name . '" has no data (' . $subname . ')'); + } if (!isset($subelement['type'])) { $subelement['type'] = 'markup'; if (!isset($subelement['value'])) { This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site. |