public IActionResult DeleteTeacher(int id) { var teacher = _teachersService.GetById <TeacherInputModel>(id); var inputModel = new TeacherModifyInputModel { Id = id, Teacher = teacher }; return(View(inputModel)); }
public async Task <IActionResult> EditTeacher(int id) { var user = await _userManager.GetUserAsync(User); var isAdmin = await IsAdmin(); var schools = _schoolsServices.GetAllByUserId <SchoolViewModel>(user?.UniqueGradebookId, isAdmin); var teacher = _teachersService.GetById <TeacherInputModel>(id); var inputModel = new TeacherModifyInputModel { Id = id, Schools = schools.Select(s => new SelectListItem(s.Name, s.Id.ToString())).ToList(), Teacher = teacher }; return(View(inputModel)); }
public async Task <IActionResult> EditTeacher(TeacherModifyInputModel inputModel) { if (!ModelState.IsValid || inputModel.Teacher.SchoolId.IsNullOrEmpty()) { //ToDo: in case of null school/class, return appropriate message or add model validation? return(View(inputModel)); } try { await _teachersService.EditAsync(inputModel); return(RedirectToAction(nameof(Index))); } catch (Exception e) { _logger.LogError(e, $"An exception occured during teacher UPDATE operation for teacher with id {inputModel.Id}. Ex: {e.Message}"); return(RedirectToAction("Error", "Home")); } }
public async Task EditAsync(TeacherModifyInputModel modifiedModel) { var teacher = _teachersRepository.All().FirstOrDefault(s => s.Id == modifiedModel.Id); if (teacher != null) { var inputModel = modifiedModel.Teacher; teacher.FirstName = inputModel.FirstName; teacher.LastName = inputModel.LastName; var schoolId = int.Parse(inputModel.SchoolId); var school = _schoolsRepository.All().FirstOrDefault(s => s.Id == schoolId); if (school != null) { teacher.School = school; } _teachersRepository.Update(teacher); await _teachersRepository.SaveChangesAsync(); } }
public async Task <IActionResult> DeleteTeacher(TeacherModifyInputModel inputModel, string onSubmitAction) { if (onSubmitAction.IsNullOrEmpty() || onSubmitAction == "Cancel") { return(RedirectToAction(nameof(Index))); } if (!inputModel.Teacher.SchoolId.IsNullOrEmpty()) { return(View(inputModel)); } try { await _teachersService.DeleteAsync(inputModel.Id); return(RedirectToAction(nameof(Index))); } catch (Exception e) { _logger.LogError(e, $"An exception occured during teacher DELETE operation for teacher with id {inputModel.Id}. Ex: {e.Message}"); return(RedirectToAction("Error", "Home")); } }