public function __construct($route) { if (!isset($_SESSION)) { //buscar opciones en el PHP.INI session_start(['use_only_cookies' => 1, 'auto_start' => 1]); } if (!isset($_SESSION['status'])) { $_SESSION['status'] = false; } if ($_SESSION['status']) { $this->route = !isset($_GET['r']) ? 'home' : $route; switch ($this->route) { case 'home': $controller = new HomeController(); $controller->load_view('home'); break; case 'usuarios': $controller = new HomeController(); if (!isset($_POST['r'])) { $controller->load_view('users'); } else { if ($_POST['r'] == 'user-add') { $controller->load_view('user-add'); } else { if ($_POST['r'] == 'user-edit') { $controller->load_view('user-edit'); } else { if ($_POST['r'] == 'user-delete') { $controller->load_view('user-delete'); } } } } break; case 'generos': $controller = new HomeController(); if (!isset($_POST['r'])) { $controller->load_view('genres'); } else { if ($_POST['r'] == 'genre-add') { $controller->load_view('genre-add'); } else { if ($_POST['r'] == 'genre-edit') { $controller->load_view('genre-edit'); } else { if ($_POST['r'] == 'genre-delete') { $controller->load_view('genre-delete'); } } } } break; case 'peliculas': $controller = new HomeController(); $controller->load_view('movies'); break; case 'salir': $controller = new Session(); $controller->logout(); break; default: $controller = new Error404Controller(); break; } } else { if (!isset($_POST['user']) && !isset($_POST['pass'])) { $controller = new HomeController(); $controller->load_view('login'); } else { $controller = new Session(); $session = $controller->login($_POST['user'], $_POST['pass']); if (is_array($session)) { $_SESSION['status'] = true; foreach ($session as $row) { $_SESSION['user'] = $row['user']; $_SESSION['email'] = $row['email']; $_SESSION['name'] = $row['name']; $_SESSION['birthday'] = $row['birthday']; $_SESSION['pass'] = $row['pass']; $_SESSION['role'] = $row['role']; } header('Location: ./'); } else { $controller = new HomeController(); $controller->load_view('login'); header("Location: ./?error={$session}"); } } } }