Revision: 323
http://gemstracker.svn.sourceforge.net/gemstracker/?rev=323&view=rev
Author: matijsdejong
Date: 2011-12-01 11:59:09 +0000 (Thu, 01 Dec 2011)
Log Message:
-----------
Bugfix: parameter source object did not handle array sources
Modified Paths:
--------------
branches/1.5.0-pulse/library/classes/Gems/Menu/ParameterCollector.php
Modified: branches/1.5.0-pulse/library/classes/Gems/Menu/ParameterCollector.php
===================================================================
--- branches/1.5.0-pulse/library/classes/Gems/Menu/ParameterCollector.php 2011-12-01 10:43:40 UTC (rev 322)
+++ branches/1.5.0-pulse/library/classes/Gems/Menu/ParameterCollector.php 2011-12-01 11:59:09 UTC (rev 323)
@@ -51,10 +51,19 @@
public function __construct()
{
- $sources = MUtil_Ra::flatten(func_get_args());
- foreach ($sources as $source) {
- $this->addSource($source);
+ $sources = MUtil_Ra::args(func_get_args());
+ $array = array();
+ foreach ($sources as $key => $source) {
+ // Fix for array sources.
+ if (is_string($key)) {
+ $array[$key] = $source;
+ } else {
+ $this->addSource($source);
+ }
}
+ if ($array) {
+ $this->addSource($array);
+ }
}
public function addSource($source)
@@ -92,6 +101,7 @@
$this->values[$name] = $source->__get($name);
} elseif (is_array($source)) {
+ MUtil_Echo::track($name, $source);
if (isset($source[$name])) {
$this->values[$name] = $source[$name];
}
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
|