public async Task <ActionResult> CheckMessages(MyManageIndexViewModels model) { var resultModel = new MyManageIndexViewModels(); var userId = User.Identity.GetUserId(); var user = await UserManager.FindByIdAsync(userId); //Get all messages sent to this user or sent by this user var messages = _db.InternalMessages.Where(s => s.SenderID.Equals(userId) || s.ReceiverID.Equals(userId)); resultModel.sentMessages = new List <MyMessage>(); resultModel.receivedMessages = new List <MyMessage>(); foreach (var msg in messages) { // mails sent to this user if (msg.ReceiverID.Equals(userId)) { var sender = await UserManager.FindByIdAsync(msg.SenderID); resultModel.receivedMessages.Add(new MyMessage { message = msg, sender = sender }); } else if (msg.SenderID.Equals(userId)) {//mails sent by this user var receiver = await UserManager.FindByIdAsync(msg.ReceiverID); resultModel.sentMessages.Add(new MyMessage { message = msg, receiver = receiver }); } } return(View("CheckMessegsView", resultModel)); }
public async Task <ActionResult> MyIndex() { var resultModel = new MyManageIndexViewModels(); var userId = User.Identity.GetUserId(); var user = await UserManager.FindByIdAsync(userId); var myUser = new MyUser { user = user }; resultModel.CurrentUser = myUser; var performances = _db.UserSportPerformances.Where(s => s.UserID.Equals(userId)); foreach (var pf in performances) { switch (pf.Sport) { case "badminton": resultModel.BadmintonPf = parseLevelEnum(pf.Level); break; case "TableTennis": resultModel.TabletennisPf = parseLevelEnum(pf.Level); break; case "TennisIndoor": resultModel.TennisIdpf = parseLevelEnum(pf.Level); break; case "FitnessGymnasiumWorkouts": resultModel.FitnessPf = parseLevelEnum(pf.Level); break; case "SquashRacquetball": resultModel.SquashPf = parseLevelEnum(pf.Level); break; case "Swimming": // resultModel.SwimmingPf = parseLevelEnum(pf.Level); break; case "TennisOutdoor": // resultModel.TennisOdpf = parseLevelEnum(pf.Level); break; default: Console.WriteLine("Sport type error: " + pf.Sport); break; } } return(View("MyManageIndex", resultModel)); }
public async Task <ActionResult> UpdateUserInfoTask(MyManageIndexViewModels model) { var userId = User.Identity.GetUserId(); var currentUser = await UserManager.FindByIdAsync(userId);//find var apu = (ApplicationUser)currentUser; if (!model.CurrentUser.user.FirstName.Equals(currentUser.FirstName))//Modify Firstname { apu.FirstName = model.CurrentUser.user.FirstName; } if (!model.CurrentUser.user.Email.Equals(currentUser.Email))//Modify Email { apu.Email = model.CurrentUser.user.Email; } if (!model.CurrentUser.user.UserName.Equals(currentUser.UserName))//Modify Username { apu.UserName = model.CurrentUser.user.UserName; } if (!model.CurrentUser.user.LastName.Equals(currentUser.LastName))//Modify Lastname { apu.LastName = model.CurrentUser.user.LastName; } if (!model.CurrentUser.user.Gender.Equals(currentUser.Gender))//Modify Gender { apu.Gender = model.CurrentUser.user.Gender; } if (!model.CurrentUser.user.Age.Equals(currentUser.Age))//Modify Age { apu.Age = model.CurrentUser.user.Age; } try { var result = await UserManager.UpdateAsync(apu); } catch (DbEntityValidationException dbEx) { foreach (var validationErrors in dbEx.EntityValidationErrors) { foreach (var validationError in validationErrors.ValidationErrors) { Trace.TraceInformation("Property: {0} Error: {1}", validationError.PropertyName, validationError.ErrorMessage); } } } return(RedirectToAction("MyIndex")); }
public async Task <ActionResult> UpdateUserSportLevel(MyManageIndexViewModels model) { var userId = User.Identity.GetUserId(); var pfs = _db.UserSportPerformances.Where(s => s.UserID.Equals(userId)); SportLevelEnum?newPf = null; foreach (var pf in pfs) { switch (pf.Sport) { case "badminton": newPf = model.BadmintonPf; break; case "TableTennis": newPf = model.TabletennisPf; break; case "TennisIndoor": newPf = model.TennisIdpf; break; case "FitnessGymnasiumWorkouts": newPf = model.FitnessPf; break; case "SquashRacquetball": newPf = model.SquashPf; break; case "Swimming": newPf = model.SwimmingPf; break; case "TennisOutdoor": newPf = model.TennisOdpf; break; default: Console.WriteLine("Sport type error: " + pf.Sport); break; } if (newPf.HasValue) { pf.Level = newPf.ToString(); } } try { _db.SaveChanges(); } catch (System.Data.Entity.Core.EntityException dex) { //Log the error (uncomment dex variable name after DataException and add a line here to write a log.) ModelState.AddModelError("", "Unable to save changes. Try again, and if the problem persists, see your system administrator."); } return(RedirectToAction("MyIndex")); }