public function renderContent($template = 'content', $return = false) { switch (URI::getURI()) { case '': $template = 'content'; break; case 'messages': $template = 'messages'; break; case 'friends': $template = 'friends'; break; case 'groups': $template = 'groups'; break; case 'settings': $template = 'settings'; break; case '?logout': $template = 'register'; break; default: $template = 'page404'; } if ($return) { return $this->render($template, true); } else { echo $this->render($template, true); } }
/** * Run Routing */ public static function run() { $route = null; if (file_exists(APP_PATH . 'Config/route.php')) { $route = (require APP_PATH . 'Config/route.php'); } elseif (APP_ENV === 'development') { error_dump('File \'' . APP_PATH . 'Config/route.php\' not found'); die; } self::$rootController = ''; $uri = URI::getURI(); $arrUri = explode('/', $uri); if ($route == null) { if (APP_ENV === 'development') { error_dump('Route config is not set correctly!'); die; } } self::$page404 = self::getPage404Config($route); self::$methodSeparator = self::getMethodSeparator($route); self::loadRootController($route); self::getClassAndMethod($route, $uri); if (!self::$routeFound) { self::$className = (isset($arrUri[0]) ? $arrUri[0] : '') . 'Controller'; self::$methodName = isset($arrUri[1]) ? $arrUri[1] : 'index'; } if (self::$className != '' && self::$methodName != '' && strtolower(self::$className) != strtolower(self::$rootController)) { $_modulePath = trim('Modules/' . ucfirst(trim(strtolower(str_replace('Controller', '', self::$className)))), '/') . '/'; self::$className = ucfirst(self::$className); if (file_exists(APP_PATH . 'Controllers/' . self::$className . '.php')) { self::callClassMethod(); } elseif (file_exists(APP_PATH . $_modulePath . 'Controllers/' . self::$className . '.php')) { $GLOBALS['modulePath'] = $_modulePath; self::callClassMethod(); } elseif (file_exists(APP_PATH . 'views/404.blade.php')) { $class = new self::$page404(); $class->index(); } else { error_dump('404 Page Not Found!'); die; } } }
/** * Get URI Segment * * @param $segment * @return string */ public static function segment($segment) { $segment = $segment > 0 ? $segment : 1; $uri = explode('/', URI::getURI()); return isset($uri[$segment - 1]) ? $uri[$segment - 1] : ''; }
/** * Run Core */ public function run() { /** * Require main helper */ require FW_PATH . 'Helpers/file.php'; require FW_PATH . 'Helpers/log.php'; require FW_PATH . 'Helpers/input.php'; require FW_PATH . 'Helpers/error.php'; require FW_PATH . 'Helpers/url.php'; require FW_PATH . 'Helpers/config.php'; /** * Check assets request */ if (self::isAssetsRequest(URI::getURI())) { exit; } /** * Require app config */ if (file_exists(APP_PATH . 'Config/app.php')) { $config = (require APP_PATH . 'Config/app.php'); if (is_array($config) && $config !== null) { foreach ($config as $key => $value) { $GLOBALS['config'][$key] = $value; } } } elseif (APP_ENV === 'development') { error_dump('File \'' . APP_PATH . 'Config/app.php\' not found!'); die; } /** * Require database config */ if (file_exists(APP_PATH . 'Config/database.php')) { $config = (require APP_PATH . 'Config/database.php'); if (is_array($config) && $config !== null) { foreach ($config as $key => $value) { $GLOBALS['config'][$key] = $value; } } } elseif (APP_ENV === 'development') { error_dump('File \'' . APP_PATH . 'Config/database.php\' not found!'); die; } /** * Require mimes config */ if (file_exists(APP_PATH . 'Config/mimes.php')) { $config = (require APP_PATH . 'Config/mimes.php'); if (is_array($config) && $config !== null) { foreach ($config as $key => $value) { $GLOBALS['config'][$key] = $value; } } } elseif (APP_ENV === 'development') { error_dump('File \'' . APP_PATH . 'Config/mimes.php\' not found!'); die; } $this->handleAutoload(); Route::run(); }