{"version":3,"sources":["Global.jsx","Componentes/Navegacion.jsx","InfoWeb.jsx","Componentes/Pie.jsx","Componentes/Slider.jsx","Componentes/Noticias/NoticiaFoto.jsx","Componentes/Noticias/NoticiaCore.jsx","Componentes/Noticias/NoticiasCore.jsx","Componentes/Noticias/Noticias.jsx","Componentes/Ventajas/VentajasCore.jsx","Componentes/Ventajas/Ventajas.jsx","Componentes/InscripcionDx/CboCarreraProfesional.jsx","Componentes/InscripcionDx/CboTipoPostulacion.jsx","Componentes/ExitoInscripcion.jsx","Componentes/Inscripcion/FormularioInscripcion.jsx","Componentes/Home.jsx","Componentes/Mision.jsx","Componentes/Tramites.jsx","Componentes/EquipoTrabajo.jsx","Componentes/Vacantes/Vacante.jsx","Componentes/Vacantes/VacantesCore.jsx","Componentes/Calendario.jsx","Componentes/Costos.jsx","Componentes/Vacantes/Vacantes.jsx","Componentes/Noticias/NoticiaDetalle.jsx","UsuarioContext.jsx","Componentes/ErrorUrl.jsx","Componentes/Cargando.jsx","Componentes/Navegar.jsx","Componentes/Evaluacion/InstrumentoConfirmado.jsx","Componentes/Evaluacion/Grupo.jsx","Componentes/Evaluacion/InstrumentoAplicado.jsx","Componentes/Evaluacion/Grafico.jsx","Componentes/Evaluacion/Respuesta.jsx","Componentes/Evaluacion/Pregunta.jsx","Componentes/Evaluacion/SinPreguntas.jsx","Componentes/Evaluacion/CabeceraPregunta.jsx","Componentes/Evaluacion/MensajeInformacion.jsx","Componentes/Evaluacion/PreguntaAplicada.jsx","Componentes/Evaluacion/InstrumentoDetalle.jsx","Componentes/Evaluacion/ExamenArchivo.jsx","Componentes/Evaluacion/ExamenConfirmado.jsx","Componentes/Evaluacion/ExamenRespuesta.jsx","Componentes/Evaluacion/ExamenAplicado.jsx","Componentes/Evaluacion/MensajeExito.jsx","Componentes/Evaluacion/ExamenDetalle.jsx","PrivateRoute.jsx","AulaContext.jsx","Componentes/Curso.jsx","Componentes/Cursos.jsx","Componentes/Aula.jsx","Componentes/CursoNombre.jsx","Componentes/Semana.jsx","Componentes/TemaRecurso.jsx","Componentes/TemaRecursos.jsx","Componentes/TemaVideo.jsx","Componentes/TemaVideos.jsx","Componentes/Tema.jsx","Componentes/Temas.jsx","Componentes/CursoDetalle.jsx","Componentes/Biblioteca.jsx","Componentes/Bibliotecas.jsx","Componentes/BibliotecaAula.jsx","Componentes/BibliotecaNombre.jsx","Componentes/PublicacionRecurso.jsx","Componentes/PublicacionRecursos.jsx","Componentes/PublicacionVideo.jsx","Componentes/PublicacionVideos.jsx","Componentes/Publicacion.jsx","Componentes/Publicaciones.jsx","Componentes/BibliotecaDetalle.jsx","Componentes/Login.jsx","Componentes/Evaluacion/Instrumento.jsx","Componentes/Evaluacion/Instrumentos.jsx","Componentes/Evaluacion/Examen.jsx","Componentes/Evaluacion/Examenes.jsx","Componentes/Evaluacion/InstrumentosPage.jsx","Componentes/CambiarClave.jsx","Componentes/EstudianteEvaluaciones.jsx","App.js","serviceWorker.js","index.js"],"names":["Navegacion","className","to","src","alt","type","data-toggle","data-target","aria-controls","aria-expanded","aria-label","id","role","aria-haspopup","aria-labelledby","InfoWeb","React","createContext","Pie","Consumer","info","width","telefono","whatsapp","correo","Slider","data-ride","mensajeInscripcion","cicloAcademico","mensajeCicloAcademico","NoticiaFoto","url","urlFoto","Global","NoticiaCore","noticia","noticiaId","foto","name","titulo","fecha","resumen","NoticiasCore","lista","map","item","key","Noticias","useState","error","setError","isLoaded","setIsLoaded","items","setItems","useEffect","fetch","then","res","json","result","contenido","message","VentajasCore","height","ventaja1Titulo","ventajaDetalle1","ventaja2Titulo","ventajaDetalle2","ventaja3Titulo","ventajaDetalle3","Ventajas","CboCarreraProfesional","handleValueChanged","carreraQuePostulaId","createRef","ref","valueExpr","displayExpr","placeholder","onValueChanged","CboTipoPostulacion","tipoPostulacionId","ExitoInscripcion","FormularioInscripcion","exito","mensaje","resultado","setResultado","soloTextoPattern","soloNumeroPattern","mensajeRequerido","mensajeSoloTexto","currentDate","Date","maxDate","setFullYear","getFullYear","dni","apellidoPaterno","apellidoMaterno","nombres","fechaNacimiento","direccion","email","tipoColegioProcedencia","colegioProcedencia","TipoPostulacionId","Apoderado","ApoderadoRelacion","DniApoderado","apoderadoTelefono","datos","setDatos","handleInputChange","e","event","currentTarget","value","element","tipo","notify","position","my","at","onSubmit","myHeaders","Headers","append","miInit","method","body","JSON","stringify","headers","preventDefault","htmlFor","maxLength","onChange","min","max","pattern","invalidDateMessage","displayFormat","tiempo","parse","isNaN","fechaActual","dia","getDate","mes","getMonth","anho","nuevaFecha","nombre","text","stylingMode","useSubmitBehavior","Home","Mision","mv","setMv","dangerouslySetInnerHTML","__html","vision","mision","Tramites","tramite","setTramite","EquipoTrabajo","equipo","setEquipo","equipoTrabajo","Vacante","oferta","vacante","VacantesCore","vacantes","setVacantes","scope","carreraId","Calendario","inicioCiclo","costoEnsenhanza","Costos","costos","setCostos","Vacantes","NoticiaDetalle","match","setNoticia","params","UsuarioContext","ErrorUrl","Cargando","Navegar","useContext","estadoUsuario","setEstadoUsuario","href","estudiante","nombreCorto","onClick","token","InstrumentoConfirmado","instrumento","handleOnClickAcepto","objetivo","detalle","Grupo","grupo","handleOnClickGrupo","preguntaGrupoId","InstrumentoAplicado","estudianteInstrumento","grupos","x","Grafico","imagen","tieneImagen","Respuesta","respuesta","handledOnClickRespuesta","respuestaId","preguntaId","enunciado","Pregunta","Fragment","numero","respuestas","r","SinPreguntas","volverAGrupos","CabeceraPregunta","examenNombre","grupoNombre","MensajeInformacion","urlDestino","PreguntaAplicada","grupoId","valorInicialGrupoPreguntas","preguntas","grupoPreguntas","setGrupoPreguntas","setPreguntas","indice","setIndice","longitud","setLongitud","estudianteInstrumentoId","length","actualizarData","preguntaActualId","setPreguntaActualId","respuestaActualId","setRespuestaActualId","handledOnClickBoton","valor","target","nuevo","undefined","n","v","nuevaLongitud","filter","eliminarPregunta","InstrumentoDetalle","instrumentoId","setInstrumento","estudianteInstrumentoInicial","evaluacion","horaInicio","minutosTranscurridos","horaTermino","setEstudianteInstrumento","paso","setPaso","grupoSeleccionadoId","setGrupoSeleccionadoId","ok","ExamenArchivo","examen","archivo","examenId","ExamenConfirmado","ExamenRespuesta","numeroPregunta","alternativa","handleChange","ExamenAplicado","alternativas","handleEnviarRespuestas","pregunta","MensajeExito","ExamenDetalle","ExamenId","setExamen","alternativasInicial","setAlternativas","setRespuesta","actualSelecciónIndice","findIndex","el","Number","nuevaAlternativas","console","log","PrivateRoute","Component","component","rest","context","render","props","AulaContext","Curso","curso","cursoId","Cursos","aula","setAula","cursos","c","Aula","CursoNombre","Semana","semanaActual","semanas","opciones","setOpciones","limite","i","push","getOpciones","TemaRecurso","recurso","temaRecursoId","TemaRecursos","recursos","TemaVideo","video","temaVideoId","title","urlVideo","allowFullScreen","TemaVideos","videos","Tema","tema","Temas","temas","f","parseInt","semana","t","temaId","CursoDetalle","setTemas","numeroSemana","setSemanaActual","Biblioteca","biblioteca","bibliotecaId","Bibliotecas","bibliotecas","BibliotecaAula","PublicacionNombre","PublicacionRecurso","publicacionRecursoId","PublicacionRecursos","PublicacionVideo","publicacionVideoId","PublicacionVideos","Publicacion","publicacion","Publicaciones","publicaciones","publicacionId","BibliotecaDetalle","setPublicaciones","BibliotecaNombre","Login","history","usuario","password","autoComplete","Instrumento","Instrumentos","instrumentos","setInstrumentos","Examen","Examenes","examenes","setExamenes","InstrumentosPage","CambiarClave","setExito","clave1","clave2","EstudianteEvaluaciones","fechaAplicacion","puntaje","estadoInicialUsuario","estadoInicialAula","evaluaciones","App","setInfo","estadoAula","setEstadoAula","Provider","exact","path","Boolean","window","location","hostname","ReactDOM","StrictMode","document","getElementById","navigator","serviceWorker","ready","registration","unregister","catch"],"mappings":"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","file":"static/js/main.6a501cba.chunk.js","sourcesContent":["export default {\r\n\r\n BASE_URL: 'https://apicepre.untrm.edu.pe/',\r\n \r\n //BASE_URL: 'https://localhost:44357/',\r\n\r\n getTokenStorage : () => {\r\n return sessionStorage.getItem('token');\r\n },\r\n setTokenStorage : (valor) => {\r\n sessionStorage.setItem('token', JSON.stringify(valor));\r\n },\r\n getEstudianteStorage : () => {\r\n return sessionStorage.getItem('estudiante');\r\n },\r\n setEstudianteStorage : (valor) => {\r\n sessionStorage.setItem('estudiante', JSON.stringify(valor));\r\n },\r\n};","import React from 'react'\r\nimport { Link } from 'react-router-dom'\r\n\r\nfunction Navegacion() {\r\n return(\r\n
\r\n \r\n
\r\n )\r\n\r\n}\r\n\r\nexport default Navegacion","import React from 'react';\r\n \r\nconst InfoWeb = React.createContext(null);\r\n \r\nexport default InfoWeb;","import React from 'react'\r\nimport InfoWeb from '../InfoWeb'\r\n\r\nfunction Pie() {\r\n return(\r\n \r\n {info => (\r\n
\r\n
\r\n

Contáctanos

\r\n
\r\n
\r\n

\r\n \"telefono\"\r\n {info.telefono}\r\n

\r\n
\r\n
\r\n

\r\n \"whatsapp\"\r\n {info.whatsapp}\r\n

\r\n
\r\n
\r\n

\r\n \"correo\"/\r\n {info.correo}\r\n

\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n )\r\n}\r\n\r\nexport default Pie","import React from 'react'\r\nimport { Link } from 'react-router-dom'\r\nimport InfoWeb from '../InfoWeb'\r\n\r\nfunction Slider() {\r\n\r\n return(\r\n \r\n {info => (\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Universidad Nacional Toribio Rodriguez de Mendoza
\r\n
\r\n
Inscripciones
\r\n

{info.mensajeInscripcion}

\r\n
\r\n Inscribirme\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

Ciclo Académico

\r\n

{info.cicloAcademico}

\r\n

{info.mensajeCicloAcademico}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n )\r\n}\r\n\r\nexport default Slider","import React from 'react'\r\nimport Global from '../../Global'\r\n\r\nfunction NoticiaFoto({url}) {\r\n\r\n let urlFoto = Global.BASE_URL + 'api/archivos/image/' + url;\r\n\r\n return(\r\n \"foto\"\r\n )\r\n\r\n}\r\n\r\nexport default NoticiaFoto","import React from 'react'\r\nimport NoticiaFoto from './NoticiaFoto'\r\nimport { Link } from 'react-router-dom'\r\n\r\nfunction NoticiaCore({noticia}){\r\n\r\n const url = `/NoticiaDetalle/${noticia.noticiaId}`;\r\n\r\n return(\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n {noticia.titulo}\r\n

{noticia.fecha}

\r\n

{noticia.resumen}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default NoticiaCore","import React from 'react'\r\nimport NoticiaCore from './NoticiaCore'\r\n\r\nfunction NoticiasCore ({lista}) {\r\n\r\n return(\r\n\r\n
\r\n {lista.map(item => (\r\n \r\n ))}\r\n
\r\n\r\n )\r\n}\r\n\r\nexport default NoticiasCore","import React from 'react'\r\nimport { useState, useEffect } from 'react'\r\nimport NoticiasCore from './NoticiasCore'\r\nimport Global from '../../Global'\r\n\r\nfunction Noticias() {\r\n\r\n const [error, setError] = useState(null);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [items, setItems] = useState([]);\r\n\r\n useEffect(() => {\r\n fetch(Global.BASE_URL + 'api/noticias')\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setItems(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n }\r\n )\r\n }, [])\r\n\r\n let contenido = \"\";\r\n\r\n if (error) {\r\n contenido =
No se pudo mostrar las noticias. Error: {error.message}
\r\n } else if (!isLoaded) {\r\n contenido =
Intentando mostrar las noticias.. por favor espere...
\r\n } else {\r\n contenido = \r\n }\r\n\r\n return(\r\n
\r\n
\r\n

Noticias y avisos

\r\n {contenido}\r\n
\r\n
\r\n )\r\n\r\n}\r\n\r\nexport default Noticias","import React from 'react'\r\nimport InfoWeb from '../../InfoWeb'\r\n\r\nfunction VentajasCore({info}) {\r\n return(\r\n \r\n {info => (\r\n
\r\n
\r\n
\r\n \"capacitacion\"\r\n
\r\n

{info.ventaja1Titulo}

\r\n

{info.ventajaDetalle1}

\r\n
\r\n
\r\n
\r\n \"evaluacion\"\r\n
\r\n

{info.ventaja2Titulo}

\r\n

{info.ventajaDetalle2}

\r\n
\r\n
\r\n
\r\n \"acceso\r\n
\r\n

{info.ventaja3Titulo}

\r\n

{info.ventajaDetalle3}

\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n ) \r\n}\r\n\r\nexport default VentajasCore\r\n\r\n","import React from 'react'\r\nimport VentajasCore from './VentajasCore'\r\n\r\nfunction Ventajas() {\r\n\r\n return(\r\n
\r\n
\r\n

VENTAJAS DE ESTUDIAR EN LA CEPRE

\r\n \r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default Ventajas","import React from 'react'\r\nimport { useState, useEffect } from 'react'\r\nimport { SelectBox } from 'devextreme-react';\r\n\r\nimport {\r\n Validator,\r\n RequiredRule\r\n } from 'devextreme-react/validator';\r\n\r\nimport Global from '../../Global'\r\n\r\nfunction CboCarreraProfesional({handleValueChanged}) {\r\n\r\n const [items, setItems] = useState([]);\r\n\r\n let carreraQuePostulaId = React.createRef();\r\n\r\n useEffect(() => {\r\n fetch(Global.BASE_URL + 'api/carreras/oferta')\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setItems(result);\r\n },\r\n (error) => {\r\n }\r\n )\r\n }, [])\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n )\r\n\r\n}\r\n\r\nexport default CboCarreraProfesional\r\n","import React from 'react'\r\nimport { useState, useEffect } from 'react'\r\nimport { SelectBox } from 'devextreme-react';\r\n\r\nimport {\r\n Validator,\r\n RequiredRule\r\n } from 'devextreme-react/validator';\r\n\r\nimport Global from '../../Global'\r\n\r\nfunction CboTipoPostulacion({handleValueChanged}) {\r\n\r\n const [items, setItems] = useState([]);\r\n\r\n let tipoPostulacionId = React.createRef();\r\n\r\n useEffect(() => {\r\n fetch(Global.BASE_URL + 'api/tipopostulaciones')\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setItems(result);\r\n },\r\n (error) => {\r\n }\r\n )\r\n }, [])\r\n\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n )\r\n\r\n}\r\n\r\nexport default CboTipoPostulacion\r\n","import React from 'react'\r\n\r\nfunction ExitoInscripcion() {\r\n\r\n return(\r\n
\r\n
\r\n \"Exito\"\r\n
Tu inscripción se realizó con éxito
\r\n

Hemos enviado un email a tu correo electrónico con indicaciones de lo que debes hacer. Si no está en tu bandeja de entrada, revisa en el Correo no deseado.

\r\n
\r\n
\r\n )\r\n\r\n}\r\n\r\nexport default ExitoInscripcion\r\n","import React, { useState, useEffect } from 'react'\r\nimport CboCarreraProfesional from '../InscripcionDx/CboCarreraProfesional'\r\nimport CboTipoPostulacion from '../InscripcionDx/CboTipoPostulacion'\r\nimport { TextBox, DateBox, SelectBox, Button } from 'devextreme-react'\r\nimport {\r\n Validator,\r\n RequiredRule,\r\n EmailRule,\r\n PatternRule,\r\n StringLengthRule,\r\n RangeRule\r\n } from 'devextreme-react/validator';\r\n\r\nimport notify from 'devextreme/ui/notify';\r\nimport Global from '../../Global'\r\nimport ExitoInscripcion from '../ExitoInscripcion'\r\n\r\nfunction FormularioInscripcion() {\r\n\r\n const [resultado, setResultado] = useState({ exito: null, mensaje: ''})\r\n\r\n const soloTextoPattern = /^[A-Za-zÑñÁáÉéÍíÓóÚú ]*$/;\r\n const soloNumeroPattern = /^[0-9]*$/;\r\n const mensajeRequerido = \"Este campo es requerido\";\r\n const mensajeSoloTexto = \"No se admite números o símbolos en este campo.\";\r\n const mensajeSoloNumero = \"Solo se admite números.\";\r\n\r\n const currentDate = new Date();\r\n const maxDate = new Date(currentDate.setFullYear(currentDate.getFullYear() - 15));\r\n\r\n const [datos, setDatos] = useState({\r\n carreraQuePostulaId: null,\r\n dni: '',\r\n apellidoPaterno: '',\r\n apellidoMaterno: '',\r\n nombres: '',\r\n fechaNacimiento: null,\r\n direccion: '',\r\n telefono: '',\r\n email: '',\r\n tipoColegioProcedencia: 1,\r\n colegioProcedencia: '',\r\n TipoPostulacionId: 1,\r\n Apoderado: '',\r\n ApoderadoRelacion: 0,\r\n DniApoderado: '',\r\n apoderadoTelefono: ''\r\n });\r\n\r\n const handleInputChange = (e) => {\r\n setDatos({\r\n ...datos,\r\n [e.event.currentTarget.name] : e.event.currentTarget.value\r\n })\r\n };\r\n\r\n const handleValueChanged = (e) => {\r\n setDatos({\r\n ...datos,\r\n [e.element.id] : e.value\r\n })\r\n }; \r\n\r\n const handleValueChangedFecha = (e) => {\r\n\r\n let tiempo = Date.parse(e.value);\r\n if (!isNaN(tiempo)) {\r\n\r\n let fechaActual = new Date(tiempo);\r\n\r\n let dia = fechaActual.getDate();\r\n let mes = fechaActual.getMonth() + 1;\r\n let anho = fechaActual.getFullYear();\r\n\r\n let nuevaFecha = `${dia}/${mes}/${anho}`;\r\n\r\n setDatos({\r\n ...datos,\r\n [e.element.id] : nuevaFecha,\r\n })\r\n\r\n }\r\n\r\n }; \r\n\r\n\r\n const tiposColegio = [\r\n {id: 1, nombre: 'PUBLICO'},\r\n {id: 2, nombre: 'PRIVADO'},\r\n ];\r\n\r\n const sexos = [\r\n {id: 1, nombre: 'HOMBRE'},\r\n {id: 2, nombre: 'MUJER'},\r\n ];\r\n\r\n const apoderadosrelaciones = [\r\n {id: 1, nombre: 'Padre' },\r\n {id: 2, nombre: 'Madre' },\r\n {id: 3, nombre: 'Hermano (a)' },\r\n {id: 4, nombre: 'Tio (a)' },\r\n {id: 5, nombre: 'Primo (a)' },\r\n {id: 6, nombre: 'Abuelo (a)' },\r\n {id: 7, nombre: 'Otro' },\r\n ]\r\n\r\n\r\n\r\n const onFormSubmit = (e) => {\r\n\r\n let url = Global.BASE_URL + 'api/preinscribir/post';\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Content-Type\", \"application/json\");\r\n\r\n var miInit = { \r\n method: 'POST', \r\n body: JSON.stringify(datos), \r\n headers: myHeaders,\r\n };\r\n\r\n fetch(url, miInit)\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setResultado(result);\r\n },\r\n (error) => {\r\n setResultado(\r\n {\r\n exito: false,\r\n mensaje: 'No se pudo enviar la inscripcion: ' + error.message\r\n }\r\n )\r\n }\r\n );\r\n\r\n \r\n e.preventDefault();\r\n\r\n };\r\n\r\n useEffect(() => {\r\n if (resultado.exito != null) {\r\n var tipo = (resultado.exito === true) ? 'success' : 'error'\r\n notify({\r\n message: resultado.mensaje,\r\n position: {\r\n my: 'center top',\r\n at: 'center top'\r\n }\r\n }, tipo, 3000);\r\n }\r\n }, [resultado])\r\n\r\n if (resultado.exito === true) {\r\n\r\n return (\r\n \r\n )\r\n \r\n } else {\r\n\r\n return(\r\n\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n

INSCRÍBETE

\r\n

Registra tus datos personales

\r\n
\r\n\r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"Carrera\r\n
\r\n
\r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"/\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"/\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"/\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n \r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n
\r\n \r\n
\r\n
\r\n
\r\n \"\"\r\n
\r\n
\r\n \r\n \r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n\r\n\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\n\r\n\r\nexport default FormularioInscripcion","import React from 'react'\r\nimport Navegacion from './Navegacion'\r\nimport Pie from './Pie'\r\nimport Slider from './Slider'\r\nimport Noticias from './Noticias/Noticias'\r\nimport Ventajas from './Ventajas/Ventajas'\r\nimport FormularioInscripcion from './Inscripcion/FormularioInscripcion'\r\n\r\nfunction Home() {\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nexport default Home;","import React from 'react'\r\nimport { useState, useEffect } from 'react'\r\nimport Global from '../Global'\r\nimport Navegacion from './Navegacion'\r\nimport Pie from './Pie'\r\n\r\nfunction Mision() {\r\n\r\n const [error, setError] = useState(null);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [mv, setMv] = useState([]);\r\n \r\n useEffect(() => {\r\n fetch(Global.BASE_URL + 'api/webinfo/mv')\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setMv(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n }\r\n ) \r\n }, []) \r\n\r\n if (error) {\r\n return (\r\n
No se pudo cargar la página: {error.message}
\r\n ) \r\n } else if (!isLoaded) {\r\n return (\r\n
Cargando la página... por favor espere...
\r\n ) \r\n } else {\r\n return(\r\n
\r\n \r\n
\r\n
\r\n

VISIÓN

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"mision\"\r\n
\r\n
\r\n
\r\n
\r\n\r\n
\r\n
\r\n

MISIÓN

\r\n
\r\n
\r\n \"mision\"/\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default Mision","import React from 'react'\r\nimport { useState, useEffect } from 'react'\r\nimport Global from '../Global'\r\nimport Navegacion from './Navegacion'\r\nimport Pie from './Pie'\r\n\r\nfunction Tramites() {\r\n\r\n const [error, setError] = useState(null);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [tramite, setTramite] = useState([]);\r\n \r\n useEffect(() => {\r\n fetch(Global.BASE_URL + 'api/webinfo/tramites')\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setTramite(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n }\r\n ) \r\n }, []) \r\n\r\n if (error) {\r\n return (\r\n
No se pudo cargar la página: {error.message}
\r\n ) \r\n } else if (!isLoaded) {\r\n return (\r\n
Cargando la página... por favor espere...
\r\n ) \r\n } else {\r\n return(\r\n
\r\n \r\n
\r\n
\r\n

TRÁMITES

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default Tramites","import React from 'react'\r\nimport { useState, useEffect } from 'react'\r\nimport Global from '../Global'\r\nimport Navegacion from './Navegacion'\r\nimport Pie from './Pie'\r\n\r\nfunction EquipoTrabajo() {\r\n\r\n const [error, setError] = useState(null);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [equipo, setEquipo] = useState([]);\r\n \r\n useEffect(() => {\r\n fetch(Global.BASE_URL + 'api/webinfo/equipo')\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setEquipo(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n }\r\n ) \r\n }, []) \r\n\r\n if (error) {\r\n return (\r\n
No se pudo cargar la página: {error.message}
\r\n ) \r\n } else if (!isLoaded) {\r\n return (\r\n
Cargando la página... por favor espere...
\r\n ) \r\n } else {\r\n return(\r\n
\r\n \r\n
\r\n
\r\n

EQUIPO DE TRABAJO

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default EquipoTrabajo","import React from 'react'\r\n\r\nfunction Vacante({oferta}) {\r\n return(\r\n \r\n {oferta.nombre}\r\n {oferta.vacante}\r\n \r\n )\r\n}\r\n\r\nexport default Vacante","import React from 'react'\r\nimport { useState, useEffect } from 'react'\r\nimport Global from '../../Global'\r\nimport Vacante from './Vacante'\r\n\r\nfunction VacantesCore() {\r\n\r\n const [error, setError] = useState(null);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [vacantes, setVacantes] = useState([]);\r\n \r\n useEffect(() => {\r\n fetch(Global.BASE_URL + 'api/carreras/oferta')\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setVacantes(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n }\r\n ) \r\n }, []) \r\n\r\n if (error) {\r\n return (\r\n
No se pudo cargar la página: {error.message}
\r\n ) \r\n } else if (!isLoaded) {\r\n return (\r\n
Cargando la página... por favor espere...
\r\n ) \r\n } else {\r\n return(\r\n
\r\n
\r\n

VACANTES

\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {vacantes.map(item => ( ))}\r\n \r\n
CarreraVacantes
\r\n
\r\n
\r\n
\r\n \r\n )\r\n }\r\n}\r\n\r\nexport default VacantesCore","import React from 'react'\r\nimport InfoWeb from '../InfoWeb'\r\n\r\nfunction Calendario() {\r\n\r\n return(\r\n \r\n {info => (\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n \"calendario\"\r\n
\r\n

Inicio y Término del ciclo

\r\n

{info.inicioCiclo}

\r\n
\r\n
\r\n
\r\n \"costo\"\r\n
\r\n

Costo de la enseñanza

\r\n

{info.costoEnsenhanza}

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n )}\r\n
\r\n )\r\n}\r\n\r\nexport default Calendario","import React from 'react'\r\nimport { useState, useEffect } from 'react'\r\nimport Global from '../Global'\r\n\r\nfunction Costos() {\r\n\r\n const [error, setError] = useState(null);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [costos, setCostos] = useState([]);\r\n \r\n useEffect(() => {\r\n fetch(Global.BASE_URL + 'api/webinfo/costos')\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setCostos(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n }\r\n ) \r\n }, []) \r\n\r\n if (error) {\r\n return (\r\n
No se pudo cargar los costos: {error.message}
\r\n ) \r\n } else if (!isLoaded) {\r\n return (\r\n
Cargando los costos... por favor espere...
\r\n ) \r\n } else {\r\n\r\n return(\r\n
\r\n
\r\n
\r\n
\r\n

MODALIDAD DE PAGO

\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default Costos","import React from 'react'\r\nimport VacantesCore from './VacantesCore'\r\nimport FormularioInscripcion from '../Inscripcion/FormularioInscripcion'\r\nimport Calendario from '../Calendario'\r\nimport Costos from '../Costos'\r\nimport Navegacion from '../Navegacion'\r\nimport Pie from '../Pie'\r\n\r\nfunction Vacantes() {\r\n return (\r\n
\r\n \r\n \r\n \r\n \r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nexport default Vacantes","import React from 'react'\r\nimport { useState, useEffect } from 'react'\r\nimport Global from '../../Global'\r\nimport Navegacion from '../Navegacion'\r\nimport Pie from '../Pie'\r\n\r\nfunction NoticiaDetalle({ match }) {\r\n\r\n const [error, setError] = useState(null);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [noticia, setNoticia] = useState([]);\r\n\r\n useEffect(() => {\r\n\r\n let url = Global.BASE_URL + \"api/noticias/\" + match.params.id;\r\n\r\n fetch(url)\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setNoticia(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n }\r\n ) \r\n }, []) \r\n\r\n let urlFoto = Global.BASE_URL + 'api/archivos/image/' + noticia.foto;\r\n\r\n if (error) {\r\n return (\r\n
No se pudo mostrar la noticia. Error: {error.message}
\r\n )\r\n } else if (!isLoaded) {\r\n return (\r\n
Intentando mostrar la noticia.. por favor espere...
\r\n )\r\n } else { \r\n return(\r\n
\r\n \r\n
\r\n
\r\n

{noticia.titulo}

\r\n
\r\n
\r\n
\r\n \"foto\"\r\n
\r\n
\r\n\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n\r\n )\r\n }\r\n}\r\n\r\nexport default NoticiaDetalle","import React from 'react'\r\n\r\nconst UsuarioContext = React.createContext()\r\n\r\nexport default UsuarioContext","import React from 'react'\r\nfunction ErrorUrl() {\r\n return(\r\n
\r\n
\r\n

Ocurrió un error al cargar la información

\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default ErrorUrl","import React from 'react'\r\n\r\nfunction Cargando() {\r\n\r\n return(\r\n
\r\n
\r\n Cargando\r\n
\r\n

Intentando mostrar el contenido... por favor espere...

\r\n
\r\n )\r\n}\r\n\r\nexport default Cargando","import React from 'react';\r\nimport { useContext } from 'react';\r\nimport { Link } from 'react-router-dom'; \r\n\r\nimport UsuarioContext from '../UsuarioContext'\r\n\r\nfunction Navegar() {\r\n\r\n const [ estadoUsuario, setEstadoUsuario ] = useContext(UsuarioContext);\r\n\r\n const handleClicCerrarSesion = () => {\r\n setEstadoUsuario({\r\n exito: false,\r\n token: null,\r\n estudiante: null\r\n });\r\n }\r\n\r\n return(\r\n
\r\n \r\n
\r\n )\r\n}\r\n\r\nexport default Navegar","import React from 'react'\r\n\r\nfunction InstrumentoConfirmado({instrumento, handleOnClickAcepto}) {\r\n return(\r\n
\r\n

{instrumento.nombre}

\r\n
\r\n
\r\n

Objetivo

\r\n

\r\n {instrumento.objetivo}\r\n

\r\n
\r\n
\r\n

Respecto al tiempo

\r\n

\r\n {instrumento.detalle}\r\n

\r\n
\r\n
\r\n

Condiciones

\r\n

El examen está asociado a su inicio de sesion actual. Esto significa que una vez que empieza este examen, usted no debe cerrar la pagina ni tampoco usar el botón actualizar. Si usted actualiza o cierra esta pestaña perderá este examen. Solo use los botones que figuran dentro del cuerpo de nuestra web.

\r\n \r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default InstrumentoConfirmado","import React from 'react'\r\n\r\nfunction Grupo({grupo, handleOnClickGrupo}) {\r\n return(\r\n
\r\n \r\n
\r\n )\r\n}\r\n\r\nexport default Grupo","import React from 'react'\r\nimport Grupo from './Grupo'\r\n\r\nfunction InstrumentoAplicado({estudianteInstrumento, handleOnClickGrupo}) {\r\n return (\r\n
\r\n

{estudianteInstrumento.nombre}

\r\n
\r\n {estudianteInstrumento.grupos.map(x => (\r\n \r\n ))}\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default InstrumentoAplicado;","import React from 'react'\r\nimport Global from '../../Global'\r\n\r\nfunction Grafico({item}) {\r\n\r\n let urlFoto = Global.BASE_URL + 'api/archivos/image/' + item.imagen;\r\n\r\n if (item.tieneImagen === true) {\r\n return(\r\n \"foto\"\r\n )\r\n } else {\r\n return null;\r\n }\r\n\r\n}\r\n\r\nexport default Grafico","import React from 'react'\r\nimport Grafico from './Grafico'\r\n\r\nfunction Respuesta({respuesta, handledOnClickRespuesta}) {\r\n\r\n let id = respuesta.respuestaId;\r\n let name = respuesta.preguntaId;\r\n\r\n return (\r\n
\r\n \r\n \r\n\r\n
\r\n )\r\n}\r\n\r\nexport default Respuesta","import React from 'react'\r\nimport Respuesta from './Respuesta'\r\nimport Grafico from './Grafico'\r\n\r\nfunction Pregunta({item, handledOnClickRespuesta}) {\r\n\r\n return (\r\n \r\n
\r\n

{item.numero}

\r\n

{item.enunciado}

\r\n
\r\n
\r\n \r\n
\r\n\r\n
\r\n {item.respuestas.map(r => ())}\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default Pregunta","import React from 'react'\r\n\r\nfunction SinPreguntas({volverAGrupos}) {\r\n return(\r\n
\r\n
\r\n

Ya no tiene mas preguntas en este grupo

\r\n \r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default SinPreguntas","import React from 'react'\r\n\r\nfunction CabeceraPregunta({examenNombre, grupoNombre, volverAGrupos}) {\r\n return(\r\n \r\n
\r\n

{examenNombre}

\r\n \r\n
\r\n

{grupoNombre}

\r\n
\r\n
\r\n\r\n\r\n\r\n )\r\n}\r\n\r\nexport default CabeceraPregunta","import React from 'react'\r\nimport { Link } from 'react-router-dom'\r\n\r\nfunction MensajeInformacion({mensaje, urlDestino}) {\r\n\r\n return(\r\n
\r\n
\r\n

{mensaje}

\r\n Recuperar...\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default MensajeInformacion","import React from 'react'\r\nimport { useEffect , useContext, useState} from 'react'\r\nimport Global from '../../Global'\r\nimport UsuarioContext from '../../UsuarioContext'\r\nimport Pregunta from './Pregunta'\r\nimport ErrorUrl from '../ErrorUrl'\r\nimport Cargando from '../Cargando'\r\nimport SinPreguntas from './SinPreguntas'\r\nimport CabeceraPregunta from './CabeceraPregunta'\r\nimport MensajeInformacion from './MensajeInformacion'\r\nimport notify from 'devextreme/ui/notify';\r\n\r\nfunction PreguntaAplicada({estudianteInstrumento, grupoId, volverAGrupos}) {\r\n\r\n const valorInicialGrupoPreguntas = {\r\n grupoId: -1,\r\n nombre: '',\r\n preguntas: [\r\n {\r\n preguntaId: -1,\r\n numero: -1,\r\n enunciado: '',\r\n tieneImagen: false,\r\n imagen: '',\r\n respuestas: []\r\n }\r\n ]\r\n }\r\n\r\n const [ estadoUsuario ] = useContext(UsuarioContext);\r\n\r\n const [error, setError] = useState();\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [grupoPreguntas, setGrupoPreguntas] = useState(valorInicialGrupoPreguntas)\r\n const [preguntas, setPreguntas] = useState([])\r\n\r\n const [indice, setIndice] = useState(0);\r\n const [longitud, setLongitud]= useState(1);\r\n\r\n const actualizarData = (result) => {\r\n setGrupoPreguntas(result);\r\n setPreguntas(result.preguntas);\r\n setLongitud(result.preguntas.length)\r\n }\r\n\r\n useEffect(() => {\r\n\r\n let url = Global.BASE_URL + 'api/evalgrupo';\r\n\r\n let datos = {\r\n estudianteInstrumentoId: estudianteInstrumento.estudianteInstrumentoId,\r\n grupoId: grupoId * 1\r\n };\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Content-Type\", \"application/json\");\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n\r\n var miInit = { \r\n method: 'POST', \r\n body: JSON.stringify(datos), \r\n headers: myHeaders,\r\n };\r\n\r\n fetch(url, miInit)\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n actualizarData(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n setGrupoPreguntas(valorInicialGrupoPreguntas)\r\n }\r\n );\r\n\r\n }, [])\r\n\r\n const eliminarPregunta = () => {\r\n\r\n let nuevaLongitud = preguntas.length - 1;\r\n if (nuevaLongitud < 0) {\r\n nuevaLongitud = 0;\r\n }\r\n setLongitud(nuevaLongitud)\r\n\r\n setPreguntas(preguntas.filter((e)=>(e.preguntaId !== preguntaActualId)))\r\n \r\n if (indice === nuevaLongitud ) {\r\n setIndice(0);\r\n }\r\n\r\n setPreguntaActualId(-1);\r\n setRespuestaActualId(-1);\r\n\r\n }\r\n\r\n\r\n const [preguntaActualId, setPreguntaActualId] = useState(-1)\r\n const [respuestaActualId, setRespuestaActualId] = useState(-1)\r\n\r\n const handledOnClickGuardarRespuesta = (e) => {\r\n\r\n if ((preguntaActualId > 0) && (respuestaActualId > 0)) {\r\n\r\n\r\n setIsLoaded(false);\r\n\r\n let url = Global.BASE_URL + 'api/evalpregunta';\r\n\r\n let datos = {\r\n estudianteInstrumentoId: estudianteInstrumento.estudianteInstrumentoId,\r\n preguntaId: preguntaActualId * 1,\r\n respuestaId: respuestaActualId * 1\r\n };\r\n\r\n \r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Content-Type\", \"application/json\");\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n \r\n var miInit = { \r\n method: 'POST', \r\n body: JSON.stringify(datos), \r\n headers: myHeaders,\r\n };\r\n \r\n fetch(url, miInit)\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n eliminarPregunta();\r\n\r\n if (result === true) {\r\n //mostrando la notificacion\r\n notify({\r\n message: \"Respuesta guardada\",\r\n position: {\r\n my: 'center top',\r\n at: 'center top'\r\n }\r\n }, \"success\", 2000);\r\n } else {\r\n //mostrando la notificacion\r\n notify({\r\n message: \"NO se pudo guardar la respuesta\",\r\n position: {\r\n my: 'center top',\r\n at: 'center top'\r\n }\r\n }, \"error\", 2000);\r\n }\r\n\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n }\r\n ); \r\n }\r\n\r\n\r\n }\r\n\r\n const handledOnClickRespuesta = (e) => {\r\n\r\n let n = e.target.name * 1;\r\n let v = e.target.value * 1\r\n\r\n setPreguntaActualId(n);\r\n setRespuestaActualId(v);\r\n\r\n }\r\n\r\n\r\n const handledOnClickBoton = (e) => {\r\n let valor = e.target.value * 1;\r\n let nuevo = 0;\r\n if (valor === -1) {\r\n nuevo = indice - 1;\r\n if (nuevo < 0) {\r\n nuevo = 0;\r\n }\r\n } else if (valor === 1) {\r\n nuevo = indice + 1;\r\n if (nuevo === longitud) {\r\n nuevo = longitud - 1;\r\n }\r\n } \r\n\r\n setIndice(nuevo);\r\n\r\n } \r\n\r\n\r\n if (error) {\r\n return (\r\n \r\n )\r\n } else if (!isLoaded) {\r\n return (\r\n \r\n )\r\n } else { \r\n\r\n if (grupoPreguntas.exito === false) {\r\n return (\r\n \r\n )\r\n } else {\r\n if (preguntas.length === 0) {\r\n return (\r\n \r\n \r\n \r\n \r\n )\r\n } else {\r\n\r\n let item = preguntas[indice];\r\n\r\n if (item === undefined) {\r\n return(\r\n \r\n \r\n \r\n \r\n )\r\n } else {\r\n return(\r\n
\r\n\r\n \r\n\r\n \r\n\r\n
\r\n
\r\n \r\n \r\n \r\n
\r\n
\r\n\r\n
\r\n )\r\n }\r\n }\r\n }\r\n }\r\n}\r\n\r\nexport default PreguntaAplicada","import React from 'react'\r\nimport { useState, useEffect, useContext } from 'react'\r\nimport UsuarioContext from '../../UsuarioContext'\r\nimport Global from '../../Global'\r\nimport ErrorUrl from '../ErrorUrl'\r\nimport Cargando from '../Cargando'\r\nimport Navegar from '../Navegar'\r\nimport Pie from '../Pie'\r\nimport InstrumentoConfirmado from './InstrumentoConfirmado'\r\nimport InstrumentoAplicado from './InstrumentoAplicado'\r\nimport PreguntaAplicada from './PreguntaAplicada'\r\nimport MensajeInformacion from './MensajeInformacion'\r\n\r\nfunction InstrumentoDetalle({ match }) {\r\n\r\n const [ estadoUsuario ] = useContext(UsuarioContext);\r\n\r\n const [error, setError] = useState();\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [instrumento, setInstrumento] = useState({\r\n instrumentoId : -1,\r\n nombre: '',\r\n objetivo: '',\r\n detalle: ''\r\n });\r\n\r\n const estudianteInstrumentoInicial = {\r\n\r\n exito: false,\r\n mensaje: \"\",\r\n evaluacion: {\r\n estudianteInstrumentoId: -1,\r\n instrumentoId: -1,\r\n nombre: '',\r\n fecha: '',\r\n horaInicio: '',\r\n minutosTranscurridos: 0,\r\n horaTermino: '',\r\n grupos: []\r\n }\r\n }\r\n\r\n const [estudianteInstrumento, setEstudianteInstrumento] = useState(estudianteInstrumentoInicial);\r\n\r\n const [paso, setPaso] = useState(1);\r\n const [grupoSeleccionadoId, setGrupoSeleccionadoId] = useState(-1);\r\n\r\n const setDataExamen = (value) => {\r\n setEstudianteInstrumento(value);\r\n setPaso(2);\r\n };\r\n\r\n\r\n useEffect(() => {\r\n\r\n if (paso === 1) {\r\n\r\n let url = Global.BASE_URL + 'api/evaluaciones/' + match.params.id;\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n\r\n var miInit = { \r\n method: 'GET', \r\n headers: myHeaders,\r\n };\r\n\r\n fetch(url, miInit)\r\n .then(respuesta => {\r\n if (respuesta.ok) {\r\n return respuesta;\r\n };\r\n })\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setInstrumento(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n setInstrumento(null);\r\n }\r\n );\r\n }\r\n\r\n }, []);\r\n\r\n\r\n const handleOnClickAcepto = (e) => {\r\n\r\n setIsLoaded(false)\r\n\r\n let url = Global.BASE_URL + 'api/evalestudiante';\r\n\r\n let datos = {\r\n instrumentoId: instrumento.instrumentoId\r\n };\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Content-Type\", \"application/json\");\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n \r\n var miInit = { \r\n method: 'POST', \r\n body: JSON.stringify(datos), \r\n headers: myHeaders,\r\n };\r\n \r\n fetch(url, miInit)\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setDataExamen(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n setEstudianteInstrumento(estudianteInstrumentoInicial)\r\n }\r\n );\r\n\r\n e.preventDefault();\r\n \r\n };\r\n\r\n const handleOnClickGrupo = (e) => {\r\n setGrupoSeleccionadoId(e.target.value);\r\n setPaso(3);\r\n }\r\n\r\n const volverAGrupos = () => {\r\n setPaso(2);\r\n }\r\n\r\n\r\n if (error) {\r\n return (\r\n \r\n )\r\n } else if (!isLoaded) {\r\n return (\r\n \r\n )\r\n } else { \r\n switch(paso) {\r\n case 1:\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n case 2:\r\n //acepto las condiciones y ahora tenemos que mostrar el contenido del examen\r\n if (estudianteInstrumento.exito === true) {\r\n return(\r\n \r\n \r\n \r\n \r\n \r\n )\r\n } else {\r\n return(\r\n \r\n \r\n \r\n \r\n \r\n ) \r\n }\r\n\r\n case 3:\r\n if (grupoSeleccionadoId > 0) {\r\n return(\r\n \r\n \r\n \r\n \r\n \r\n ) \r\n } else {\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n )\r\n }\r\n default:\r\n return (\r\n \r\n )\r\n }\r\n \r\n }\r\n}\r\n\r\nexport default InstrumentoDetalle","import React from 'react'\r\nimport Global from '../../Global'\r\n\r\nfunction ExamenArchivo({examen}) {\r\n\r\n let url = Global.BASE_URL + 'api/archivos/general/' + examen.archivo\r\n\r\n return(\r\n
\r\n \"pdf\"\r\n {examen.nombre} \r\n
\r\n )\r\n}\r\n\r\nexport default ExamenArchivo\r\n","import React from 'react'\r\nimport ExamenArchivo from './ExamenArchivo'\r\n\r\nfunction ExamenConfirmado({examen, handleOnClickAcepto}) {\r\n return(\r\n
\r\n

{examen.nombre}

\r\n
\r\n
\r\n

Objetivo

\r\n

\r\n {examen.objetivo}\r\n

\r\n
\r\n
\r\n

Respecto al tiempo

\r\n

\r\n {examen.detalle}\r\n

\r\n
\r\n
\r\n\r\n

Descargar el examen

\r\n
\r\n

Descargue el examen y una vez que lo haya desarrollado, pulse clic en el botón responder preguntas.

\r\n \r\n
\r\n\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default ExamenConfirmado\r\n\r\n","import React from 'react'\r\nimport { useState } from 'react';\r\n\r\nfunction ExamenRespuesta({numeroPregunta, alternativa, handleChange}) {\r\n\r\n return(\r\n\r\n
\r\n
\r\n pregunta {numeroPregunta}: \r\n
\r\n\r\n
\r\n \r\n
\r\n
\r\n\r\n )\r\n\r\n}\r\n\r\nexport default ExamenRespuesta;","import React from 'react'\r\nimport ExamenRespuesta from './ExamenRespuesta'\r\n\r\nfunction ExamenAplicado({examen, alternativas, handleChange, handleEnviarRespuestas}) {\r\n\r\n return (\r\n\r\n \r\n
\r\n

{examen.nombre}

\r\n
\r\n {alternativas.map(x => ( ))}\r\n
\r\n
\r\n
\r\n \r\n
\r\n
\r\n )\r\n \r\n}\r\n\r\nexport default ExamenAplicado;","import React from 'react'\r\nimport { Link } from 'react-router-dom'\r\n\r\nfunction MensajeExito({mensaje, urlDestino}) {\r\n\r\n return(\r\n
\r\n
\r\n

{mensaje}

\r\n Volver a los exámenes\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default MensajeExito","import React from 'react'\r\nimport { useState, useEffect, useContext } from 'react'\r\nimport UsuarioContext from '../../UsuarioContext'\r\nimport Global from '../../Global'\r\nimport ErrorUrl from '../ErrorUrl'\r\nimport Cargando from '../Cargando'\r\nimport Navegar from '../Navegar'\r\nimport Pie from '../Pie'\r\nimport ExamenConfirmado from './ExamenConfirmado'\r\nimport ExamenAplicado from './ExamenAplicado'\r\nimport MensajeExito from './MensajeExito'\r\nimport notify from 'devextreme/ui/notify';\r\n\r\nfunction ExamenDetalle({ match }) {\r\n\r\n const [ estadoUsuario ] = useContext(UsuarioContext);\r\n\r\n const [error, setError] = useState();\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [examen, setExamen] = useState({\r\n ExamenId : -1,\r\n nombre: '',\r\n objetivo: '',\r\n detalle: ''\r\n });\r\n\r\n const alternativasInicial = [];\r\n\r\n const [alternativas, setAlternativas] = useState(alternativasInicial);\r\n\r\n const [paso, setPaso] = useState(1);\r\n\r\n const [respuesta, setRespuesta] = useState();\r\n\r\n const setDataExamen = (value) => {\r\n setAlternativas(value);\r\n setPaso(2);\r\n };\r\n\r\n const setDataRespuesta = (value) => {\r\n console.log(value);\r\n setRespuesta(value);\r\n if (value.exito === true)\r\n {\r\n setPaso(3);\r\n } else {\r\n //mostrando la notificacion\r\n notify({\r\n message: value.mensaje,\r\n position: {\r\n my: 'center top',\r\n at: 'center top'\r\n }\r\n }, \"error\", 2000);\r\n } \r\n };\r\n\r\n\r\n const handleChange = (e) => {\r\n\r\n const actualSelecciónIndice = alternativas.findIndex(el => {\r\n return el.pregunta === Number(e.target.name)\r\n })\r\n \r\n let nuevaAlternativas = [...alternativas]\r\n \r\n if(actualSelecciónIndice >= 0) {\r\n nuevaAlternativas[actualSelecciónIndice].alternativa = Number(e.target.value)\r\n setAlternativas(nuevaAlternativas)\r\n }\r\n\r\n }\r\n\r\n useEffect(() => {\r\n\r\n if (paso === 1) {\r\n\r\n let url = Global.BASE_URL + 'api/examenes/' + match.params.id;\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n\r\n var miInit = { \r\n method: 'GET', \r\n headers: myHeaders,\r\n };\r\n\r\n fetch(url, miInit)\r\n .then(respuesta => {\r\n if (respuesta.ok) {\r\n return respuesta;\r\n };\r\n })\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setExamen(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n setExamen(null);\r\n }\r\n );\r\n }\r\n\r\n }, []);\r\n\r\n const handleOnClickAcepto = (e) => {\r\n\r\n setIsLoaded(false)\r\n\r\n let url = Global.BASE_URL + 'api/examestudiante/' + examen.examenId;\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n \r\n var miInit = { \r\n method: 'GET', \r\n headers: myHeaders,\r\n };\r\n \r\n fetch(url, miInit)\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setDataExamen(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n setAlternativas(alternativasInicial)\r\n }\r\n );\r\n\r\n e.preventDefault();\r\n \r\n };\r\n\r\n\r\nconst handleEnviarRespuestas = (e) => {\r\n\r\n setIsLoaded(false)\r\n\r\n let datos = {\r\n respuestas: alternativas,\r\n examenId: examen.examenId,\r\n };\r\n\r\n let url = Global.BASE_URL + 'api/examestudianteresponder';\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Content-Type\", \"application/json\");\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n\r\n var miInit = { \r\n method: 'POST', \r\n body: JSON.stringify(datos), \r\n headers: myHeaders,\r\n };\r\n\r\n fetch(url, miInit)\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setDataRespuesta(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n setAlternativas(alternativasInicial)\r\n }\r\n );\r\n\r\n e.preventDefault();\r\n };\r\n\r\n\r\n if (error) {\r\n return (\r\n \r\n )\r\n } else if (!isLoaded) {\r\n return (\r\n \r\n )\r\n } else { \r\n switch(paso) {\r\n case 1:\r\n return (\r\n \r\n \r\n \r\n \r\n \r\n );\r\n case 2:\r\n //acepto las condiciones y ahora tenemos que mostrar el contenido del examen\r\n return(\r\n \r\n \r\n \r\n \r\n \r\n )\r\n case 3:\r\n if (respuesta.exito === true) {\r\n return(\r\n \r\n \r\n \r\n \r\n \r\n ) \r\n }\r\n default:\r\n return (\r\n \r\n )\r\n }\r\n \r\n }\r\n}\r\n\r\nexport default ExamenDetalle\r\n\r\n","import React from 'react'\r\nimport { useContext } from 'react'\r\nimport UsuarioContext from './UsuarioContext'\r\nimport { Route, Redirect } from 'react-router-dom'; \r\n\r\nfunction PrivateRoute ({ component: Component, ...rest }) {\r\n\r\n const [context ] = useContext(UsuarioContext)\r\n\r\n return(\r\n {\r\n if (context.exito === true) \r\n {\r\n return ;\r\n } \r\n else \r\n {\r\n return \r\n }\r\n }\r\n }\r\n />\r\n )\r\n}\r\n\r\n export default PrivateRoute","import React from 'react'\r\n\r\nconst AulaContext = React.createContext()\r\n\r\nexport default AulaContext","import React from 'react'\r\nimport { Link } from 'react-router-dom'\r\n\r\nfunction Curso({curso}){\r\n\r\n const url = `/cursodetalle/${curso.cursoId}/${curso.nombre}`;\r\n\r\n return(\r\n \r\n
\r\n
\r\n {curso.nombre} \r\n
\r\n
\r\n \r\n )\r\n}\r\n\r\nexport default Curso","import React, { useEffect, useContext } from 'react'\r\nimport Global from '../Global'\r\nimport AulaContext from '../AulaContext'\r\nimport UsuarioContext from '../UsuarioContext'\r\nimport Curso from './Curso';\r\n\r\nfunction Cursos() {\r\n\r\n const [ estadoUsuario ] = useContext(UsuarioContext);\r\n const [ aula, setAula ] = useContext(AulaContext);\r\n\r\n useEffect(() => {\r\n\r\n if (aula.cursos.length === 0) {\r\n\r\n let url = Global.BASE_URL + 'api/cursos';\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n \r\n var miInit = { \r\n method: 'GET', \r\n headers: myHeaders,\r\n };\r\n \r\n fetch(url, miInit)\r\n .then(respuesta => {\r\n if (respuesta.ok) {\r\n return respuesta;\r\n } \r\n })\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setAula(\r\n {\r\n ...aula,\r\n cursos: result,\r\n }\r\n );\r\n },\r\n (error) => {\r\n setAula(\r\n {\r\n ...aula,\r\n cursos: [],\r\n }\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n }, [aula, estadoUsuario, setAula])\r\n\r\n return (\r\n\r\n
\r\n

Aula virtual

\r\n
\r\n
\r\n {aula.cursos.map(c => (\r\n \r\n ) )}\r\n
\r\n
\r\n\r\n )\r\n\r\n\r\n};\r\n\r\nexport default Cursos;","import React from 'react'\r\nimport Navegar from './Navegar'\r\nimport Cursos from './Cursos'\r\nimport Pie from './Pie'\r\n\r\nfunction Aula() {\r\n return(\r\n \r\n \r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default Aula","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\n\r\nfunction CursoNombre({nombre}) {\r\n\r\n return (\r\n\r\n
\r\n

{nombre}

\r\n
\r\n Cambiar\r\n
\r\n
\r\n\r\n )\r\n}\r\n\r\nexport default CursoNombre","import React, { useEffect, useState } from 'react'\r\n\r\nfunction Semana({semanaActual, semanas, handleChange}) {\r\n\r\n const [opciones, setOpciones] = useState()\r\n\r\n \r\n const getOpciones = (limite) => {\r\n let items = [];\r\n for (var i = 1; i <= limite; i++) {\r\n items.push();\r\n } \r\n return items;\r\n }\r\n\r\n useEffect(() => {\r\n setOpciones(getOpciones(semanas));\r\n }, [semanas])\r\n\r\n return(\r\n\r\n
\r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default Semana","import React from 'react'\r\nimport Global from '../Global'\r\n\r\nfunction TemaRecurso({recurso}) {\r\n\r\n let url = Global.BASE_URL + 'api/archivos/general/' + recurso.archivo\r\n\r\n return(\r\n
\r\n \"pdf\"\r\n {recurso.titulo} \r\n
\r\n )\r\n}\r\n\r\nexport default TemaRecurso","import React from 'react'\r\nimport TemaRecurso from './TemaRecurso'\r\n\r\nfunction TemaRecursos({recursos}) {\r\n\r\n return(\r\n
\r\n
Recursos disponibles
\r\n
\r\n {recursos.map(r => (\r\n \r\n ))}\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default TemaRecursos","import React from 'react'\r\n\r\nfunction TemaVideo({video}) {\r\n\r\n return(\r\n
\r\n
\r\n \"pdf\"\r\n {video.titulo}\r\n
\r\n
\r\n \r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default TemaVideo\r\n","import React from 'react'\r\nimport TemaVideo from './TemaVideo'\r\n\r\nfunction TemaVideos({videos}) {\r\n\r\n return(\r\n
\r\n
Videos explicativos
\r\n
\r\n {videos.map(v => (\r\n \r\n ))}\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default TemaVideos\r\n","import React from 'react'\r\nimport TemaRecursos from './TemaRecursos'\r\nimport TemaVideos from './TemaVideos'\r\n\r\nfunction Tema({tema}) {\r\n\r\n return(\r\n
\r\n

{tema.titulo}

\r\n
\r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nexport default Tema","import React from 'react'\r\nimport Tema from './Tema'\r\n\r\nfunction Temas({temas, semanaActual}) {\r\n\r\n return (\r\n
\r\n {temas\r\n .filter(f => parseInt(f.semana) === parseInt(semanaActual))\r\n .map((t) => ())}\r\n
\r\n )\r\n\r\n}\r\n\r\nexport default Temas","import React from 'react'\r\nimport { useState, useContext, useEffect } from 'react'\r\nimport UsuarioContext from '../UsuarioContext'\r\nimport Global from '../Global'\r\n\r\nimport Navegar from './Navegar'\r\nimport Pie from './Pie'\r\nimport Cargando from './Cargando'\r\nimport CursoNombre from './CursoNombre'\r\nimport Semana from './Semana'\r\nimport Temas from './Temas'\r\nimport ErrorUrl from './ErrorUrl'\r\n\r\nfunction CursoDetalle({ match }) {\r\n\r\n const [ estadoUsuario ] = useContext(UsuarioContext);\r\n\r\n const [error, setError] = useState(null);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [temas, setTemas] = useState([]);\r\n \r\n\r\n const [curso] = useState(\r\n {\r\n id: match.params.id,\r\n nombre: match.params.nombre,\r\n }\r\n );\r\n\r\n const numeroSemana = estadoUsuario.estudiante.semanaActual;\r\n const [semanaActual, setSemanaActual] = useState(numeroSemana)\r\n\r\n const handleChange = (e) => {\r\n setSemanaActual(e.target.value);\r\n }\r\n\r\n useEffect(() => {\r\n\r\n let url = Global.BASE_URL + \"api/temas/\" + curso.id;\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n\r\n var miInit = { \r\n method: 'GET', \r\n headers: myHeaders,\r\n };\r\n\r\n fetch(url, miInit)\r\n .then(respuesta => {\r\n if (respuesta.ok) {\r\n return respuesta;\r\n };\r\n })\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setTemas(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n setTemas(null);\r\n }\r\n ) \r\n }, [curso, estadoUsuario ]);\r\n\r\n if (error) {\r\n return (\r\n \r\n )\r\n } else if (!isLoaded) {\r\n return (\r\n \r\n )\r\n } else { \r\n return(\r\n \r\n \r\n
\r\n \r\n \r\n \r\n
\r\n \r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default CursoDetalle","import React from 'react'\r\nimport { Link } from 'react-router-dom'\r\n\r\nfunction Biblioteca({biblioteca}){\r\n\r\n const url = `/bibliotecadetalle/${biblioteca.bibliotecaId}/${biblioteca.titulo}`;\r\n\r\n return(\r\n \r\n
\r\n
\r\n {biblioteca.titulo} \r\n
\r\n
\r\n \r\n )\r\n}\r\n\r\nexport default Biblioteca\r\n","import React, { useEffect, useContext } from 'react'\r\nimport Global from '../Global'\r\nimport AulaContext from '../AulaContext'\r\nimport UsuarioContext from '../UsuarioContext'\r\nimport Biblioteca from './Biblioteca';\r\n\r\nfunction Bibliotecas() {\r\n\r\n const [ estadoUsuario ] = useContext(UsuarioContext);\r\n const [ aula, setAula ] = useContext(AulaContext);\r\n\r\n useEffect(() => {\r\n\r\n if (aula.bibliotecas.length === 0) {\r\n\r\n let url = Global.BASE_URL + 'api/bibliotecas';\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n \r\n var miInit = { \r\n method: 'GET', \r\n headers: myHeaders,\r\n };\r\n \r\n fetch(url, miInit)\r\n .then(respuesta => {\r\n if (respuesta.ok) {\r\n return respuesta;\r\n } \r\n })\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setAula(\r\n {\r\n ...aula,\r\n bibliotecas: result,\r\n }\r\n );\r\n },\r\n (error) => {\r\n setAula(\r\n {\r\n ...aula,\r\n bibliotecas: [],\r\n }\r\n );\r\n }\r\n );\r\n\r\n }\r\n\r\n }, [aula, estadoUsuario, setAula])\r\n\r\n return (\r\n\r\n
\r\n

Biblioteca virtual

\r\n
\r\n
\r\n {aula.bibliotecas.map(c => (\r\n \r\n ) )}\r\n
\r\n
\r\n\r\n )\r\n\r\n};\r\n\r\nexport default Bibliotecas;\r\n\r\n","import React from 'react'\r\nimport Navegar from './Navegar'\r\nimport Bibliotecas from './Bibliotecas'\r\nimport Pie from './Pie'\r\n\r\nfunction BibliotecaAula() {\r\n return(\r\n
\r\n \r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nexport default BibliotecaAula","import React from 'react';\r\nimport { Link } from 'react-router-dom';\r\n\r\nfunction PublicacionNombre({nombre}) {\r\n\r\n return (\r\n\r\n
\r\n

{nombre}

\r\n
\r\n Cambiar\r\n
\r\n
\r\n\r\n )\r\n}\r\n\r\nexport default PublicacionNombre\r\n","import React from 'react'\r\nimport Global from '../Global'\r\n\r\nfunction PublicacionRecurso({recurso}) {\r\n\r\n let url = Global.BASE_URL + 'api/archivos/general/' + recurso.archivo\r\n\r\n return(\r\n
\r\n \"pdf\"\r\n {recurso.titulo} \r\n
\r\n )\r\n}\r\n\r\nexport default PublicacionRecurso\r\n","import React from 'react'\r\nimport PublicacionRecurso from './PublicacionRecurso'\r\n\r\nfunction PublicacionRecursos({recursos}) {\r\n\r\n return(\r\n
\r\n
Recursos disponibles
\r\n
\r\n {recursos.map(r => (\r\n \r\n ))}\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default PublicacionRecursos\r\n","import React from 'react'\r\n\r\nfunction PublicacionVideo({video}) {\r\n\r\n return(\r\n
\r\n
\r\n \"pdf\"\r\n {video.titulo}\r\n
\r\n
\r\n \r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default PublicacionVideo\r\n\r\n","import React from 'react'\r\nimport PublicacionVideo from './PublicacionVideo'\r\n\r\nfunction PublicacionVideos({videos}) {\r\n\r\n return(\r\n
\r\n
Videos explicativos
\r\n
\r\n {videos.map(v => (\r\n \r\n ))}\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default PublicacionVideos\r\n\r\n","import React from 'react'\r\nimport PublicacionRecursos from './PublicacionRecursos'\r\nimport PublicacionVideos from './PublicacionVideos'\r\n\r\nfunction Publicacion({publicacion}) {\r\n\r\n return(\r\n
\r\n

{publicacion.titulo}

\r\n
\r\n \r\n \r\n
\r\n )\r\n}\r\n\r\nexport default Publicacion\r\n","import React from 'react'\r\nimport Publicacion from './Publicacion'\r\n\r\nfunction Publicaciones({publicaciones}) {\r\n\r\n return (\r\n
\r\n {publicaciones.map((t) => (\r\n \r\n ))}\r\n
\r\n )\r\n\r\n}\r\n\r\nexport default Publicaciones\r\n\r\n","import React from 'react'\r\nimport { useState, useContext, useEffect } from 'react'\r\nimport UsuarioContext from '../UsuarioContext'\r\nimport Global from '../Global'\r\n\r\nimport Navegar from './Navegar'\r\nimport Pie from './Pie'\r\nimport Cargando from './Cargando'\r\nimport BibliotecaNombre from './BibliotecaNombre'\r\nimport Publicaciones from './Publicaciones'\r\nimport ErrorUrl from './ErrorUrl'\r\n\r\nfunction BibliotecaDetalle({ match }) {\r\n\r\n const [ estadoUsuario ] = useContext(UsuarioContext);\r\n\r\n const [error, setError] = useState(null);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [publicaciones, setPublicaciones] = useState([]);\r\n \r\n\r\n const [biblioteca] = useState(\r\n {\r\n id: match.params.id,\r\n nombre: match.params.nombre,\r\n }\r\n );\r\n\r\n useEffect(() => {\r\n\r\n let url = Global.BASE_URL + \"api/publicaciones/\" + biblioteca.id;\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n\r\n var miInit = { \r\n method: 'GET', \r\n headers: myHeaders,\r\n };\r\n\r\n fetch(url, miInit)\r\n .then(respuesta => {\r\n if (respuesta.ok) {\r\n return respuesta;\r\n };\r\n })\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setPublicaciones(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n setPublicaciones(null);\r\n }\r\n ) \r\n }, [biblioteca, estadoUsuario ]);\r\n\r\n if (error) {\r\n return (\r\n \r\n )\r\n } else if (!isLoaded) {\r\n return (\r\n \r\n )\r\n } else { \r\n return(\r\n \r\n \r\n
\r\n \r\n \r\n
\r\n \r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default BibliotecaDetalle\r\n\r\n","import React, { useContext, useState } from 'react'\r\nimport UsuarioContext from '../UsuarioContext'\r\nimport Global from '../Global'\r\n\r\nfunction Login({history}) {\r\n\r\n const [ estadoUsuario, setEstadoUsuario ] = useContext(UsuarioContext)\r\n\r\n const [datos, setDatos] = useState({\r\n usuario: '',\r\n password: '',\r\n });\r\n\r\n const handleInputChange = (event) => {\r\n setDatos({\r\n ...datos,\r\n [event.target.name] : event.target.value\r\n })\r\n };\r\n\r\n const onFormSubmit = (e) => {\r\n\r\n \r\n\r\n let url = Global.BASE_URL + 'api/login';\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Content-Type\", \"application/json\");\r\n\r\n var miInit = { \r\n method: 'POST', \r\n body: JSON.stringify(datos), \r\n headers: myHeaders,\r\n };\r\n\r\n fetch(url, miInit)\r\n .then(respuesta => {\r\n if (respuesta.ok) {\r\n return respuesta;\r\n } \r\n })\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setEstadoUsuario(\r\n {\r\n exito: true,\r\n token: result.token,\r\n estudiante: result.estudiante\r\n }\r\n );\r\n history.push(\"/aulavirtual\"); \r\n },\r\n (error) => {\r\n setEstadoUsuario(\r\n {\r\n exito: false,\r\n token: null,\r\n estudiante: null\r\n }\r\n ) \r\n }\r\n );\r\n\r\n \r\n e.preventDefault();\r\n\r\n };\r\n\r\n return(\r\n
\r\n
\r\n
\r\n \"Logo\r\n
\r\n
\r\n
Universidad Nacional Toribio Rodriguez de Mendoza
\r\n
Centro Preuniversitario
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
U
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
P
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default Login","import React from 'react'\r\nimport { Link } from 'react-router-dom'\r\n\r\nfunction Instrumento({instrumento}) {\r\n\r\n let url = \"/instrumentodetalle/\" + instrumento.instrumentoId;\r\n\r\n return(\r\n
\r\n
\r\n
{instrumento.nombre}
\r\n

{instrumento.objetivo}

\r\n

{instrumento.detalle}

\r\n
\r\n Iniciar\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default Instrumento","import React from 'react'\r\nimport { useState, useEffect, useContext } from 'react'\r\nimport UsuarioContext from '../../UsuarioContext'\r\nimport Global from '../../Global'\r\nimport Instrumento from './Instrumento'\r\nimport Cargando from '../Cargando'\r\nimport ErrorUrl from '../ErrorUrl';\r\n\r\n\r\nfunction Instrumentos() {\r\n\r\n\r\n const [ estadoUsuario ] = useContext(UsuarioContext);\r\n\r\n const [error, setError] = useState(null);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [instrumentos, setInstrumentos] = useState([]);\r\n\r\n useEffect(() => {\r\n\r\n let url = Global.BASE_URL + 'api/evaluaciones';\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n\r\n var miInit = { \r\n method: 'GET', \r\n headers: myHeaders,\r\n };\r\n\r\n fetch(url, miInit)\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setInstrumentos(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n }\r\n ) \r\n }, []) \r\n \r\n if (error) {\r\n return (\r\n \r\n ) \r\n } else if (!isLoaded) {\r\n return (\r\n \r\n ) \r\n } else {\r\n return(\r\n
\r\n {instrumentos.map(i => (\r\n \r\n ))}\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default Instrumentos","import React from 'react'\r\nimport { Link } from 'react-router-dom'\r\n\r\nfunction Examen({examen}) {\r\n\r\n let url = \"/examendetalle/\" + examen.examenId;\r\n\r\n return(\r\n
\r\n
\r\n
{examen.nombre}
\r\n

{examen.objetivo}

\r\n

{examen.detalle}

\r\n
\r\n Iniciar\r\n
\r\n
\r\n
\r\n )\r\n}\r\n\r\nexport default Examen\r\n","import React from 'react'\r\nimport { useState, useEffect, useContext } from 'react'\r\nimport UsuarioContext from '../../UsuarioContext'\r\nimport Global from '../../Global'\r\nimport Examen from './Examen'\r\nimport Cargando from '../Cargando'\r\nimport ErrorUrl from '../ErrorUrl';\r\n\r\nfunction Examenes() {\r\n\r\n const [ estadoUsuario ] = useContext(UsuarioContext);\r\n\r\n const [error, setError] = useState(null);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [examenes, setExamenes] = useState([]);\r\n\r\n useEffect(() => {\r\n\r\n let url = Global.BASE_URL + 'api/examenes';\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n\r\n var miInit = { \r\n method: 'GET', \r\n headers: myHeaders,\r\n };\r\n\r\n fetch(url, miInit)\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setExamenes(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n }\r\n ) \r\n }, []) \r\n \r\n if (error) {\r\n return (\r\n \r\n ) \r\n } else if (!isLoaded) {\r\n return (\r\n \r\n ) \r\n } else {\r\n return(\r\n
\r\n {examenes.map(i => (\r\n \r\n ))}\r\n
\r\n )\r\n }\r\n}\r\n\r\nexport default Examenes\r\n\r\n","import React from 'react'\r\nimport Navegar from '../Navegar'\r\nimport Pie from '../Pie'\r\nimport Instrumentos from './Instrumentos'\r\nimport Examenes from './Examenes'\r\n\r\nfunction InstrumentosPage() {\r\n return(\r\n \r\n \r\n \r\n \r\n \r\n \r\n )\r\n}\r\n\r\nexport default InstrumentosPage","import React from 'react'\r\nimport { useState, useContext, useEffect } from 'react'\r\nimport Global from '../Global'\r\nimport UsuarioContext from '../UsuarioContext'\r\nimport notify from 'devextreme/ui/notify';\r\nimport Navegar from './Navegar'\r\nimport Pie from './Pie'\r\n\r\nfunction CambiarClave() {\r\n\r\n const [ estadoUsuario, setEstadoUsuario ] = useContext(UsuarioContext)\r\n\r\n const [exito, setExito] = useState()\r\n\r\n const [datos, setDatos] = useState({\r\n clave1: '',\r\n clave2: '',\r\n });\r\n\r\n const handleInputChange = (event) => {\r\n setDatos({\r\n ...datos,\r\n [event.target.name] : event.target.value\r\n })\r\n };\r\n\r\n useEffect(() => {\r\n if (exito != null) {\r\n\r\n let mensaje = \"La contraseña se cambió con exito\"\r\n\r\n var tipo = (exito === true) ? 'success' : 'error'\r\n\r\n if (exito !== true) {\r\n mensaje = \"No se pudo cambiar la contraseña\"\r\n }\r\n\r\n notify({\r\n message: mensaje,\r\n position: {\r\n my: 'center top',\r\n at: 'center top'\r\n }\r\n }, tipo, 3000);\r\n }\r\n }, [exito])\r\n\r\n\r\n const onFormSubmit = (e) => {\r\n\r\n if (datos.clave1 !== datos.clave2) {\r\n\r\n notify({\r\n message: \"Las constraseñas no coinciden\",\r\n position: {\r\n my: 'center top',\r\n at: 'center top'\r\n }\r\n }, 'error', 3000);\r\n\r\n } else {\r\n\r\n let url = Global.BASE_URL + 'api/cambiarclave';\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Content-Type\", \"application/json\");\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n\r\n var miInit = { \r\n method: 'POST', \r\n body: JSON.stringify(datos), \r\n headers: myHeaders,\r\n };\r\n\r\n fetch(url, miInit)\r\n .then(respuesta => {\r\n if (respuesta.ok) {\r\n return respuesta;\r\n } \r\n })\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setExito(result);\r\n },\r\n (error) => {\r\n setExito(false); \r\n }\r\n );\r\n }\r\n \r\n e.preventDefault();\r\n\r\n };\r\n\r\n return( \r\n \r\n \r\n \r\n\r\n
\r\n
Cambiar contraseña
\r\n
\r\n
\r\n
\r\n
\r\n
\r\n
Clave
\r\n
\r\n \r\n
\r\n\r\n
\r\n
\r\n
Repetir clave
\r\n
\r\n \r\n
\r\n \r\n
\r\n \r\n
\r\n
\r\n
\r\n
\r\n
\r\n \r\n
\r\n )\r\n}\r\n\r\nexport default CambiarClave","import React from 'react'\r\nimport { useState, useEffect, useContext } from 'react'\r\nimport ErrorUrl from './ErrorUrl'\r\nimport Cargando from './Cargando'\r\nimport Global from '../Global'\r\nimport Navegar from './Navegar'\r\nimport Pie from './Pie'\r\n\r\nimport UsuarioContext from '../UsuarioContext'\r\n\r\n\r\nfunction EstudianteEvaluaciones() {\r\n\r\n const [ estadoUsuario ] = useContext(UsuarioContext);\r\n\r\n const [error, setError] = useState(null);\r\n const [isLoaded, setIsLoaded] = useState(false);\r\n const [instrumentos, setInstrumentos] = useState([]);\r\n\r\n useEffect(() => {\r\n\r\n let url = Global.BASE_URL + 'api/estudianteevaluaciones';\r\n\r\n var myHeaders = new Headers();\r\n myHeaders.append(\"Authorization\", `Bearer ${estadoUsuario.token}`);\r\n\r\n var miInit = { \r\n method: 'GET', \r\n headers: myHeaders,\r\n };\r\n\r\n fetch(url, miInit)\r\n .then(res => res.json())\r\n .then(\r\n (result) => {\r\n setIsLoaded(true);\r\n setInstrumentos(result);\r\n },\r\n (error) => {\r\n setIsLoaded(false);\r\n setError(error);\r\n }\r\n ) \r\n }, []) \r\n\r\n if (error) {\r\n return (\r\n \r\n ) \r\n } else if (!isLoaded) {\r\n return (\r\n \r\n ) \r\n } else {\r\n\r\n if (instrumentos.length > 0) {\r\n return(\r\n \r\n \r\n
\r\n

Mis evaluaciones

\r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n \r\n {instrumentos.map(i => (\r\n \r\n \r\n \r\n \r\n \r\n ))}\r\n \r\n
EvaluacionFechaPuntaje
{i.instrumento}{i.fechaAplicacion}{i.puntaje}
\r\n
\r\n \r\n
\r\n )\r\n \r\n } else {\r\n return(\r\n \r\n \r\n
\r\n

Mis evaluaciones

\r\n

Todavia no tiene evaluaciones procesadas...

\r\n

Si realizó algún examen, espere que el sistema procese los resultados para poder verlos aquí.

\r\n
\r\n \r\n
\r\n )\r\n }\r\n }\r\n}\r\n\r\nexport default EstudianteEvaluaciones","import 'devextreme/dist/css/dx.common.css';\nimport 'devextreme/dist/css/dx.light.css';\nimport React, { useState, useEffect } from 'react';\nimport { BrowserRouter, Route, Switch } from 'react-router-dom'; \n\nimport './App.css';\n\nimport Global from './Global'\nimport Home from './Componentes/Home'\nimport Mision from './Componentes/Mision'\nimport Tramites from './Componentes/Tramites'\nimport EquipoTrabajo from './Componentes/EquipoTrabajo'\nimport Vacantes from './Componentes/Vacantes/Vacantes'\nimport NoticiaDetalle from './Componentes/Noticias/NoticiaDetalle'\nimport InstrumentoDetalle from './Componentes/Evaluacion/InstrumentoDetalle'\nimport ExamenDetalle from './Componentes/Evaluacion/ExamenDetalle'\n\nimport PrivateRoute from './PrivateRoute'\nimport Aula from './Componentes/Aula'\nimport CursoDetalle from './Componentes/CursoDetalle'\nimport BibliotecaAula from './Componentes/BibliotecaAula'\nimport BibliotecaDetalle from './Componentes/BibliotecaDetalle'\nimport Login from './Componentes/Login';\n\nimport UsuarioContext from './UsuarioContext'\nimport AulaContext from './AulaContext'\nimport InfoWeb from './InfoWeb'\nimport ErrorUrl from './Componentes/ErrorUrl';\nimport Cargando from './Componentes/Cargando';\nimport InstrumentosPage from './Componentes/Evaluacion/InstrumentosPage';\nimport CambiarClave from './Componentes/CambiarClave';\nimport EstudianteEvaluaciones from './Componentes/EstudianteEvaluaciones'\n\nconst estadoInicialUsuario = {\n exito: false,\n token: null,\n estudiante: null\n}\n\nconst estadoInicialAula = {\n cursos: [],\n evaluaciones: [],\n bibliotecas: []\n}\n\nfunction App() {\n\n const [error, setError] = useState(null);\n const [isLoaded, setIsLoaded] = useState(false);\n const [info, setInfo] = useState([]);\n\n const [ estadoUsuario, setEstadoUsuario ] = useState(estadoInicialUsuario)\n\n const [ estadoAula, setEstadoAula ] = useState(estadoInicialAula)\n \n useEffect(() => {\n fetch(Global.BASE_URL + 'api/webinfo/home')\n .then(res => res.json())\n .then(\n (result) => {\n setIsLoaded(true);\n setInfo(result);\n },\n (error) => {\n setIsLoaded(false);\n setError(error);\n }\n ) \n }, []) \n\n if (error) {\n return (\n \n )\n } else if (!isLoaded) {\n return (\n \n )\n } else {\n return (\n \n \n \n \n {estadoUsuario => (\n \n {estadoAula => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n )}\n \n )}\n \n \n \n \n );\n }\n}\n\nexport default App;\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://bit.ly/CRA-PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.0/8 are considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n);\n\nexport function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n\n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n\n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n\n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://bit.ly/CRA-PWA'\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n}\n\nfunction registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then(registration => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://bit.ly/CRA-PWA.'\n );\n\n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n\n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch(error => {\n console.error('Error during service worker registration:', error);\n });\n}\n\nfunction checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl, {\n headers: { 'Service-Worker': 'script' },\n })\n .then(response => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf('javascript') === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then(registration => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n );\n });\n}\n\nexport function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready\n .then(registration => {\n registration.unregister();\n })\n .catch(error => {\n console.error(error.message);\n });\n }\n}\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport './index.css';\nimport App from './App';\nimport * as serviceWorker from './serviceWorker';\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root')\n);\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://bit.ly/CRA-PWA\nserviceWorker.unregister();\n"],"sourceRoot":""}