Ejemplo n.º 1
0
        public void UpdateUserData(EditUserBM userBM, bool isAdmin)
        {
            var user = this.Context.Users.Find(userBM.Id);

            if (user == null)
            {
                throw new ArgumentException("Not found edited user in database!");
            }

            user.Address     = userBM.Address;
            user.PhoneNumber = userBM.PhoneNumber;
            user.Name        = userBM.Name;
            if (isAdmin)
            {
                var oldRoles = this.GetRoleNames(user.Roles.Select(ur => ur.RoleId).ToList());

                foreach (var role in oldRoles)
                {
                    if (!userBM.Roles.Contains(role))
                    {
                        this.Context.UserManager.RemoveFromRole(user.Id, role);
                    }
                }


                if (!string.IsNullOrEmpty(userBM.NewRole) &&
                    this.Context.Roles.All().Any(r => r.Name.Equals(userBM.NewRole)) &&
                    !userBM.Roles.Contains(userBM.NewRole))
                {
                    this.Context.UserManager.AddToRole(userBM.Id, userBM.NewRole);
                }
            }

            this.Context.SaveChanges();
        }
Ejemplo n.º 2
0
        public void EditUser(EditUserBM bm, string userName)
        {
            ApplicationUser user = this.Context.Users.FirstOrDefault(u => u.UserName == userName);

            user.FirstName   = bm.FirstName;
            user.LastName    = bm.LastName;
            user.Email       = bm.Email;
            user.PhoneNumber = bm.PhoneNumber;
            this.Context.SaveChanges();
        }
Ejemplo n.º 3
0
        public void EditUser(EditUserBM bind, string userName)
        {
            ApplicationUser user = this.Context.Users.FirstOrDefault(u => u.UserName == bind.UserName);

            user.Name     = bind.Name;
            user.Surname  = bind.Surname;
            user.Skype    = bind.Skype;
            user.Facebook = bind.Facebook;
            user.Details  = bind.Details;

            this.Context.SaveChanges();
        }
Ejemplo n.º 4
0
        public ActionResult Edit(EditUserBM bm)
        {
            string userName = this.User.Identity.Name;

            if (this.ModelState.IsValid)
            {
                this.service.EditUser(bm, userName);
                return(this.RedirectToAction("Profile"));
            }

            EditUserVM vm = this.service.GetEditVM(userName);

            return(this.View(vm));
        }
Ejemplo n.º 5
0
        public void Edit_ShouldEditSuccessfully()
        {
            EditUserBM bm = new EditUserBM()
            {
                UserName = "******",
                Details  = "Edited",
                Name     = "Tester",
                Facebook = "test",
                Skype    = "test",
                Surname  = "test"
            };

            this._controller.Edit(bm);

            Assert.AreEqual("Edited", this._context.Users.FirstOrDefault(u => u.UserName == "Tester").Details);
        }
Ejemplo n.º 6
0
        public ActionResult Edit(EditUserBM userBM)
        {
            if (!this.ModelState.IsValid)
            {
                var userVM = Mapper.Map <EditUserVM>(userBM);
                return(this.View(userVM));
            }

            var isAdmin = this.User.IsInRole(Enum.GetName(typeof(AppRole), AppRole.Administrator));

            this.service.UpdateUserData(userBM, isAdmin);

            if (isAdmin)
            {
                return(this.RedirectToAction("All"));
            }

            return(this.RedirectToAction("Index", "Store", new { area = "" }));
        }
Ejemplo n.º 7
0
        public ActionResult Edit(EditUserBM bind)
        {
            string userName = User.Identity.Name;

            if (this.ModelState.IsValid)
            {
                if (userName == bind.UserName || User.IsInRole("Admin"))
                {
                    this.service.EditUser(bind, userName);
                    return(this.RedirectToAction("Profile"));
                }


                return(HttpNotFound());
            }

            EditUserVM vm = this.service.GetEditUserVm(userName);

            return(this.View(vm));
        }