/** * Renders the login page * * @param \CodeCollab\Template\Html $template A HTML template renderer * @param \Demo\Form\Login $form The login form * @param \CodeCollab\Http\Request\Request $request The request object * * @return \Symfony\Component\HttpFoundation\Response The HTTP response */ public function login(Html $template, LoginForm $form, Request $request) : Response { if ($request->cookie('rememberme') === 'enabled') { $this->response->setStatusCode(StatusCode::FOUND); $this->response->addHeader('Location', $request->getBaseUrl() . '/cookie-login'); return $this->response; } $this->response->setContent($template->renderPage('/user/login.phtml', ['form' => $form])); if ($form->isValidated()) { $this->response->setStatusCode(StatusCode::UNAUTHORIZED); } return $this->response; }
/** * Render the method not allowed page * * @param \CodeCollab\Template\Html $template A HTML template renderer * * @return \Symfony\Component\HttpFoundation\Response The HTTP response */ public function methodNotAllowed(Html $template) { $this->response->setContent($template->renderPage('/error/generic.phtml')); $this->response->setStatusCode(StatusCode::METHOD_NOT_ALLOWED); return $this->response; }
/** * Renders a template * * @param string $template The template to render * @param array $data The template variables * * @return string The rendered template */ public function render(string $template, array $data = []) : string { return parent::render($this->theme->load($template), $data); }
/** * Renders the home page * * @param \CodeCollab\Template\Html $template A HTML template renderer * * @return \Symfony\Component\HttpFoundation\Response The HTTP response */ public function index(Html $template) { $this->response->setContent($template->renderPage('/home/index.phtml')); return $this->response; }