Пример #1
0
        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" }));
            }
        }
Пример #2
0
        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;
    }
Пример #4
0
        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);
            }
        }
Пример #5
0
        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 }
            });
        }
Пример #6
0
        public ActionResult _NewAdminModalPartial()
        {
            var model = new NewAdminModel();

            return(PartialView("Partial/_NewAdminModalPartial", model));
        }