public void SaveJournalistChanges(NewJournalistModel model) { var journalist = _db.journalist.FirstOrDefault(e => e.Id == model.Id); if (journalist == null) { throw new MyException(Errors.UserNotFound); } model.CopyTo(ref journalist); //editor.user.Password = StringTransformationProvider.Md5(model.Password); journalist.user.Email = StringTransformationProvider.TransformEmail(model.Email); journalist.user.Deleted = model.Deleted; //сохранение новых прав _db.country_permission.RemoveRange(journalist.user.country_permission); _db.city_permission.RemoveRange(journalist.user.city_permission); //_db.region_permission.RemoveRange(journalist.user.region_permission); _db.country_permission.AddRange( model.PermittedCountries.Select(c => new country_permission { CountryId = c, UserId = journalist.UserId })); _db.city_permission.AddRange( model.PermittedCities.Select(c => new city_permission { CityId = c, UserId = journalist.UserId })); // _db.region_permission.AddRange( // model.PermittedRegions.Select(c => new region_permission { RegionId = c, UserId = journalist.UserId })); _db.SaveChanges(); }
public ActionResult _JournalistInformationPartial(int journalistId) { var repo = DependencyResolver.Current.GetService <IRepository>(); var model = new NewJournalistModel(repo.GetJournalist(journalistId)); ViewBag.Countries = repo.GetCountries().Where(i => i.Id != 0).ToList(); // ViewBag.Regions = repo.GetRegions(); ViewBag.Cities = repo.GetCities().Where(i => i.Id != 0).ToList(); ViewBag.Editors = repo.GetEditors(); return(PartialView("Partial/_JournalistInformationPartial", model)); }
public ActionResult _NewJournalistPartial() { var model = new NewJournalistModel(); var repo = DependencyResolver.Current.GetService <IRepository>(); ViewBag.Countries = repo.GetCountries().Where(i => i.Id != 0).ToList(); // ViewBag.Regions = repo.GetRegions(); ViewBag.Cities = repo.GetCities().Where(i => i.Id != 0).ToList(); ViewBag.Editors = repo.GetEditors(); ViewBag.User = repo.GetUserByGuid(HttpContext.User.Identity.Name); return(PartialView("Partial/_NewJournalistPartial", model)); }
public void AddNewJournalist(NewJournalistModel model) { model.Email = StringTransformationProvider.TransformEmail(model.Email); if (_db.user.Any(u => u.Email == model.Email)) { throw new MyException(Errors.UserExists); } var trans = _db.Database.BeginTransaction(); try { var newUser = new user { Guid = Guid.NewGuid().ToString(), Password = StringTransformationProvider.Md5(model.Password), Email = model.Email, UserTypeId = GetUserTypeByTag(UserTypes.Journalist), Deleted = model.Deleted }; _db.user.Add(newUser); _db.SaveChanges(); var newEditor = new journalist(); model.CopyTo(ref newEditor); newEditor.UserId = newUser.Id; _db.journalist.Add(newEditor); _db.country_permission.AddRange( model.PermittedCountries.Select(c => new country_permission { CountryId = c, UserId = newUser.Id })); _db.city_permission.AddRange( model.PermittedCities.Select(c => new city_permission { CityId = c, UserId = newUser.Id })); // _db.region_permission.AddRange( // model.PermittedRegions.Select(c => new region_permission {RegionId = c, UserId = newUser.Id})); _db.SaveChanges(); trans.Commit(); } catch (Exception) { trans.Rollback(); throw; } }
public ActionResult EditJournalist(NewJournalistModel model) { var repo = DependencyResolver.Current.GetService <IRepository>(); try { //model.Password = StringTransformationProvider.GeneratePassword(); repo.SaveJournalistChanges(model); //MailProvider.SendMailWithCredintails(model.Password,model.FirstName,model.MiddleName,model.Email); } catch (MyException e) { return(new JsonResult { JsonRequestBehavior = JsonRequestBehavior.DenyGet, Data = new { success = false, errorReason = e.Error.Message } }); } return(new JsonResult { JsonRequestBehavior = JsonRequestBehavior.DenyGet, Data = new { success = true } }); }