protected function __construct() { require_once MOOJON_DIRECTORY . '/classes/moojon.exception.class.php'; require_once MOOJON_DIRECTORY . '/classes/moojon.config.class.php'; require_once MOOJON_DIRECTORY . '/classes/moojon.files.class.php'; require_once MOOJON_DIRECTORY . '/classes/moojon.paths.class.php'; require_once MOOJON_DIRECTORY . '/classes/moojon.base.cli.class.php'; require_once MOOJON_DIRECTORY . '/classes/moojon.cli.class.php'; require_once MOOJON_DIRECTORY . '/functions/moojon.core.functions.php'; switch (strtoupper(UI)) { case 'CGI': ini_set('memory_limit', '256M'); $uri = moojon_uri::get_uri(); moojon_config::update(moojon_paths::get_project_config_environment_app_directory(ENVIRONMENT, APP)); echo self::render_app($uri); break; case 'CLI': moojon_config::get_data(); $cli_class = CLI; new $cli_class(); break; default: throw new moojon_exception('Invalid UI (' . UI . ')'); break; } }
protected function __construct() { $uri = array_key_exists('REQUEST_URI', $_SERVER) ? $_SERVER['REQUEST_URI'] : $_SERVER['PATH_INFO']; $this->uri = self::clean_uri($uri); if ($match = moojon_routes::map($this->uri)) { $config = array_merge(moojon_config::get_data(), moojon_config::read(moojon_paths::get_project_config_environment_app_directory(ENVIRONMENT, $match->get('app')))); if (array_key_exists('secure', $config) && $config['secure'] === true && !moojon_security::authenticate()) { moojon_cache::disable(); $pattern = ':app/:controller/:action'; $match = new moojon_route_match($pattern, array_merge($match->get_params(), array('app' => $config['security_app'], 'controller' => $config['security_controller'], 'action' => $config['security_action'])), new moojon_route($pattern)); $this->uri = $config['security_app'] . '/' . $config['security_controller'] . '/' . $config['security_action']; } $this->match = $match; $this->data = $this->match->get_params(); $this->route = $this->match->get_route(); self::try_define('APP', $this->data['app']); self::try_define('CONTROLLER', $this->data['controller']); self::try_define('ACTION', $this->data['action']); } else { self::_404($this->uri); } }
private static function environment_app_config($environment, $app) { $project_config_environment_app_directory = moojon_paths::get_project_config_environment_app_directory($environment, APP); moojon_files::attempt_mkdir($project_config_environment_app_directory); self::run(moojon_paths::get_moojon_templates_directory() . 'app.config.template', "{$project_config_environment_app_directory}/app.config.php", array(), false, true); }