public ActionResult AgregarDocumentos(int?id) { if (Session["usuario"] != null) { usuario usuarioSesion = (usuario)HttpContext.Session["usuario"]; if (usuarioSesion.roles.FirstOrDefault().rol.Equals(Constantes.ADMINISTRADOR)) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } DocumentosCurso documentosCurso = new DocumentosCurso(); curso curso = db.cursos.Find(id); ICollection <nivele> niveles = db.niveles.ToList(); if (curso == null || niveles == null) { return(HttpNotFound()); } documentosCurso.curso = curso; documentosCurso.niveles = niveles; return(View(documentosCurso)); } else { return(RedirectToAction("../")); } } return(RedirectToAction("../Account/Login/ReturnUrl=cursos")); }
public ActionResult VerDocumentos(int?id, int?idCurso, int?unidad, int?capitulo) { if (Session["usuario"] != null) { usuario usuarioSesion = (usuario)HttpContext.Session["usuario"]; if (usuarioSesion.roles.FirstOrDefault().rol.Equals(Constantes.ADMINISTRADOR)) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } DocumentosCurso documentosCurso = new DocumentosCurso(); curso curso = db.cursos.Find(idCurso); ICollection <documento> documentos = db.niveles.Find(id).documentos; if (curso == null || documentos == null) { return(HttpNotFound()); } documentosCurso.curso = curso; for (int i = 0; i < documentos.Count; i++) { documento documento = documentos.ElementAt(i); foreach (var documentoCurso in curso.documentos_curso) { if (documento.id == documentoCurso.id_documento) { documentos.Remove(documento); i--; } } } if (unidad != null) { documentos = documentos.Where(d => d.unidad == unidad).ToList(); } if (capitulo != null) { documentos = documentos.Where(d => d.capitulo == capitulo).ToList(); } documentosCurso.documentos = documentos; documentosCurso.unidad = unidad.GetValueOrDefault(); documentosCurso.capitulo = capitulo.GetValueOrDefault(); documentosCurso.curso.contador_visitas = id; ViewBag.docsSeleccionados = curso.documentos_curso.Where(dc => dc.documento.niveles.Where(n => n.id == id).ToList().Count > 0); ViewBag.unidades = db.unidades; return(View(documentosCurso)); } else { return(RedirectToAction("../")); } } return(RedirectToAction("../Account/Login/ReturnUrl=cursos")); }
public ActionResult VerDocumentos([Bind(Include = "curso, niveles, documentos, documentosSeleccionados")] DocumentosCurso documentosCurso) { List <string> destinatarios = new List <string>(); string asunto = "PCD - Actualización de Curso"; string mensaje = "Le informamos que se actualizó el curso " + db.cursos.Find(documentosCurso.curso.id).curso1 + " en la plataforma de PIMAS. Los cambios son los siguientes:<br/>- Se incluyeron los siguientes archivos: "; foreach (documentos_curso item in db.documentos_curso.Where(dc => dc.id_curso == documentosCurso.curso.id)) { db.documentos_curso.Remove(item); } foreach (var idDocumento in documentosCurso.documentosSeleccionados) { documentos_curso dc = new documentos_curso(); dc.id_curso = documentosCurso.curso.id; dc.id_documento = idDocumento; dc.visibilidad = true; db.documentos_curso.Add(dc); mensaje += "<br />" + db.documentos.Find(idDocumento).titulo; } List <usuario> usuarios = db.cursos.Find(documentosCurso.curso.id).usuarios.ToList(); foreach (usuario usuario in usuarios) { if (usuario.notificacione.correo == true) { destinatarios.Add(usuario.correo); if (usuario.correo_2 != null) { destinatarios.Add(usuario.correo_2); } } } db.SaveChanges(); Utilitarios.EnviarCorreo(destinatarios, asunto, mensaje); return(RedirectToAction("AgregarDocumentos", new { id = documentosCurso.curso.id })); //return RedirectToAction("Index"); }