public BsJsonResult GetReadonlyContent(ProfilePanelComponentsEnum componentId) { var html = string.Empty; var msg = string.Empty; var status = BsResponseStatus.Success; try { ApplicationUser user = UserManager.FindById(User.Identity.GetUserId()); ProfileVm vm = Mapper.Map <ApplicationUser, ProfileVm>(user); switch (componentId) { case ProfilePanelComponentsEnum.UserProfile: html = this.BsRenderPartialView("Readonly/_UserProfile", vm.UserProfile); break; case ProfilePanelComponentsEnum.UserData: html = this.BsRenderPartialView("Readonly/_UserData", vm.UserData); break; } } catch (Exception ex) { msg = ex.Message; status = BsResponseStatus.ServerError; } return(new BsJsonResult(new { Html = html }, status, msg)); }
[NoAntiForgeryCheck] //??? public BsJsonResult SetContent(EditableProfileVm model, ProfilePanelComponentsEnum componentId) { var html = string.Empty; var status = BsResponseStatus.Success; var msg = string.Empty; UserDataVm userDataVm = null; switch (componentId) { case ProfilePanelComponentsEnum.UserData: ModelState.ClearModelState(model.GetPropertyName(m => m.UserData) + "."); break; } try { if (ModelState.IsValid) { ApplicationUser user = UserManager.FindById(User.Identity.GetUserId()); switch (componentId) { case ProfilePanelComponentsEnum.UserData: user = Mapper.Map(model.UserData, user); UserManager.Update(user); userDataVm = Mapper.Map <ApplicationUser, UserDataVm>(user); html = this.BsRenderPartialView("Readonly/_UserData", userDataVm); break; } } else { //JSON serialize ModelState errors return(new BsJsonResult( new Dictionary <string, object> { { "Errors", ModelState.GetErrors() } }, BsResponseStatus.ValidationError)); } } catch (Exception ex) { msg = "<strong>" + Resources.Resources.Error_Server + "!</strong> " + ex.Message; status = BsResponseStatus.ServerError; } return(new BsJsonResult(new { Html = html, Profile = userDataVm }, status, msg)); }
public BsJsonResult GetEditableContent(ProfilePanelComponentsEnum componentId) { var html = string.Empty; ApplicationUser user = UserManager.FindById(User.Identity.GetUserId()); EditableProfileVm vm = Mapper.Map <ApplicationUser, EditableProfileVm>(user); switch (componentId) { case ProfilePanelComponentsEnum.UserData: html = this.BsRenderPartialView("Editable/_UserData", vm.UserData, vm.GetPropertyName(x => x.UserData)); break; } return(new BsJsonResult(new { Html = html })); }