public function run() { $dateTimeView = new \view\DateTimeView(); $layoutView = new \view\LayoutView(); $navigationView = new \view\NavigationView(); $sessionHandler = new \common\SessionHandler(); $isLoggedIn = false; if ($navigationView->userWantsToRegister()) { $registerModel = new \model\RegisterModel($this->userDAL); $registerView = new \view\RegisterView($sessionHandler, $registerModel); $registerController = new \controller\RegisterController($registerModel, $registerView); $registerController->doRegisterAction(); $html = $registerController->getView()->response(); } else { $cookieHandler = new \view\CookieHandler(); $loginModel = new \model\LoginModel($sessionHandler, $this->userDAL); $loginView = new \view\LoginView($sessionHandler, $cookieHandler, $loginModel); $loginController = new \controller\LoginController($loginModel, $loginView); $isLoggedIn = $loginController->doLoginAction(); $html = $loginController->getView()->response(); } $layoutView->render($isLoggedIn, $html, $dateTimeView, $navigationView); }