// GET: StaffViewModels public ActionResult Index() { var traineeRole = (from te in _context.Roles where te.Name.Contains("Trainee") select te).FirstOrDefault(); var traineeUser = _context.Users.Where(u => u.Roles.Select(us => us.RoleId).Contains(traineeRole.Id)).ToList(); var traineeUserVM = traineeUser.Select(user => new StaffViewModels { UserName = user.UserName, Email = user.Email, RoleName = "Trainee", UserID = user.Id }).ToList(); var trainerRole = (from tn in _context.Roles where tn.Name.Contains("Trainer") select tn).FirstOrDefault(); var trainerUser = _context.Users.Where(u => u.Roles.Select(us => us.RoleId).Contains(trainerRole.Id)).ToList(); var trainerUserVM = trainerUser.Select(user => new StaffViewModels { UserName = user.UserName, Email = user.Email, RoleName = "Trainer", UserID = user.Id }).ToList(); var staff = new StaffViewModels { Trainee = traineeUserVM, Trainer = trainerUserVM }; return(View(staff)); }
public ActionResult Edit(int id) { var memberToEdit = _db.Staff.Find(id); if (memberToEdit != null) { var vm = new StaffViewModels() { Id = memberToEdit.Id, FirstName = memberToEdit.FirstName, LastName = memberToEdit.LastName, Title = memberToEdit.Title, Email = memberToEdit.Email }; return(View(vm)); } else { return(HttpNotFound()); } }
public ActionResult Edit(StaffViewModels staffMemberToEdit, HttpPostedFileBase file) { try { if (ModelState.IsValid) { var oldStaffMember = _db.Staff.Find(staffMemberToEdit.Id); if (oldStaffMember != null) { oldStaffMember.Title = staffMemberToEdit.Title; oldStaffMember.FirstName = staffMemberToEdit.FirstName; oldStaffMember.LastName = staffMemberToEdit.LastName; oldStaffMember.Description = staffMemberToEdit.Description; oldStaffMember.Email = staffMemberToEdit.Email; if (file != null) { var imageBeforeResize = Image.FromStream(file.InputStream); var imageAfterResize = ResizeImage(imageBeforeResize, 400, 500); var resizedByteArray = ImageToByte(imageAfterResize); oldStaffMember.PhotoContent = resizedByteArray; oldStaffMember.MimeType = file.ContentType; } _db.Entry(oldStaffMember).State = System.Data.Entity.EntityState.Modified; _db.SaveChanges(); TempData["message"] = string.Format($"{staffMemberToEdit.FirstName} {staffMemberToEdit.FirstName} has been updated!"); } } return(RedirectToAction("Admin")); } catch { return(View()); } }