예제 #1
0
 public ActionResult ModalVisualizar(EventoCalendario evento)
 {
     evento.DiaDaSemana = GetDiaDaSemana(evento.ComecaEm);
     ViewBag.Usuario    = GetUsuarioSession().Item1;
     return(PartialView("_Visualizar", evento));
 }
        public JsonResult GetEvents(DateTime start, DateTime end)
        {
            List <EventoCalendario> listaEventos = new List <EventoCalendario>();
            var userId = ((ClaimsIdentity)HttpContext.User.Identity).FindFirst("UserId").Value;

            DateTime fechaDesde = start;
            DateTime fechaHasta = end;

            List <string> fechas = new List <string>();

            //acceso al sistema, ejercicios, exámenes, desbloqueo de extras, foro, glosario.
            var accesos = db.AccesoUsuarios.Where(AU => AU.FechaAcceso >= fechaDesde && AU.FechaAcceso < fechaHasta && AU.UsuarioId == userId);

            foreach (var acceso in accesos)
            {
                string fecha = acceso.FechaAcceso.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture);
                if (!fechas.Contains(fecha))
                {
                    fechas.Add(fecha);
                }
            }

            var ejercicios = db.BloqueRealizados.Where(ej => ej.FechaRealizado >= fechaDesde && ej.FechaRealizado < fechaHasta && ej.AlumnoId == userId);

            foreach (var ejercicio in ejercicios)
            {
                string fecha = ejercicio.FechaRealizado.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture);
                if (!fechas.Contains(fecha))
                {
                    fechas.Add(fecha);
                }
            }

            var examenes = db.Examenes.Where(ej => ej.FechaExamen >= fechaDesde && ej.FechaExamen < fechaHasta && ej.AlumnoId == userId);

            foreach (var examen in examenes)
            {
                string fecha = examen.FechaExamen.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture);
                if (!fechas.Contains(fecha))
                {
                    fechas.Add(fecha);
                }
            }

            var extraDesbloqueados = db.ExtraDesbloqueados.Where(ej => ej.FechaDesbloqueo >= fechaDesde && ej.FechaDesbloqueo < fechaHasta && ej.AlumnoId == userId);

            foreach (var extraDesbloqueado in extraDesbloqueados)
            {
                string fecha = extraDesbloqueado.FechaDesbloqueo.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture);
                if (!fechas.Contains(fecha))
                {
                    fechas.Add(fecha);
                }
            }


            var foroMensajes = db.ForoMensajes.Where(ej => ej.FechaCreacion >= fechaDesde && ej.FechaCreacion < fechaHasta && ej.AlumnoId == userId);

            foreach (var foroMensaje in foroMensajes)
            {
                string fecha = foroMensaje.FechaCreacion.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture);
                if (!fechas.Contains(fecha))
                {
                    fechas.Add(fecha);
                }
            }

            var vocabularioGlosarios = db.VocabularioGlosarios.Where(ej => ej.Fecha >= fechaDesde && ej.Fecha < fechaHasta && ej.AlumnoId == userId);

            foreach (var vocabularioGlosario in vocabularioGlosarios)
            {
                string fecha = vocabularioGlosario.Fecha.ToString("yyyy-MM-dd", CultureInfo.InvariantCulture);
                if (!fechas.Contains(fecha))
                {
                    fechas.Add(fecha);
                }
            }

            foreach (var fecha in fechas)
            {
                EventoCalendario evento = new EventoCalendario
                {
                    title       = "Actividad",
                    description = "",
                    type        = "meeting",
                    bg          = "#039BE5",
                    allday      = "true",
                    start       = fecha,
                    end         = fecha
                };
                listaEventos.Add(evento);
            }

            return(Json(listaEventos, JsonRequestBehavior.AllowGet));
        }
 public EncuestaGamEventoCalendario()
 {
     EventoCalendario = new EventoCalendario();
 }