public ActionResult Edit(TeacherDetailsEditModel teacherModel) { if (!ModelState.IsValid) { ModelState.AddModelError(string.Empty, "User data has not been filled correctly. Please, re-enter"); return(View(teacherModel)); } Teacher teacher = this.teacherService.GetById(teacherModel.Id); if (teacher == null) { ModelState.AddModelError(string.Empty, "No such user exists"); return(View()); } bool usernameUnique = this.teacherService.IsUserNameUniqueOnEdit( teacher, teacherModel.AccountDetailsEditModel.UserName); if (!usernameUnique) { ModelState.AddModelError("AccountDetailsEditModel.UserName", "Duplicate usernames are not allowed."); return(View()); } Mapper.Map <TeacherDetailsEditModel, Teacher>(teacherModel, teacher); Mapper.Map <AccountDetailsEditModel, ApplicationUser>(teacherModel.AccountDetailsEditModel, teacher.ApplicationUser); this.teacherService.Update(teacher); return(RedirectToAction("Index", "Teachers")); }
public async Task <ActionResult> Details(string username) { if (username == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Teacher teacher = this.teacherService.GetByUserName(username); if (teacher == null) { return(HttpNotFound()); } TeacherDetailsEditModel model = Mapper.Map <Teacher, TeacherDetailsEditModel>(teacher); string scs = ""; foreach (SchoolClass sc in teacher.SchoolClasses.ToList()) { scs += "," + sc.ClassLetter + sc.ClassNumber + " "; } model.SchoolClasses = scs.Substring(1); model.AccountDetailsEditModel = Mapper.Map <ApplicationUser, AccountDetailsEditModel>(teacher.ApplicationUser); return(View(model)); }
public async Task <ActionResult> Edit(string username) { if (string.IsNullOrEmpty(username)) { ModelState.AddModelError(string.Empty, "No user has been selected"); return(View()); } Teacher teacher = this.teacherService.GetByUserName(username); if (teacher == null) { ModelState.AddModelError(string.Empty, "Such a user does not exist"); return(View()); } TeacherDetailsEditModel teacherModel = Mapper.Map <Teacher, TeacherDetailsEditModel>(teacher);//can check this string scs = ""; foreach (SchoolClass sc in teacher.SchoolClasses.ToList()) { scs += "," + sc.ClassLetter + sc.ClassNumber + " "; } teacherModel.SchoolClasses = scs.Substring(1); teacherModel.AccountDetailsEditModel = Mapper.Map <ApplicationUser, AccountDetailsEditModel>(teacher.ApplicationUser); return(View(teacherModel)); }
public ActionResult TeacherDetails(Guid id, string username) { Teacher t = this.teacherService.GetByUserName(username); SchoolClass schoolClass = this.schoolClassService.GetById(id); if (schoolClass == null) { return(RedirectToAction("Index", "SchoolClasses")); } TeacherDetailsEditModel teacherModel = Mapper.Map <Teacher, TeacherDetailsEditModel>(t); teacherModel.AccountDetailsEditModel = Mapper.Map <ApplicationUser, AccountDetailsEditModel>( t.ApplicationUser); return(View(teacherModel)); }
public async Task <ActionResult> Details(string username) { if (username == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Teacher teacher = await this.teacherService.GetByUserName(username); if (teacher == null) { return(HttpNotFound()); } TeacherDetailsEditModel model = Mapper.Map <Teacher, TeacherDetailsEditModel>(teacher); model.AccountDetailsEditModel = Mapper.Map <ApplicationUser, AccountDetailsEditModel>(teacher.ApplicationUser); return(View(model)); }
public async Task <ActionResult> Edit(string username) { if (string.IsNullOrEmpty(username)) { ModelState.AddModelError(string.Empty, "No user has been selected"); return(View()); } Teacher teacher = await this.teacherService.GetByUserName(username); if (teacher == null) { ModelState.AddModelError(string.Empty, "Such user does not exist"); return(View()); } TeacherDetailsEditModel teacherModel = Mapper.Map <Teacher, TeacherDetailsEditModel>(teacher); teacherModel.AccountDetailsEditModel = Mapper.Map <ApplicationUser, AccountDetailsEditModel>(teacher.ApplicationUser); return(View(teacherModel)); }
public ActionResult Edit(TeacherDetailsEditModel teacherModel) { if (!ModelState.IsValid) { ModelState.AddModelError(string.Empty, "User data has not been filled correctly. Please, re-enter"); return(View(teacherModel)); } Teacher teacher = this.teacherService.GetById(teacherModel.Id); if (teacher == null) { ModelState.AddModelError(string.Empty, "No such user exists"); return(View()); } bool usernameUnique = this.teacherService.IsUserNameUniqueOnEdit( teacher, teacherModel.AccountDetailsEditModel.UserName); if (!usernameUnique) { ModelState.AddModelError("AccountDetailsEditModel.UserName", "Duplicate usernames are not allowed."); return(View()); } Mapper.Map <TeacherDetailsEditModel, Teacher>(teacherModel, teacher); Mapper.Map <AccountDetailsEditModel, ApplicationUser>(teacherModel.AccountDetailsEditModel, teacher.ApplicationUser); List <string> validImageTypes = new List <string>() { "image/gif", "image/jpeg", "image/pjpeg", "image/png" }; if (teacherModel.AccountDetailsEditModel.ImageUpload != null && !validImageTypes.Contains(teacherModel.AccountDetailsEditModel.ImageUpload.ContentType)) { ModelState.AddModelError("", "Please choose either a GIF, JPG or PNG image."); return(View(teacherModel)); } var uploadDirectory = GlobalConstants.TeachersProfileImagesUploadDirectory; teacherModel.UploadProfilePhoto(uploadDirectory); if (teacherModel.AccountDetailsEditModel.ImageUpload == null || teacherModel.AccountDetailsEditModel.ImageUpload.ContentLength == 0) { teacher.ApplicationUser.ImageUrl = GlobalConstants.DefaultProfileImageUrl; } else { teacher.ApplicationUser.ImageUrl = teacherModel.AccountDetailsEditModel.ImageUrl; } this.teacherService.Update(teacher); return(RedirectToAction("Index", "Teachers")); }