//Aprove Request from user externo public ActionResult AproveRequest(Guid id, int idgrp) { if (!(AspNetUsersRoles.IsUserInRole("Administrator", User.Identity.Name) || AspNetUsersRoles.IsUserInRole("Maestro", User.Identity.Name))) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } try { var tvug = (from q in db.tbNetVirtualUserGroup where q.idNetVirtualGroup == idgrp && q.idNetVirtualUser == id select q).First(); tvug.StateUserAceptGroup = 2; db.Entry(tvug).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); return(Json(new { rta = string.Format("El usuario {0} pertenece a la red {1}", AspNetUsers.GetNameById(id), tvug.tbNetVirtualGroup.name) }, JsonRequestBehavior.AllowGet)); } catch (Exception) { return(Json(new { rta = "Ocurrio un error inesperado" })); } }
//---id = idgrupo public ActionResult Index(int id) { if (!(AspNetUsersRoles.IsUserInRole("Administrator", User.Identity.Name) || AspNetUsersRoles.IsUserInRole("Maestro", User.Identity.Name) || AspNetUsersRoles.IsUserInRole("Estudiante", User.Identity.Name))) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Guid userid = new Guid(AspNetUsers.GetUserId(User.Identity.Name)); Guid idOwner = db.tbNetVirtualUserGroup.Where(m => m.idNetVirtualGroup == id && m.isOwner == true).Select(m => m.idNetVirtualUser).FirstOrDefault(); //Solicitantes var rvcSolicitante = (from q in db.tbNetVirtualUserGroup where q.idNetVirtualGroup == id && q.isOwner == false && q.tbNetVirtualGroup.state == true && q.StateUserAceptGroup == 4 select new RedVirtualRequesting { id = q.idNetVirtualGroup, Name = q.tbNetVirtualGroup.name, idAplicant = q.idNetVirtualUser, State = q.tbNetVirtualGroup.state, StateUserAceptGroup = q.StateUserAceptGroup, IsOwner = q.isOwner, CreateDate = q.tbNetVirtualGroup.createDate.Value }).ToList(); foreach (var item in rvcSolicitante) { item.NameUser = AspNetUsers.GetNameById(item.idAplicant); item.idUser = idOwner; } //Mensajes var msj = (from q in db.tbNetVirtualWall where q.tbNetVirtualUserGroup.idNetVirtualGroup == id orderby q.dateSend descending select new RedVirtualWallMessage { idUser = q.tbNetVirtualUserGroup.idNetVirtualUser, Message = q.message, DataSend = q.dateSend.Value }).ToList(); foreach (var item in msj) { item.IsOwner = item.idUser == idOwner; item.IsMine = item.idUser == userid; } RVCWMessages RVCWmessages = new RVCWMessages() { idNVCGrpUser = db.tbNetVirtualUserGroup.Where(m => m.idNetVirtualGroup == id && m.idNetVirtualUser == userid).Select(m => m.id).FirstOrDefault(), RedvirtualWallMessage = msj }; //Perfiles var profiles = db.tbNetVirtualUserGroup.Where(m => m.idNetVirtualGroup == id).Select(m => new { m.idNetVirtualUser, m.isOwner, m.tbNetVirtualUser.state }); List <UserRVC> usersRVC = new List <UserRVC>(); foreach (var item in profiles) { string uid = item.idNetVirtualUser.ToString(); var urvc = (from m in db.AspNetUsers where m.Id == uid select new UserRVC() { Genre = m.Genre, Email = m.Email, }).FirstOrDefault(); if (urvc != null) { urvc.Id = item.idNetVirtualUser; urvc.IsOwner = item.isOwner; urvc.State = item.state; urvc.Name = AspNetUsers.GetNameById(item.idNetVirtualUser); usersRVC.Add(urvc); } } RVCWall rvm = new RVCWall() { Messages = RVCWmessages, Aplicant = rvcSolicitante, UsersRVC = usersRVC, id = id, NameNVC = db.tbNetVirtualGroup.Where(m => m.id == id).First().name }; return(View(rvm)); }