/** * Return RedirectResponse object * * @param string $url * * @return RedirectResponse */ public function redirect($url = '/', $msg = '') { if ($msg !== '') { Session::set('flash', $msg); } return new ResponseRedirect($url); }
/** * Renderer and return all content to Response Class * * @return string $resalt */ public function renderContent() { //get all controller input data extract($this->data); //include controller relust in content $include = function ($controllerName, $actionName, $data = array()) { $reflectionMethod = new \ReflectionMethod($controllerName, $actionName . 'Action'); $response = $reflectionMethod->invokeArgs(new $controllerName(), $data); echo '<h3>Include</h3>'; echo '<p>'; $response->getContent(); echo '</p>'; }; //generate CSRF token to hidden form element $generateToken = function () { $csrfToken = Service::get('security')->generateCsrfToken(); echo '<input type="hidden" value="' . $csrfToken . '" name="csrfToken">'; }; //get current route information $getRoute = function ($name) { $routes = Service::get('routes'); return $routes[$name]['pattern']; }; $route = Service::get('route'); $request = new Request(); if ($request->isPost() && empty($post)) { $post = new \stdClass(); $post->title = $request->post('title'); $post->content = $request->post('content'); } if (Session::get('auth')) { $user = Service::get('security')->getUser(); } if (isset(Service::get('session')->flash)) { $flush = array('info' => array(Service::get('session')->flash)); unset(Service::get('session')->flash); } else { $flush = array(); } //Render template ob_start(); include $this->templateUrl; $content = ob_get_contents(); ob_end_clean(); //Render main layout ob_start(); include $this->layoutUrl; $this->renderDevMode(); $result = ob_get_contents(); ob_end_clean(); return $result; }
/** * Application constructor. */ public function __construct($configPath) { //Registration all configuration vars in the config container Registry::setConfigsArr(include $configPath); Service::set('router', new Router(Registry::getConfig('routes'))); Service::set('dbConnection', Connection::get(Registry::getConfig('pdo'))); Service::set('request', new Request()); Service::set('security', new Security()); Service::set('session', Session::getInstance()); Service::set('renderer', new Renderer(Registry::getConfig('main_layout'))); Service::set('eventManager', EventManager::getInstance()); //Registers the events Service::get('eventManager')->registerEvent('applicationInit')->registerEvent('parseRoute')->registerEvent('dispatchAction')->registerEvent('controllerRender')->registerEvent('controllerGenerateRoute')->registerEvent('controllerRedirect')->registerEvent('sendAction')->registerEvent('renderAction'); //Attaches a new listener Service::get('eventManager')->addListener('Framework\\Logger\\Logger'); //Sets the error display mode Helper::errorReporting(); //Launches the appropriate event Service::get('eventManager')->trigger('applicationInit', "The start of application"); }
/** * Generate and return CSRF token * * @return type */ public function generateCsrfToken() { $csrfToken = md5('csrf_solt_string_' . uniqid()); Session::set('csrfToken', $csrfToken); return $csrfToken; }
/** * Delete all data is session */ public function clear() { $this->session->destroy(); }