public function process($uri) { if ($m = Core_Regexps::match_with_results('{^([^\\?]+)\\?}', $uri)) { $uri = trim($m[1]); } self::$uri = $uri; $struct = self::struct(); if (is_array($struct)) { foreach (array_keys($struct) as $key) { if (preg_match('/^set:(.+)/', $key, $m)) { $set = trim($m[1]); if (is_array($struct[$key])) { $this->controller->{$set}()->process(self::$uri, $struct[$key]); } unset($struct[$key]); } } $this->controller->process(self::$uri, $struct); } }
public function process($uri) { if ($m = Core_Regexps::match_with_results('{^([^\\?]+)\\?}', $uri)) { $uri = trim($m[1]); } self::$uri = $uri; $this->sets[':default'] = new CMS_Navigation3_LinkSet(); $struct = self::struct(); if (is_array($struct)) { foreach (array_keys($struct) as $key) { if (preg_match('/^set:(.+)/', $key, $m)) { $set = trim($m[1]); if (is_array($struct[$key])) { if (!isset($this->sets[$set])) { $this->sets[$set] = new CMS_Navigation3_LinkSet(); } $this->sets[$set]->process($struct[$key]); } unset($struct[$key]); } } $this->sets[':default']->process($struct); } }