tieneAcceso()){ $objSesion->terminaSesion(); } $objSesion->validaPeriodoUsuario();//si no tiene periodo manda a main ?> GEMA - Facultad de Ingeniería
printMenu(); $filter_periodo = $_SESSION["periodo_id"]; if(isset($_POST["plan"]) && is_numeric($_POST["plan"]) && trim($_POST["plan"]) != ""){ $filter_plan = filter_input(INPUT_POST, "plan", FILTER_SANITIZE_NUMBER_INT);//limpia texto } if(isset($_POST["sem"]) && is_numeric($_POST["sem"]) && trim($_POST["sem"]) != ""){ $filter_sem = filter_input(INPUT_POST, "sem", FILTER_SANITIZE_NUMBER_INT);//limpia texto } if(isset($_SESSION["nivel_id"], $_SESSION["periodo_id"]) && $_SESSION["nivel_id"] != "" && $_SESSION["periodo_id"] != ""){ //Plan de estudios $stmt = $pdo->prepare('Select * from fs_planestudio(:nivel, NULL, NULL, true, 0, NULL)'); $stmt->bindPAram(":nivel", $_SESSION["nivel_id"]); if(!$stmt->execute()){ $errorDesc = "Ocurrió un error al cargar los planes de estudio"; }else{ $plan_rs = $stmt->fetchAll(); } $stmt->closeCursor(); } if(isset($filter_plan, $filter_sem)){ $error = false; $prefijo = ""; foreach($plan_rs as $plan){ if($plan["PlanEstudio_id"] == $filter_plan) $prefijo = $plan["Carrera_prefijo"]; break; } //Obtiene tipos de calificaciones $stmt = $pdo->prepare('Select * from fs_tipocalificacion(NULL) WHERE "TipoCalificacion_esEquivalencia" = false ');//no revalidadas if(!$stmt->execute()){ $errorDesc = "Ocurrió un error al cargar los tipos de calificaciones"; //print_r($stmt->errorInfo()); exit(); $error = true; }else{ $tipocalif_rs = $stmt->fetchAll(); } $stmt->closeCursor(); //materias por asignar $labelMateriasArr =array(); $stmt = $pdo->prepare('Select * from fs_materiagrupo(:plan, :sem, NULL) WHERE "Area_hasAlerta" = true'); $stmt->bindParam(":plan", $filter_plan); $stmt->bindParam(":sem", $filter_sem); if(!$stmt->execute()){ $errorDesc = "Ocurrió un error al leer las materias del semestre."; print_r($stmt->errorInfo()); exit(); $error = true; }else{ $mat_rs = $stmt->fetchAll(); foreach($mat_rs as $mat){ $labelMateriasArr[$mat["Materia_id"]] = $mat["Materia_desc"]; } $labelMateriasArr = removeKey($labelMateriasArr); } //------------ //reporte por plan if(!$error){ $stmt = $pdo->prepare('Select * from fs_promedio_plan(:periodo, NULL, false)');//sólo no revalidadas $stmt->bindParam(":periodo", $_SESSION["periodo_id"]); if(!$stmt->execute()){ $error = true; $errorDesc = "Ocurrió un error al cargar los promedios por plan"; //print_r($stmt->errorInfo()); exit(); }else{ $rs = $stmt->fetchAll(); $planArr = array(); $plan_last = -1; $califArr = array(); $p = 0; foreach($rs as $plan){ if($plan_last != $plan["PlanEstudio_id"]){ if($plan_last != -1){ $planArr[$p]["califArr"]=$califArr; $p++; } $plan_last = $plan["PlanEstudio_id"]; $califArr = array(); foreach($tipocalif_rs as $tipo){ $califArr[$tipo["TipoCalificacion_id"]] = array("data"=>0, "existe"=>0); } } $planArr[$p] = array("id" => $plan["PlanEstudio_id"], "desc" =>$plan["Carrera_desc"]." ".$plan["PlanEstudio_desc"], "califArr"=>array()); $califArr[$plan["TipoCalificacion_id"]] = array("data"=>$plan["Calificacion_promedio"]/10, "existe"=>1); } if($plan_last != -1){ $planArr[$p]["califArr"]=$califArr; } unset($p); } $stmt->closeCursor(); } //reporte por grupos if(!$error){ $stmt = $pdo->prepare('Select * from fs_promedio_grupo(:periodo, :plan, :sem)');//sólo ord $stmt->bindParam(":periodo", $_SESSION["periodo_id"]); $stmt->bindParam(":plan", $filter_plan); $stmt->bindParam(":sem", $filter_sem); if(!$stmt->execute()){ $errorDesc = "Ocurrió un error al cargar los promedios por grupo"; $error = true; //print_r($stmt->errorInfo()); exit(); }else{ $rs = $stmt->fetchAll(); $gpoArr = array(); $grupo_last = -1; $califArr = array(); $g = 0; foreach($rs as $grupo){ if($grupo_last != $grupo["Grupo_id"]){ if($grupo_last != -1){ $gpoArr[$g]["califArr"]=removeKey($califArr); $g++; } $grupo_last = $grupo["Grupo_id"]; $califArr = array(); foreach($mat_rs as $mat){ $califArr[$mat["Materia_id"]] = array("data"=>0, "materia"=>$mat["Materia_desc"], "existe"=>0); } } $gpoArr[$g] = array("id" => $grupo["Grupo_id"], "desc" =>$grupo["Grupo_desc"]." ".$grupo["Carrera_prefijo"], "califArr"=>array()); $califArr[$grupo["Materia_id"]] = array("data"=>$grupo["Calificacion_promedio"]/10, "materia"=>$grupo["Materia_desc"], "existe"=>1); } if($grupo_last != -1){ $gpoArr[$g]["califArr"]=removeKey($califArr); } unset($g); } $stmt->closeCursor(); } //reporte por materias if(!$error){ $stmt = $pdo->prepare('Select * from fs_promedio_materia(:periodo, :plan, :sem, false)');//sólo no revalidadas $stmt->bindParam(":periodo", $_SESSION["periodo_id"]); $stmt->bindParam(":plan", $filter_plan); $stmt->bindParam(":sem", $filter_sem); if(!$stmt->execute()){ $errorDesc = "Ocurrió un error al cargar las materias reprobadas por grupo"; $error = true; //print_r($stmt->errorInfo()); exit(); }else{ $rs = $stmt->fetchAll(); $matArr = array(); $tipo_last = -1; $califArr = array(); $m = 0; foreach($rs as $grupo){ if($tipo_last != $grupo["TipoCalificacion_id"]){ if($tipo_last != -1){ $matArr[$m]["califArr"]=removeKey($califArr); $m++; } $tipo_last = $grupo["TipoCalificacion_id"]; $califArr = array(); foreach($mat_rs as $mat){ $califArr[$mat["Materia_id"]] = array("data"=>0, "materia"=>$mat["Materia_desc"], "existe"=>0); } } $matArr[$m] = array("id" => $grupo["TipoCalificacion_id"], "desc" =>$grupo["TipoCalificacion_desc"], "califArr"=>array()); $califArr[$grupo["Materia_id"]] = array("data"=>$grupo["Calificacion_promedio"]/10, "materia"=>$grupo["Materia_desc"], "existe"=>1); } if($tipo_last != -1){ $matArr[$m]["califArr"]=removeKey($califArr); } unset($m); } $stmt->closeCursor(); } } ?>

Programas académicos

Materias

Grupos (sólo Ordinarios)