public static function hook() { try { self::firstCall(); $securityYml = cache::getInstance()->loadYaml(config::getPathAbsolute() . 'config/security.yml', 'securityYml'); // preguntando si el módulo y la acción solicitada, tienen o no seguridad if (isset($securityYml[session::getInstance()->getModule()][session::getInstance()->getAction()]) === true and isset($securityYml[session::getInstance()->getModule()][session::getInstance()->getAction()]['security']) === true and $securityYml[session::getInstance()->getModule()][session::getInstance()->getAction()]['security'] === true) { // si hay seguridad, entonces preguntamos si el usuario está autenticado if (!session::getInstance()->isUserAuthenticated()) { self::saveUrlParams(); //routing::getInstance()->redirect(config::getDefaultModuleSecurity(), config::getDefaultActionSecurity()); routing::getInstance()->forward(config::getDefaultModuleSecurity(), config::getDefaultActionSecurity()); } // verifico permisos de acceso if (!self::verifyCredentials($securityYml, session::getInstance()->getModule(), session::getInstance()->getAction())) { routing::getInstance()->forward(config::getDefaultModulePermission(), config::getDefaultActionPermission()); } } /* else { session::getInstance()->deleteAttribute('shfSecurityModuleGO'); session::getInstance()->deleteAttribute('shfSecurityActionGO'); }*/ } catch (\PDOException $exc) { throw $exc; } }
/** * Carga los archivos declarados en el punto "load" del archivo routing.yml * de la ruta exigida al sistema * @return null */ public function loadIncludes() { if (($includes = sessionClass::getInstance()->getLoadFiles()) !== false) { foreach ($includes as $include) { include_once configClass::getPathAbsolute() . $include; } } return null; }
/** * * @param integer $message * @param string $culture [optional] * @param string $dictionary [optional] * @param array $vars [optional] $vars[':nombre'] = 'NOMBRE'; * @return string */ public static function __($message, $culture = null, $dictionary = 'default', $vars = array()) { if ($culture === null) { $culture = self::getCulture(); } $__ymlCulture = cacheManagerClass::getInstance()->loadYaml(configClass::getPathAbsolute() . 'i18n/' . $culture . '.yml', 'i18nYaml' . $culture); $rsp = ''; if (count($vars) > 0) { $keys = array_keys($vars); $values = array_values($vars); $rsp = str_replace($keys, $values, $__ymlCulture['dictionary'][$dictionary][$message]); } else { $rsp = $__ymlCulture['dictionary'][$dictionary][$message]; } return $rsp; }
private static function loadHooksAndExecute($listHooks, $filesToLoad = null) { if ($filesToLoad !== null and is_array($listHooks) and count($listHooks) > 0) { foreach ($listHooks as $hook) { if (isset($filesToLoad[$hook]) and is_array($filesToLoad[$hook])) { foreach ($filesToLoad[$hook] as $file) { include_once configClass::getPathAbsolute() . $file; } } $hookFileClass = $hook . 'HookClass'; include_once configClass::getPathAbsolute() . 'hooks/' . $hookFileClass . '.php'; $hookObj = '\\hook\\' . $hook . '\\' . $hookFileClass; $hookObj::hook(); } } }
private function includeFileAndInitialize($controllerFolder, $controllerFile) { include_once config::getPathAbsolute() . 'controller/' . $controllerFolder . '/' . $controllerFile . '.php'; return new $controllerFile(); }
private function registerDefaultModuleAndAction() { $yamlRouting = cacheManagerClass::getInstance()->loadYaml(configClass::getPathAbsolute() . 'config/routing.yml', 'routingYaml'); sessionClass::getInstance()->setModule($yamlRouting['homepage']['param']['module']); sessionClass::getInstance()->setAction($yamlRouting['homepage']['param']['action']); sessionClass::getInstance()->setLoadFiles(isset($yamlRouting['homepage']['load']) ? $yamlRouting['homepage']['load'] : false); sessionClass::getInstance()->setFormatOutput($yamlRouting['homepage']['param']['format']); }
public static function renderHTML($module, $template, $typeRender, $arg = array()) { if (isset($module) and isset($template)) { if (count($arg) > 0) { extract($arg); } switch ($typeRender) { case 'html': header(configClass::getHeaderHtml()); include_once configClass::getPathAbsolute() . 'libs/vendor/view/head.php'; include_once configClass::getPathAbsolute() . "view/{$module}/{$template}.html.php"; include_once configClass::getPathAbsolute() . 'libs/vendor/view/foot.php'; break; case 'json': header(configClass::getHeaderJson()); include_once configClass::getPathAbsolute() . "view/{$module}/{$template}.json.php"; break; case 'pdf': //header(configClass::getHeaderPdf()); include_once configClass::getPathAbsolute() . "view/{$module}/{$template}.pdf.php"; break; case 'javascript': header(configClass::getHeaderJavascript()); include_once configClass::getPathAbsolute() . "view/{$module}/{$template}.js.php"; break; case 'xml': header(configClass::getHeaderXml()); include_once configClass::getPathAbsolute() . "view/{$module}/{$template}.xml.php"; break; case 'excel2003': header(configClass::getHeaderExcel2003()); include_once configClass::getPathAbsolute() . "view/{$module}/{$template}.xls.php"; break; case 'excel2007': header(configClass::getHeaderExcel2007()); include_once configClass::getPathAbsolute() . "view/{$module}/{$template}.xlsx.php"; break; } } }