eaiovnaovbqoebvqoeavibavo modelo('Roles'); $rol=$_POST['rol']; $mensaje=$consultas->InsertarRol($rol); echo json_encode($mensaje); return true; } public function notificacion(){ $consultas=$this->modelo('Notificacion'); $asunto = $_POST['asunto']; $mensaje = $_POST['mensaje']; $mens=$consultas->InsertarNotificacion($asunto, $mensaje); $notificacion = new Notificaciones(); $notificacion->enviar_notificacion($asunto,$mensaje); echo json_encode($mens); return true; } public function reinscripcion(){ $consultas=$this->modelo('Alumnos'); //datos para alumno $carnet=$_POST['carnetA']; $nombres=$_POST['nombre']; $apellidos=$_POST['apellido']; $fechaNac=$_POST['fecha']; $genero=$_POST['genero']; $plan=$_POST['plan']; $correoPersonal=$_POST['correoA']; $grado=$_POST['Grado']; $observaciones=$_POST['observaciones']; $gsuite=$_POST['gsuite']; $mensaje2=$consultas->InsertarAlumno($carnet, $nombres, $apellidos, $fechaNac, $genero, $plan, $gsuite, $correoPersonal, $grado, $observaciones, 1); if($_POST['banderaP']==1){ for($i=0; $i<=10; $i++){ if(isset($_POST['id_encargado'.$i])){ $mensaje=$consultas->InsertarAlumnoEncargado($carnet, $_POST['id_encargado'.$i]); } } }else{ //datos para encargados $mensaje=""; for($i=0; $i<$_POST['cant_encargado']; $i++){ $id_encargado=$consultas->InsertarEncargado($_POST['nombreP'.$i], $_POST['direccion'.$i], $_POST['parentesco'.$i]); for($i2=0;$i2<=10; $i2++){ if(isset($_POST['telefono'.$i.$i2])){ $mensaje=$consultas->InsertarTelefono($_POST['telefono'.$i.$i2], $id_encargado); } if(isset($_POST['correo'.$i.$i2])){ $mensaje=$consultas->InsertarCorreo($_POST['correo'.$i.$i2], $id_encargado); } } $mensaje=$consultas->InsertarAlumnoEncargado($carnet, $id_encargado); } } //AQUÍ DEBE IR EL CÓDIGO PARA AGREGAR LOS DATOS A LAS NOTAS DE CURSO---------------------------------------------------- $datosCursos = []; $id=0; $iteraciones=1; // Ruta al archivo CSV $archivo_csv = 'assets/csv/Cursos_CEG2024.csv'; // Abre el archivo en modo lectura if (($gestor = fopen($archivo_csv, 'r')) !== false) { // Lee cada línea del archivo while (($datos = fgetcsv($gestor)) !== false) { // $datos es un array que contiene los campos de la línea actual if($iteraciones>1){ // Itera sobre los campos de la línea actual $datosPorFila = []; foreach ($datos as $campo) { array_push($datosPorFila, $campo); } if($datosPorFila[2]==$grado){ $datosCursos[$id] = [ 'id_curso' => $datosPorFila[0], 'nombre' => $datosPorFila[1], 'id_grado' => $datosPorFila[2], 'id_docente' => $datosPorFila[3], 'extracurricular' => $datosPorFila[4], 'cod_mineduc' => $datosPorFila[5], 'grado' => $datosPorFila[6], ]; } $id++; } $iteraciones++; } // Cierra el archivo fclose($gestor); //SE ITERA LOS DATOS PARA PODER INSERTAR DATOS A BASE DE DATOS $consultas=$this->modelo('Cursos2'); $consultasAct = $this->modelo('Actividad2'); foreach($datosCursos as $DC){ $Actividades = $consultasAct->buscarActividad($DC['id_curso']); for($j=1; $j<=4; $j++){ $consultas->insertarNotaCurso("Responsabilidad", 5,$carnet, $DC['id_curso'], $j); $consultas->insertarNotaCurso("Desempenio", 5,$carnet, $DC['id_curso'], $j); $consultas->insertarNotaCurso("1Parcial", 15,$carnet, $DC['id_curso'], $j); $consultas->insertarNotaCurso("2Parcial", 15,$carnet, $DC['id_curso'], $j); $consultas->insertarNotaCurso("Mejoramiento", 15,$carnet, $DC['id_curso'], $j); $mensaje=$consultas->insertarNotaCurso("Total", 100,$carnet, $DC['id_curso'], $j); } if($Actividades){ foreach($Actividades as $A){ $consultasAct->insertarActividadAlumno($carnet, $A['id_actividad']); } } } } else { echo 'No se pudo abrir el archivo CSV.'; } //AQUÍ TERMINA EL CÓDIGO PARA AGREGAR LOS DATOS A LAS NOTAS DE CURSO---------------------------------------------------- echo json_encode($mensaje2); return true; } public function inscripcionPI(){ $consultas=$this->modelo('Alumnos'); //datos para alumno $nombres=$_POST['nombre']; $apellidos=$_POST['apellido']; $fechaNac=$_POST['fecha']; $genero=$_POST['genero']; $plan=$_POST['plan']; $correoPersonal=$_POST['correoA']; $grado=$_POST['Grado']; $observaciones=$_POST['observaciones']; $gsuite=""; //SE INSERTA TODO $carnet=$consultas->InsertarAlumno2( $nombres, $apellidos, $fechaNac, $genero, $plan, $gsuite, $correoPersonal, $grado, $observaciones, 0); //PARA GENERAR GSUITE $apellidos=self::eliminar_acentos($_POST['apellido']); $a=""; $b=""; $c=""; $a= substr($apellidos, 0,1); $b= substr($apellidos, 1,1); $c= substr($apellidos, 2,1); $gsuite=$a.$b.$c.$carnet.'@cegetsemani.edu.gt'; $gsuite=strtolower($gsuite); $mensaje=$consultas->actualizarGsuite($carnet, $gsuite); //validar si es un encargado existente if(isset($_POST['checkPadre']) && $_POST['checkPadre']=='on'){ $mensaje=$consultas->InsertarAlumnoEncargado($carnet, $_POST['id_encargadoE']); }else{ //Datos encargado for($i=0; $i<=10; $i++){ if(isset($_POST['nombreP'.$i])){ $id_encargado=$consultas->InsertarEncargado($_POST['nombreP'.$i], $_POST['direccion'.$i], $_POST['parentesco'.$i]); $mensaje=$consultas->InsertarAlumnoEncargado($carnet, $id_encargado); } for($i2=0;$i2<=10; $i2++){ if(isset($_POST['telefono'.$i.$i2])){ $mensaje=$consultas->InsertarTelefono($_POST['telefono'.$i.$i2], $id_encargado); } if(isset($_POST['correo'.$i.$i2])){ $mensaje=$consultas->InsertarCorreo($_POST['correo'.$i.$i2], $id_encargado); } } } } //AQUÍ DEBE IR EL CÓDIGO PARA AGREGAR LOS DATOS A LAS NOTAS DE CURSO------------------------------------------------------------ $datosCursos = []; $id=0; $iteraciones=1; // Ruta al archivo CSV $archivo_csv = 'assets/csv/Cursos_CEG2024.csv'; // Abre el archivo en modo lectura if (($gestor = fopen($archivo_csv, 'r')) !== false) { // Lee cada línea del archivo while (($datos = fgetcsv($gestor)) !== false) { // $datos es un array que contiene los campos de la línea actual if($iteraciones>1){ // Itera sobre los campos de la línea actual $datosPorFila = []; foreach ($datos as $campo) { array_push($datosPorFila, $campo); } if($datosPorFila[2]==$grado){ $datosCursos[$id] = [ 'id_curso' => $datosPorFila[0], 'nombre' => $datosPorFila[1], 'id_grado' => $datosPorFila[2], 'id_docente' => $datosPorFila[3], 'extracurricular' => $datosPorFila[4], 'cod_mineduc' => $datosPorFila[5], 'grado' => $datosPorFila[6], ]; } $id++; } $iteraciones++; } // Cierra el archivo fclose($gestor); //SE ITERA LOS DATOS PARA PODER INSERTAR DATOS A BASE DE DATOS $consultas=$this->modelo('Cursos2'); $consultasAct = $this->modelo('Actividad2'); foreach($datosCursos as $DC){ $Actividades = $consultasAct->buscarActividad($DC['id_curso']); for($j=1; $j<=4; $j++){ $consultas->insertarNotaCurso("Responsabilidad", 5,$carnet, $DC['id_curso'], $j); $consultas->insertarNotaCurso("Desempenio", 5,$carnet, $DC['id_curso'], $j); $consultas->insertarNotaCurso("1Parcial", 15,$carnet, $DC['id_curso'], $j); $consultas->insertarNotaCurso("2Parcial", 15,$carnet, $DC['id_curso'], $j); $consultas->insertarNotaCurso("Mejoramiento", 15,$carnet, $DC['id_curso'], $j); $mensaje=$consultas->insertarNotaCurso("Total", 100,$carnet, $DC['id_curso'], $j); } if($Actividades){ foreach($Actividades as $A){ $consultasAct->insertarActividadAlumno($carnet, $A['id_actividad']); } } } } else { echo 'No se pudo abrir el archivo CSV.'; } //AQUÍ TERMINA EL CÓDIGO PARA AGREGAR LOS DATOS A LAS NOTAS DE CURSO---------------------------------------------------- echo json_encode($carnet); return true; } public function docente(){ $consultas=$this->modelo('Docentes'); $usuario=$_POST['usuario']; $password=$_POST['password']; $nombre=$_POST['nombre']; $correo=$_POST['correo']; $nombre_corto=$_POST['nombre-corto']; $id_rol=$_POST['id_rol']; $mensaje=$consultas->InsertarDocente($usuario, $password, $nombre, $correo, $nombre_corto, $id_rol); echo json_encode($mensaje); return true; } public function encargado(){ $consultas=$this->modelo('Encargados'); $nombre=$_POST['nombre']; $direccion=$_POST['direccion']; $parentesco=$_POST['parentesco']; $id_alumno=$_POST['idAlumnoEncargadoA']; $id_encargado=$consultas->InsertarEncargado($nombre, $direccion, $parentesco); $cantidadT=$_POST['cant_inputT']; $cantidadC=$_POST['cant_inputC']; for($i=0; $i<$cantidadT; $i++){ $consultas->InsertarTelefono($_POST['telefono'.$i], $id_encargado); } for($i=0; $i<$cantidadC; $i++){ $consultas->InsertarCorreo($_POST['correo'.$i], $id_encargado); } $mensaje=$consultas->InsertarAlumnoEncargado($id_alumno,$id_encargado); echo json_encode($mensaje); return true; } public function telefonos(){ $consultas=$this->modelo('Encargados'); if(isset($_POST['id_encargadoAT']))$id_encargadoT=$_POST['id_encargadoAT']; $cantidadT=$_POST['cant_inputTA']; for($i=0; $i<$cantidadT; $i++){ $mensaje=$consultas->InsertarTelefono($_POST['telefonoA'.$i], $id_encargadoT); } echo json_encode($mensaje); return true; } public function correos(){ $consultas=$this->modelo('Encargados'); if(isset($_POST['id_encargadoAC']))$id_encargadoC=$_POST['id_encargadoAC']; $cantidadC=$_POST['cant_inputCA']; for($i=0; $i<$cantidadC; $i++){ $mensaje=$consultas->InsertarCorreo($_POST['correoA'.$i], $id_encargadoC); } echo json_encode($mensaje); return true; } public function EncargadoAlumno(){ $consultas=$this->modelo('Encargados'); $id_encargado=$_POST['id_encargadoAA']; $id_alumno=$_POST['idAlumnoEncargadoA2']; $mensaje=$consultas->InsertarAlumnoEncargado($id_alumno,$id_encargado); echo json_encode($mensaje); return true; } function eliminar_acentos($cadena){ //Reemplazamos la A y a $cadena = str_replace( array('Á', 'À', 'Â', 'Ä', 'á', 'à', 'ä', 'â', 'ª'), array('A', 'A', 'A', 'A', 'a', 'a', 'a', 'a', 'a'), $cadena ); //Reemplazamos la E y e $cadena = str_replace( array('É', 'È', 'Ê', 'Ë', 'é', 'è', 'ë', 'ê'), array('E', 'E', 'E', 'E', 'e', 'e', 'e', 'e'), $cadena ); //Reemplazamos la I y i $cadena = str_replace( array('Í', 'Ì', 'Ï', 'Î', 'í', 'ì', 'ï', 'î'), array('I', 'I', 'I', 'I', 'i', 'i', 'i', 'i'), $cadena ); //Reemplazamos la O y o $cadena = str_replace( array('Ó', 'Ò', 'Ö', 'Ô', 'ó', 'ò', 'ö', 'ô'), array('O', 'O', 'O', 'O', 'o', 'o', 'o', 'o'), $cadena ); //Reemplazamos la U y u $cadena = str_replace( array('Ú', 'Ù', 'Û', 'Ü', 'ú', 'ù', 'ü', 'û'), array('U', 'U', 'U', 'U', 'u', 'u', 'u', 'u'), $cadena ); //Reemplazamos la N, n, C y c $cadena = str_replace( array('Ñ', 'ñ', 'Ç', 'ç'), array('N', 'n', 'C', 'c'), $cadena ); return $cadena; } public function class_code(){ $consultas=$this->modelo('Ingles'); $code=$_POST['code']; $mensaje=$consultas->InsertarIngles($code); echo json_encode($mensaje); return true; } public function taller(){ $consultas=$this->modelo('Talleres'); $taller=$_POST['taller']; $bimestre=$_POST['bimestre']; $mensaje=$consultas->InsertarTaller($taller, $bimestre); echo json_encode($mensaje); return true; } public function grado(){ $consultas=$this->modelo('Grados'); $nombre=$_POST['nombre']; $no_salon=$_POST['no_salon']; $nombre_corto=$_POST['nombre_corto']; $graduando=$_POST['graduando']; $mensaje=$consultas->InsertarGrado($nombre, $no_salon, $nombre_corto, $graduando); echo json_encode($mensaje); return true; } public function curso($id_grado){ $consultas=$this->modelo('Cursos'); $cantidad=$_POST['cantidad_input'.$id_grado]; $datosAlumnos=$consultas->buscarAlumnos($id_grado); $mensaje=""; for($i=0; $i<$cantidad; $i++){ $curso=$_POST['curso'.$i]; $extra=$_POST['extracurricular'.$i]; $id_curso=$consultas->InsertarCurso($curso, $id_grado,$extra); for($j=1; $j<=4; $j++){ foreach($datosAlumnos as $fila){ $consultas->insertarNotaCurso("Responsabilidad", 5,$fila['carnet'], $id_curso, $j); $consultas->insertarNotaCurso("Desempenio", 5,$fila['carnet'], $id_curso, $j); $consultas->insertarNotaCurso("1Parcial", 15,$fila['carnet'], $id_curso, $j); $consultas->insertarNotaCurso("2Parcial", 15,$fila['carnet'], $id_curso, $j); $consultas->insertarNotaCurso("Mejoramiento", 15,$fila['carnet'], $id_curso, $j); $mensaje=$consultas->insertarNotaCurso("Total", 100,$fila['carnet'], $id_curso, $j); } } } echo json_encode($mensaje); return true; } public function actividad(){ $consultas=$this->modelo('Actividad'); $cantidad=$_POST['cantidad_A']; $mensaje=array(); $id_curso=$_POST['id_curso']; $bimestre=$_POST['bimestre']; $zonaActual=$_POST['zona']; $zonaGuardar=0; //OBTENER GRADO $grado=$consultas->buscarGradoA($id_curso); $id_grado=0; foreach($grado as $fgrado){ $id_grado=$fgrado['gradoId']; } $AlumnosGrado=$consultas->buscarGradoA2($id_grado); //VALIDAR PUNTEO for($j=0; $j<$cantidad; $j++){ $zonaGuardar+=$_POST['punteo'.$j]; } if(($zonaActual+$zonaGuardar)<=100){ for($i=0; $i<$cantidad; $i++){ $nombreActividad=$_POST['actividad'.$i]; $valor=$_POST['punteo'.$i]; $descripcion = $_POST['descripcion'.$i]; $fecha_entrega = $_POST['fecha_entrega'.$i]; //VALIDAR 3 TAREAS POR DÍA $actividadesGuardadas = $consultas->buscarActividadesPorDia($fecha_entrega, $id_grado); //$cantidadTareas = $id_grado<22 ? 3 : 4; $cantidadTareas = 4; if($actividadesGuardadas[0]['cantidad']<$cantidadTareas){ $id_Actividad = $consultas->InsertarActividad($nombreActividad, $valor, $descripcion, $fecha_entrega, $id_curso, $bimestre); foreach($AlumnosGrado as $fAlumnos){ $consultas->insertarActividadAlumno($fAlumnos['carnet'], $id_Actividad); } $mensajeAux = [ "tipo" => 'success', "mensaje" => 'La actividad No. '.($i+1).' Se guardó con éxito.', ]; array_push($mensaje, $mensajeAux); }else{ $mensajeAux = [ "tipo" => 'error', "mensaje" => 'La actividad No. '.($i+1).' No pudo ser guardada porque la cantidad de tareas alcanzó el máximo para entregar ese día.', ]; array_push($mensaje, $mensajeAux); } } }else{ $mensaje="se pasa"; } echo json_encode($mensaje); return true; } public function actividadI(){ $consultas=$this->modelo('Actividad'); $cantidad=$_POST['cantidad_A']; $mensaje=""; $id_curso=$_POST['id_curso']; $bimestre=$_POST['bimestre']; $zonaActual=$_POST['zona']; $zonaGuardar=0; //OBTENER GRADO $AlumnosGrado=$consultas->buscarGradoAI($id_curso); //VALIDAR PUNTEO for($j=0; $j<$cantidad; $j++){ $zonaGuardar+=$_POST['punteo'.$j]; } if(($zonaActual+$zonaGuardar)<=60){ for($i=0; $i<$cantidad; $i++){ $nombreActividad=$_POST['actividad'.$i]; $valor=$_POST['punteo'.$i]; $descripcion = $_POST['descripcion'.$i]; $fecha_entrega = $_POST['fecha_entrega'.$i]; $id_Actividad = $consultas->InsertarActividadI($nombreActividad, $valor, $descripcion, $fecha_entrega, $id_curso, $bimestre); foreach($AlumnosGrado as $fAlumnos){ $consultas->insertarActividadAlumnoI($fAlumnos['carnet'], $id_Actividad); } } }else{ $mensaje="se pasa"; } echo json_encode($mensaje); return true; } public function solvencias(){ $consultas=$this->modelo('Solvencias'); $bimestre=$_POST['bimestre']; $carnet=$_POST['carnet']; $estadoSolvencia=$_POST['estadoSolvencia']; $mensaje=$consultas->ActualizarSolvencia($bimestre, $carnet, $estadoSolvencia); echo json_encode($mensaje); return true; } public function asistencia(){ $consultas=$this->modelo('Asistencias'); $carnet = $_POST['id_alumno']; $excusa = $_POST['excusa']; if(isset($_POST['rFecha']) && $_POST['rFecha']=='on'){ $fecha_inicial = new DateTime($_POST['inicioF']); $fecha_final = new DateTime($_POST['FinalF']); // Necesitamos modificar la fecha final en 1 día para que aparezca en el bucle $fecha_final = $fecha_final ->modify('+1 day'); $intervalo = DateInterval::createFromDateString('1 day'); $periodo = new DatePeriod($fecha_inicial , $intervalo, $fecha_final); $contador=0; foreach ($periodo as $dt) { if(date("w", strtotime($dt->format("Y-m-d")))==0 || date("w", strtotime($dt->format("Y-m-d")))==6){ }else{ $fecha_hora=$dt->format("Y-m-d")." ".date("h:i:s"); $mensaje=$consultas->registrarAsistencia2($carnet, $excusa, $fecha_hora); } } }else{ $mensaje=$consultas->registrarAsistencia($carnet, $excusa); } echo json_encode($mensaje); return true; } public function cursoLab(){ $consultas=$this->modelo('Cursos'); $curso=$_POST['nombre_lab']; $id_grado=$_POST['id_grado']; $num_lab=$_POST['num_lab']; $datosAlumnos=$consultas->buscarAlumnos($id_grado); $id_curso=$consultas->InsertarCurso($curso, $id_grado,1); foreach($datosAlumnos as $fila){ $mensaje=$consultas->insertarNotaCurso("Total", 100,$fila['carnet'], $id_curso, $num_lab); } echo json_encode($mensaje); return true; } } ?>