123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218 |
- <?php
- session_start();
- require_once 'classes/Template.php';
- require_once 'classes/MainMenu.php';
- require_once 'classes/Concurso.php';
- require_once 'classes/Proyecto.php';
- require_once 'classes/ValidaSesion.php';
- require_once 'include/bd_pdo.php';
- //CONSTANTES Y VARIABLES GLOBALES
- $menu = 21;
- $submenu = 211;
- $titulo = 'Mi Cartel';
- $errorBD = false;
- $actual = null;
- $etapaEditor['idetapa'] = 0;
- $editorVisible = false;
- $img = 'img/cidit.webp';
- if (is_null($pdo) || !isset($_SESSION['usuario_id']))
- ValidaSesion::salirPagina();
- else{
- if (is_null($pdo))
- $errorBD = true;
- if (isset($_SESSION['actual'])) {
- $actual = unserialize($_SESSION['actual']);
- $img = 'concursos/' . $actual->getCarpeta() . '/logo.webp';
- }
- if (!$errorBD)
- $etapaEditor = Etapa::buscaEtapaXClave($pdo, 'EDITOR');
- if (isset($etapaEditor)){
- $fechasEditor = Concurso::getFechaXEtapa($pdo, $actual->getId(), $etapaEditor);
- if (isset($fechasEditor['activo']))
- $editorVisible = $fechasEditor['activo'];
- }
- if(isset($_SESSION['usuario_id']))
- $objSesion = new ValidaSesion($pdo,$submenu);
- else
- ValidaSesion::salirPagina();
- }
- ?>
- <!doctype html>
- <html lang="es">
- <head>
- <title><?php echo $titulo; ?> - CIDIT</title>
- <?php if ($editorVisible)
- Template::getCSS(array('-adds/grape/dist/css/grapes.min.css','-adds/grape/dist/css/grapesjs-preset-webpage.min.css','secciones/editor.css','secciones/cartel.css','secciones/iconos.css'));
- else
- Template::getCSS(array('secciones/editor.css','secciones/cartel.css')); ?>
- </head>
- <body>
- <?php Template::agregaLoading();
- $menuObj = new MainMenu($_SESSION['usuario_id'], $menu, $pdo);
- $menuObj->printMenu();
- Template::getNavInfo();
- if ($fechasEditor['fechas'] != 'Por definir')
- $idproyecto = Proyecto::alumnoTieneProyecto($pdo, $actual->getId(), $_SESSION['usuario_id']);
- else
- $idproyecto = -1;
- if (isset($objSesion) && $objSesion->tieneAcceso() && $idproyecto > 0){
- $proyecto = Proyecto::getProyectoXID($pdo, $idproyecto);
- $alumnos = organizaNombres(Proyecto::alumnosProyecto($pdo, $idproyecto));
- if ($editorVisible) {?>
- <input type="hidden" id="concurso" value="<?php echo $actual->getId(); ?>">
- <input type="hidden" id="etapa" value="<?php echo $etapaEditor['idetapa']; ?>">
- <main class="margen-principal mb-2">
- <div class="w-100 text-left my-3">
- <h1 class="mb-0"><?php echo $titulo; ?><span class="small text-azul6 ml-1"><?php if(isset($actual)) echo '(' . $actual->getNombre() . ' CIDIT)'; ?></span></h1>
- </div>
- <div class="d-flex flex-column justify-content-center align-items-center mx-auto max-cartel">
- <div class="d-flex flex-row mt-5">
- <div id="headerCartel" class="fijas">
- <div class="bg-primary d-flex flex-row justify-content-between align-items-start">
- <div id="tema" class="p-3"><?php echo $proyecto['proyecto']; ?></div>
- <img id="logoCartel" class="logo flex-grow-1 p-3" src="<?php echo $img; ?>" >
- </div>
- <div class="pleca"></div>
- <div class="integrantes text-center"><div>Integrantes:</div><div id="alumnos"><?php echo $alumnos; ?></div></div>
- </div>
- <div class="ajustadas gjs-blocks-c">
- <button id="plantilla" class="gjs-block gjs-one-bg justify-content-around align-items-center"><div class="ing-mi-cartel icono"></div><div>Cargar plantilla de cartel muestra</div></button>
- <button class="gjs-block gjs-one-bg justify-content-around align-items-center" data-toggle="modal" data-target="#modalPlantilla"><div class="ing-ojo icono"></div><div>Ver Cartel Muestra</div></button>
- <a class="gjs-block gjs-one-bg justify-content-around align-items-center" href="MANUAL.pdf" target="_blank"><div class="ing-descarga icono"></div><div>Descargar Manual de Uso</div></a>
- <button id="guardar" class="gjs-block gjs-one-bg justify-content-around align-items-center" data-id="<?php echo $idproyecto; ?>"><div class="ing-guardar icono"></div><div>Guardar Cambios</div></button>
- </div>
- </div>
- <div id="cartel" style="height:0px; overflow:hidden;" class="w-100">
- <?php cargaCartel($pdo, $idproyecto); ?>
- </div>
- <div class="d-flex flex-row justify-content-between w-100 mb-3">
- <img id="footerCartel" class="fijas" src="img/secciones/editor/footer.webp">
- <div class="ajustadas"></div>
- </div>
- </div>
- </main>
- <div class="modal fade modalGral" id="modalDemo">
- <div class="modal-dialog modal-dialog-centered">
- <div class="modal-content">
- <div class="modal-body d-flex flex-row align-items-center pb-0">
- <span class="display-1 text-warning ing-importante"></span>
- <div class="modal-text d-flex flex-column text-center px-2">
- <div class="modal-text-bold"></div>
- <div class="modal-text-italic"></div>
- </div>
- </div>
- <div class="modal-footer">
- <button type="button" class="border-0 bg-white mx-2" id="okModal"><span class="ing-aceptar text-success display-6"></span></button>
- <button type="button" class="border-0 bg-white mx-2" data-dismiss="modal"><span class="ing-cancelar text-danger display-6"></span></button>
- </div>
- </div>
- </div>
- </div>
- <div class="modal fade modalGral" id="modalPlantilla">
- <div class="modal-dialog modal-dialog-centered">
- <div class="modal-content">
- <div class="modal-header pb-0">
- <h4 class="modal-title indivisa-display-italic">Cartel Muestra</h4l>
- <button type="button" class="close" data-dismiss="modal"><div class="text-danger ing-cancelar"></div></button>
- </div>
- <div class="modal-body">
- <img src="img/secciones/editor/Cartel-plantilla.webp" />
- </div>
- </div>
- </div>
- </div>
- <div class="modal fade modalMarco" id="modalAviso">
- <div class="modal-dialog modal-dialog-centered">
- <div class="modal-content p-3">
- <div class="modal-body d-flex flex-column justify-content-center align-items-center">
- <button type="button" class="cerrar align-self-end m-0" data-dismiss="modal"><div class="ing-cancelar"></div></button>
- <div id="avisoMsg" class="text-primary display-5 text-center mb-3"></div>
- <div id="avisoIcon" class="display-1 mb-4"></div>
- </div>
- </div>
- </div>
- </div>
- <?php } else { ?>
- <main class="margen-principal mb-2">
- <div class="w-100 text-left my-3">
- <h1 class="mb-0"><?php echo $titulo; ?></h1>
- </div>
- <div class="fijas marcoCartel mx-auto mt-5 mb-3">
- <div class="bg-primary d-flex flex-row justify-content-between align-items-start">
- <div id="tema" class="p-3"><?php echo $proyecto['proyecto']; ?></div>
- <img class="logo flex-grow-1 p-3" src="<?php echo $img; ?>" >
- </div>
- <div class="pleca">
- </div>
- <div class="integrantes text-center"><div>Integrantes:</div><div><?php echo $alumnos; ?></div></div>
- <link rel="stylesheet" href="css/secciones/wrapper.css">
- <link rel="stylesheet" href="css/secciones/iconos.css">
- <div id="wrapper"><?php cargaCartel($pdo, $idproyecto); ?></div>
- <img class="w-100" src="img/secciones/editor/footer.webp">
- </div>
- </main>
- <?php }
- } else {
- $msg = '';
- if (!isset($objSesion) && !$objSesion->tieneAcceso()){
- $msg = 'No tienes accceso a éste sitio';
- } else {
- switch ($idproyecto){
- case 0: $msg = 'No tienes ningún proyecto registrado o aún no ha sido autorizado'; break;
- case -1: $msg = 'No ha sido definida la fecha de apertura para la creación de carteles'; break;
- }
- }
- ?>
- <main class="margen-principal mb-4">
- <div class="w-100 text-left my-3">
- <h1 class="mb-0"><?php echo $titulo; ?></h1>
- </div>
- <div class="fondoAnuncio mt-5">
- <div class="d-flex flex-column justify-content-center align-items-center">
- <div class="text-primary text-center mt-5 tit">¡Lo sentimos!</div>
- <div class="text-primary text-center small m-3 msg"><?php echo $msg; ?></div>
- <div class="ing-negar display-1 text-danger mb-4"></div>
- </div>
- </div>
- </main>
- <?php } ?>
- <div style="isolation: isolate;">
- <?php Template::footer(); ?>
- </div>
- <?php if ($editorVisible)
- Template::getJS(array('-adds/grape/dist/grapes.min.js','-adds/grape/dist/grapesjs-preset-webpage.min.js','secciones/editor.js'));
- else
- Template::getJS(array()); ?>
- </body>
- </html>
- <?php
- function organizaNombres($alumnos){
- $nombres = '';
- foreach ($alumnos as $alumno){
- $nombres .= mb_convert_case(mb_strtolower($alumno['apellidos']) . ' ' . mb_strtolower($alumno['nombre']), MB_CASE_TITLE, "UTF-8") . ',';
- }
- if (!empty($nombres))
- $nombres = substr($nombres,0,-1);
- return $nombres;
- }
- function cargaCartel($pdo, $idproyecto){
- $carpeta = Proyecto::carpetaProyecto($pdo, $idproyecto);
- $recurso = Recurso::recursoXNombre($pdo, 'HTML');
- $archivo = Recurso::recursoProyecto($pdo, $idproyecto, $recurso[0]['idrecurso']);
- if (!empty($archivo)){
- $archivo = 'concursos/' . $carpeta . '/' . $archivo;
- if (file_exists($archivo)) {
- $archivo = @file_get_contents($archivo);
- if ($archivo){
- $datos = json_decode($archivo,true);
- if (count($datos) > 0) { ?>
- <style><?php echo $datos['css']; ?></style>
- <?php echo $datos['html']; ?>
- <?php }
- }
- }
- }
- }
|