page = $_SERVER['PHP_SELF']; //Page that instantiates the template. $this->prefix = '../'; //Default prefix. $this->set_page_prefix(); //Assigns the name and prefix of the page. $this->session = 'Iniciar Sesión'; //Default, the session has not started. $this->session_route = 'login/'; //Default, the session has not started. $this->panel = ''; //Default, the session has not started. $this->user_route = 'panel_user/'; //Default, the type of client is user. } //Methods: //Assigns the name and prefix of the page: private function set_page_prefix() { switch(true){ case strpos($this->page, 'panel_user'): $this->page = 'Panel de Usuario'; break; case strpos($this->page, 'panel_manager'): $this->page = 'Panel de Gerente'; break; case strpos($this->page, 'panel_admin'): $this->page = 'Panel de Administrador'; break; case strpos($this->page, 'login'): $this->page = 'Acceso'; break; case strpos($this->page, 'logout'): $this->page = 'Cerrar Sesión'; break; case strpos($this->page, 'register'): $this->page = 'Registro de Usuario'; break; case strpos($this->page, 'showtimes'): $this->page = 'Cartelera'; break; case strpos($this->page, 'cinemas'): $this->page = 'Nuestros Cines'; break; case strpos($this->page, 'about_us'): $this->page = 'Sobre FDI-Cines'; $this->prefix = '../../'; break; case strpos($this->page, 'terms'): $this->page = 'Términos y Condiciones'; $this->prefix = '../../'; break; case strpos($this->page, 'detalles'): $this->page = 'Detalles'; $this->prefix = '../../'; break; case strpos($this->page, 'bocetos'): $this->page = 'Bocetos'; $this->prefix = '../../'; break; case strpos($this->page, 'miembros'): $this->page = 'Miembros'; $this->prefix = '../../'; break; case strpos($this->page, 'planificacion'): $this->page = 'Planificación'; $this->prefix = '../../'; break; case strpos($this->page, 'contacto'): $this->page = 'Contacto'; break; default: $this->page = 'FDI-Cines'; $this->prefix = './'; break; } } //Returns page name: function get_page(){ return $this->page; } //Returns page prefix: function get_prefix(){ return $this->prefix; } //Print generic Head: function print_head(){ $page = $this->page; $prefix = $this->prefix; echo" CompluCine | {$page} \n"; } //Print generic Header: function print_header(){ $page = $this->page; $prefix = $this->prefix; $session = $this->session; $session_route =$this->session_route; $user_route = $this->user_route; $panel =$this->panel; if(isset($_SESSION["nombre"])){ if($_SESSION["rol"] == "admin") $user_route = 'panel_admin/'; else if($_SESSION["rol"] == "manager") $user_route = 'panel_manager/'; $panel = "
  • Mi Panel
  • "; $session = 'Cerrar Sesión'; $session_route = 'logout/'; } echo"
    favicon CompluCine | {$page}
    \n"; } //Print generic subHeader: function print_subheader(){ //$page = $this->page; $prefix = $this->prefix; echo"
    \n"; } //Print generic Main: function print_main(){ $page = $this->page; $prefix = $this->prefix; /* SubHeader on Main */ $sub_header = ''; if(strpos($_SERVER['PHP_SELF'], 'fdicines')){ $sub_header = "
    \n"; } /* MAIN */ echo"
    logo_FDI-Cines
    {$sub_header}

    {$page}


    \n"; } //Print panel menu: function print_panelMenu($panel){ if($_SESSION["login"]){ $prefix = $this->prefix; $menus = array("
  • Panel Principal
  • "); switch($panel){ case "admin": array_push($menus, "
  • Ver como...
  • "); array_push($menus, "
  • Modificar
  • "); break; case "manager": array_push($menus, "
  • Ver como...
  • "); array_push($menus, "
  • Modificar
  • "); break; case "user": array_push($menus, "
  • Cuenta de usuario
  • "); array_push($menus, "
  • Historial Compras
  • "); array_push($menus, "
  • Datos Pago
  • "); array_push($menus, "
  • Eliminar Usuario
  • "); break; default: $menus = array(); break; } if($_SESSION["rol"] === $panel){ echo"
    \n"; } } } //Print Films Cards: function print_fimls(){ //List of the movies: require_once(__DIR__.'/common/film_dao.php'); $prefix= $this->get_prefix(); $films = new Film_DAO("complucine"); $films_array = $films->allFilmData(); $ids = array(); $tittles = array(); $descriptions = array(); $times = array(); $languages = array(); foreach($films_array as $key => $value){ $ids[$key] = $value->getId(); $tittles[$key] = $value->getTittle(); $descriptions[$key] = $value->getDescription(); $times[$key] = $value->getDuration(); $languages[$key] = $value->getLanguage(); } switch($this->page){ case "Cartelera": for($i = 0; $i < count($films_array); $i++){ $tittle = str_replace('_', ' ', $tittles[$i]); if($i%2 === 0){ if($i != 0) echo " "; echo "
    "; } else{ if($i != 0) echo "
    "; echo "
    "; } echo "
    ".$tittles[$i]."

    ".$tittle."


    ".$descriptions[$i]."

    Duración: ".$times[$i]." minutos

    "; } echo "
    \n"; break; case "Panel de Administrador": echo"
    "; for($i = 0; $i < count($films_array); $i++){ $tittle = str_replace('_', ' ', $tittles[$i]); if($i%2 === 0){ if($i != 0) echo "
    "; echo "
    "; } else{ if($i != 0) echo "
    "; echo "
    "; } echo "
    ".$tittles[$i]."

    ".$tittle."


    "; } echo "
    \n"; break; case "Panel de Gerente": break; default: echo'

    Últimos Estrenos


    '; $count = 0; for($i = count($tittles)-4; $i < count($tittles); $i++){ if($count%2===0){ if($count != 0) echo "
    "; echo "
    "; } echo "
    ".$tittles[$i]."
    "; $count++; } echo "
    "; $count = rand(0, count($tittles)-1); $title = str_replace('_', ' ', $tittles[$count]); echo "

    {$title}


    ".$tittles[$count]."
    \n"; break; } } //Print Cinemas info: function print_cinemas(){ //List of the cinemas: require_once(__DIR__.'/common/cinema_dao.php'); $prefix= $this->get_prefix(); $cine = new Cinema_DAO("complucine"); $cinemas = $cine->allCinemaData(); $ids = array(); $names = array(); $directions = array(); $phones = array(); if(is_array($cinemas)){ foreach($cinemas as $key => $value){ $ids[$key] = $value->getId(); $names[$key] = $value->getName(); $directions[$key] = $value->getDirection(); $phones[$key] = $value->getPhone(); } } switch($this->page){ case "Panel de Administrador": echo "
    "; if(is_array($cinemas)){ for($i = 0; $i < count($cinemas); $i++){ echo ' '; } } echo'
    Id Nombre Direccion Telefono
    '. $ids[$i] .' '. $names[$i] .' '. $directions[$i] .' '. $phones[$i] .'
    '; break; default: break; } } //Print session MSG: function print_msg() { if(isset($_SESSION['message'])){ echo "
    ".$_SESSION['message']."
    "; unset($_SESSION['message']); } } //Print generic Footer: function print_footer(){ $prefix = $this->prefix; /* if (isset($_GET["css"]) && $_GET["css"] === true) { $css = "{$prefix}assets/css/main.css"; $nameCSS = "Contraste Normal"; } else { $css = "{$prefix}assets/css/highContrast.css"; $nameCSS = "Alto Contraste"; } */ $css = "{$prefix}assets/css/highContrast.css"; $nameCSS = "Alto Contraste"; echo" \n"; } } ?>