protected function loadStackClass($class) { $stackQuery = \Staq\Util::getStackQuery($class); while ($stackQuery) { foreach (array_keys($this->extensions) as $extensionNamespace) { if ($realClass = $this->getRealClass($stackQuery, $extensionNamespace)) { $this->createClassAlias($class, $realClass); return TRUE; } } $stackQuery = \Staq\Util::popStackQuery($stackQuery); } $this->createClassEmpty($class); }
public function is($model) { return \Staq\Util::getStackQuery($model) == \Staq\Util::getStackQuery($this); }
protected function getParametersFromException($exception) { $parameters = []; $parameters['code'] = $exception->getCode(); $parameters['exception'] = $exception; if (\Staq\Util::isStack($exception)) { $parameters['query'] = \Staq\Util::getStackQuery($exception); $parameters['name'] = \Staq\Util::getStackSubQuery($exception); } else { $parameters['query'] = get_class($exception); $parameters['name'] = get_class($exception); } return $parameters; }
protected function preventExceptionLoop($exception) { if (\Staq\Util::isStack($exception)) { $name = \Staq\Util::getStackQuery($exception); } else { $name = get_class($exception); } if (in_array($name, $this->exceptionNames, TRUE)) { throw new \Exception('Uncatched exception "' . $exception->getMessage() . '"'); } $this->exceptionNames[] = $name; }
protected function getSettingFileNameFromStack($stack) { $settingFileName = \Staq\Util::getStackQuery($stack); return \Staq\Util::convertNamespaceToPath($settingFileName); }
public static function getModelControllerUrl($model, $action = 'view', $parameters = [], $absoluteURL = false) { $controllerName = \Staq\Util::getStackQuery($model); $controller = \Staq::Ctrl($controllerName); if ($controller) { $parameters = $controller->getRouteAttributes($model); } $uri = \Staq::App()->getUri($controller, $action, $parameters); return \Staq\Util::getPublicUrl($uri, $absoluteURL); }