public async Task <ActionResult> RegisterLecturer(LecturerRegisterModel model) { if (ModelState.IsValid) { ApplicationUser user = new Domain.Core.Lecturer() { BirthDate = model.BirthDate, FirstName = model.FirstName, MiddleName = model.MiddleName, LastName = model.LastName, Gender = model.Gender, PhoneNumber = model.Phone, UserName = model.Login, Department = model.Department, Email = model.Email }; IdentityResult result = await UserManager.CreateAsync(user, model.Password); if (result.Succeeded) { UserManager.AddToRole(user.Id, "teacher"); _logger.Info("Method RegisterLecturer(Post). Lecturer was succes registered."); return(RedirectToAction("LecturerList")); } foreach (string error in result.Errors) { ModelState.AddModelError("", error); _logger.Error("RegisterLecturer method of controller Admin: Error creating a user.", error); } } return(View(model)); }
/// <summary> /// View info about lecturer. /// </summary> public ActionResult Index() { Domain.Core.Lecturer user = (Domain.Core.Lecturer)UserManager.FindByNameAsync(User.Identity.Name).Result; if (user != null) { return(View(user)); } _logger.Warn("Index method of controller Lecturer: user=null, user received HttpUnauthorizedResult"); return(HttpNotFound()); }
/// <returns>All courses from db.</returns> public ActionResult CourseList() { Domain.Core.Lecturer user = (Domain.Core.Lecturer)UserManager.FindByNameAsync(User.Identity.Name).Result; if (user != null) { var courses = _courseRepository.GetAll().ToList(); courses = courses.Where(course => course.Lecturer.IfNotNull(l => l.UserName.Equals(user.UserName))) .ToList(); if (courses.Count != 0) { return(PartialView(courses)); } return(new ContentResult { Content = "<p>You are not assigned to any course.</p>" }); } _logger.Warn("CourseList method of controller Lecturer: user=null, user received HttpUnauthorizedResult"); return(HttpNotFound()); }