tieneAcceso()){ header("Location: ".$pag."?error=3"); exit(); } unset($objValida); if(!isset($_SESSION["periodo_id"])){ echo "No se ha especificado el periodo"; exit(); } if(isset($_POST["area"]) && is_numeric($_POST["area"]) && $_POST["area"]!=""){ $area = filter_input(INPUT_POST, "area", FILTER_SANITIZE_NUMBER_INT);//limpia texto } if(isset($area) && !empty($area)){ $stmt = $pdo->prepare('Select * from fs_materiasprofesor(:periodo, null) where "Area_id" = :area'); $stmt->bindParam(":area", $_POST["area"]); }else{ $stmt = $pdo->prepare('Select * from fs_materiasprofesor(:periodo, null)'); } $stmt->bindParam(":periodo", $_SESSION["periodo_id"]); if(!$stmt->execute()){ //print_r($stmt->errorInfo()); $errorDesc = "Ocurrió un error al cargar los datos del periodo"; }else{ $periodo_rs = $stmt->fetchAll(); } $stmt->closeCursor(); //Obtiene áreas académicas if(!isset($area)){ $area_nombre = "Todas"; }else{ $stmt = $pdo->prepare("Select * from fs_areaacademica(:area, NULL)"); $stmt->bindParam(":area", $area); if(!$stmt->execute()){ $errorDesc = "Ocurrió un error al cargar las áreas académicas."; }else{ $areas_rs = $stmt->fetch(); $area_nombre = $areas_rs["Area_desc"]; } $stmt->closeCursor(); } //----------- Archivos y zip --- $tmp_folder = "./zip/pdf_".date("dmyhis");//carpeta temporal if (!file_exists($tmp_folder)) { mkdir($tmp_folder, 0777, true); } $zip = new ZipArchive(); $zip_filename =strtolower("./zip/plancatedra_".$area_nombre."_".date("Ymd_his").".zip");//nombre de archivo final if ($zip->open($zip_filename, ZipArchive::CREATE)!==TRUE) { exit("cannot open <$zip_filename>\n"); } //----- $defaultConfig = (new Mpdf\Config\ConfigVariables())->getDefaults(); $fontDirs = $defaultConfig['fontDir']; $defaultFontConfig = (new Mpdf\Config\FontVariables())->getDefaults(); $fontData = $defaultFontConfig['fontdata']; $pdf_list = []; $xtpl = new XTemplate('../tpl/syllabus.tpl.html'); foreach($periodo_rs as $periodo){ $filter_mat = $periodo["Materia_id"]."_".$periodo["Grupo_id"]."_".$periodo["Submateria_id"]; $filter_materia_nom = $periodo["Materia_desc"]; $filter_gpo_nom = $periodo["Grupo_desc"]; $matArr = explode("_",$filter_mat); //-- $mat = $periodo["Materia_id"]; $gpo = $periodo["Grupo_id"]; $gpo_nom = $periodo["Grupo_desc"].$periodo["Carrera_prefijo"]; $usr = $periodo["Usuario_id"]; $stmt = $pdo->prepare('Select * from fs_usuario(:usr)'); $stmt->bindParam(":usr", $usr); if(!$stmt->execute()){ header("Location: ".$pag."?error=5"); exit(); }else{ $usr_rs = $stmt->fetch(); $usr_nombre = $usr_rs["Usuario_nombre"]." ".$usr_rs["Usuario_apellidos"]; } $stmt->closeCursor(); if($periodo["Submateria_id"]!= ""){ $sub = $periodo["Submateria_id"]; }else{ $sub=null; } $planObj = new PlanCatedra($pdo); if(!$planObj->generaCalendario($usr, $usr_nombre, $mat, $gpo, $gpo_nom, $sub)){ $errorDesc = "Ocurrió un error al generar el plan de .".$usr_nombre." ".$mat." ".$gpo_nom." ".$sub; } //--Nombre de materia $mat_nombre = ""; $mat_sem = ""; if(!isset($sub)){ $stmt = $pdo->prepare('Select "Materia_desc", "Materia_semestre" from fs_materia(:mat, NULL, NULL,NULL,NULL,0,NULL)'); $stmt->bindParam(":mat", $mat); if(!$stmt->execute()){ return false; //header("Location: ".$this->pag."?error=3"); exit(); } $mat_rs = $stmt->fetch(); $stmt->closeCursor(); $mat_nombre = $mat_rs["Materia_desc"]; $mat_sem = $mat_rs["Materia_semestre"]; unset($mat_rs); }else{ $stmt = $pdo->prepare('Select "Submateria_desc", "Materia_semestre" from fs_submateria(:mat, :sub)'); $stmt->bindParam(":mat", $mat); $stmt->bindParam(":sub", $sub); if(!$stmt->execute()){ //header("Location: ".$this->pag."?error=3"); return false; exit(); } $mat_rs = $stmt->fetch(); $stmt->closeCursor(); $mat_nombre = $mat_rs["Submateria_desc"]; $mat_sem = $mat_rs["Materia_semestre"]; unset($mat_rs); } $pdf_list[] = array("contenido"=> $planObj->getPlan(), "materia"=> $mat_nombre, "grupo"=> $gpo_nom, "profesor"=> iniciales($usr_nombre)); /*if(!isset($errorDesc)) $mpdf->WriteHTML($pdf_full); else $mpdf->WriteHTML($errorDesc); */ } /* echo $stylesheet; echo $pdf_full; exit;*/ $stylesheet = ""; $num = 0; foreach($pdf_list as $pdf){ $mpdf = new \Mpdf\Mpdf([ 'mode' => 'utf-8', 'format' => [215, 279], 'orientation' => 'P', 'margin_left' => 14, 'margin_right' => 14, 'margin_top' => 27, 'margin_bottom' => 27, 'fontDir' => array_merge($fontDirs, [ __DIR__ . '/../../fonts/indivisaFont/ttf', ]), 'fontdata' => $fontData + [ 'indivisa-display' => [ 'R' => 'IndivisaDisplaySans-Regular.ttf', ], 'indivisa-title' => [ 'R' => 'IndivisaDisplaySerif-RegularItalic.ttf', ], 'indivisa-text' => [ 'R' => 'IndivisaTextSans-Regular.ttf', ] ], 'default_font' => 'indivisa-text', ]); //$mpdf->SetDisplayMode('fullpage'); $header = '
![]() |
PLAN DE CÁTEDRA | FACULTAD DE INGENIERÍA |