public ActionResult BecomePerformer(BecomePerformerViewModel model, int[] selectedCategories, HttpPostedFileBase loadImage) { if ((bool)Session["isPerformer"] && (bool)Session["adminStatus"]) { return(View("~/Views/Error/Forbidden.cshtml")); } if (!ModelState.IsValid) { return(View(model)); } if (selectedCategories == null) { ModelState.AddModelError("", "At least one category is required"); GetCategoriesList(); return(View(model)); } PictureViewModelBLL picture = null; if (!ReferenceEquals(loadImage, null)) { byte[] image; using (var binaryReader = new BinaryReader(loadImage.InputStream)) { image = binaryReader.ReadBytes(loadImage.ContentLength); } picture = new PictureViewModelBLL { Image = image }; _pictureService.Create(image); _unitOfWork.Save(); } ClientViewModelBLL client = _userService.FindById(User.Identity.GetUserId <int>()); Mapper.Initialize(cfg => cfg.CreateMap <BecomePerformerViewModel, ClientViewModelBLL>() .ForMember("RegistrationDate", opt => opt.MapFrom(c => DateTime.Today)) .ForMember("IsPerformer", opt => opt.MapFrom(c => true)) .ForMember("AdminStatus", opt => opt.MapFrom(c => false)) .ForMember("Rating", opt => opt.MapFrom(c => 0)) .ForMember("PictureId", opt => opt.MapFrom(c => _pictureService.FindByBytes(picture.Image).Value)) ); Mapper.Map(model, client); _userService.Update(client, selectedCategories); _unitOfWork.Save(); return(RedirectToAction("Index")); }
public ActionResult BecomePerformer(string message = "", string company = "", string info = "", string phoneNumber = "") { if ((bool)Session["isPerformer"] && (bool)Session["adminStatus"]) { return(View("~/Views/Error/Forbidden.cshtml")); } GetCategoriesList(); var model = new BecomePerformerViewModel { Company = company, Info = info, PhoneNumber = phoneNumber }; ViewBag.DefaultPath = $"data: image/png; base64, {Convert.ToBase64String(System.IO.File.ReadAllBytes(Server.MapPath(DefaultImageName)))}"; return(View("BecomePerformer", model)); }