public ActionResult RegisterTutor() { Data data = new Data(); RegisterTutorViewModel model = new RegisterTutorViewModel(); var departments = _dbContext.Departments.ToList(); model.Departments = departments; model.Years = _dbContext.Years.ToList(); var classes = new List <CheckBoxListItem>(); var areas = new List <CheckBoxListItem>(); foreach (var item in data.Classes) { classes.Add(new CheckBoxListItem() { Value = item, Text = item, IsChecked = false }); } foreach (var item in data.Areas) { areas.Add(new CheckBoxListItem() { Value = item, Text = item, IsChecked = false }); } model.Classes = classes; model.Areas = areas; return(View(model)); }
public ActionResult RegisterTutor(RegisterTutorViewModel model, HttpPostedFileBase file) { if (ModelState.IsValid) { string fileName = ""; if (file != null && file.ContentLength > 0) { if (file.ContentType.Contains("image")) { fileName = DateTime.Now.ToString("yyyy-MM-dd-HH-mm-ss") + ".png"; file.SaveAs(HttpContext.Server.MapPath("~/Content/UserImage/") + fileName); } else { ModelState.AddModelError("ImagePath", "Unsupported image format"); } } var user = new ApplicationUser(); user.UserName = model.PhoneNumber; user.PhoneNumber = model.PhoneNumber; user.PhoneNumberConfirmed = true; var result = UserManager.Create(user, model.Password); if (result.Succeeded) { UserManager.AddToRole(user.Id, "Tutor"); TutorProfile tutor = new TutorProfile(); tutor.AdmissionSession = model.AdmissionSession; tutor.CurrentYear = model.CurrentYear; tutor.Department = model.Department; tutor.ExpectedSalaryRange = model.ExpectedSalaryRange; tutor.Hall = model.Hall; tutor.ImagePath = fileName; tutor.Name = model.Name; tutor.ParmanentAddress = model.PermanentAddress; tutor.PhoneNumber = model.PhoneNumber; tutor.PresentAddress = model.PresentAddress; tutor.RegistrationNo = model.RegistrationNo; tutor.UserId = user.Id; tutor.InterestedSubject = model.InterestedSubjects; string classes = ""; foreach (var item in model.Classes) { if (item.IsChecked) { classes = classes + item.Value + ","; } } tutor.InterestedClass = classes; string areas = ""; foreach (var item in model.Areas) { if (item.IsChecked) { areas = areas + item.Value + ","; } } tutor.InterestedArea = areas; _dbContext.TutorProfiles.Add(tutor); _dbContext.SaveChanges(); SignInManager.SignIn(user, isPersistent: false, rememberBrowser: false); string msg = ""; return(RedirectToAction("Index", "Tutor", new { message = msg })); } AddErrors(result); } return(View(model)); }