public function resolvePath($scopeName, $path, $rootVariable = '__ROOT__', $secure = true, $merge = true) { xapp_import('xapp.Path.Utils'); $scope = $this->getScope($scopeName); $rootVariable = $rootVariable ?: '__ROOT__'; $path = XApp_Path_Utils::securePath($path); if ($scope) { $root = $scope->resolveAbsolute($rootVariable) . DIRECTORY_SEPARATOR; if ($secure === true) { if ($merge == true) { return XApp_Path_Utils::securePath(XApp_Path_Utils::merge($root, XApp_Path_Utils::normalizePath($path))); } else { return XApp_Path_Utils::securePath($root . XApp_Path_Utils::normalizePath($path, false, false)); } } else { return XApp_Path_Utils::merge($root, XApp_Path_Utils::normalizePath($path, false, false)); } } else { throw new ErrorException("scope:" . $scopeName . "does not exist", 1390101); } }