public async Task <IActionResult> GiveUserAdminRights(NewAdminModel newAdminModel) { using (var transaction = _dbContext.Database.BeginTransaction()) { var userExists = await userManager.FindByEmailAsync(newAdminModel.email); if (userExists == null) { return(Ok(new { message = "User with given email does not exist!" })); } if (userExists.Role == UserRole.SystemAdmin) { return(Ok(new { message = "User with given email is already admin!" })); } userExists.Role = UserRole.SystemAdmin; IdentityResult result = await userManager.UpdateAsync(userExists); transaction.Commit(); return(Ok(new { message = $"User with email {newAdminModel.email} is now admin" })); } }
public void AddNewAdmin(NewAdminModel 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.Admin), Deleted = false }; _db.user.Add(newUser); _db.SaveChanges(); var admin = new admin(); model.CopyTo(ref admin); admin.UserId = newUser.Id; _db.admin.Add(admin); _db.SaveChanges(); trans.Commit(); } catch (Exception) { trans.Rollback(); throw; } }
protected void btn_newAdmin_Click(object sender, EventArgs e) { LibraryDAL dal = new LibraryDAL(); NewAdminModel model = new NewAdminModel(); model.AdminName = txt_Adminname.Text; model.AdminEmailId = txt_Adminemailid.Text; model.AdminPassword = txt_Adminpassword.Text; model.AdminMobileNo = txt_AdminMobileNo.Text; }
public IActionResult NewAdmin(NewAdminModel model) { try { if (ModelState.IsValid) { var adm = new Admin(); adm.Id = model.Id; adm.name = model.name; adm.password = model.password; _users.addAdmin(adm); return(Redirect("/")); } return(View(model)); } catch (Exception ex) { throw new Exception(ex.Message); } }
public ActionResult AddNewAdmin(NewAdminModel model) { var repo = DependencyResolver.Current.GetService <IRepository>(); try { model.Password = StringTransformationProvider.GeneratePassword(); repo.AddNewAdmin(model); MailProvider.SendMailWithCredintails(model.Password, "Администратор", "", 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 } }); }
public ActionResult _NewAdminModalPartial() { var model = new NewAdminModel(); return(PartialView("Partial/_NewAdminModalPartial", model)); }