Example #1
0
        public async Task <ActionResult> UpdateChild(string id, [FromBody] AdminEditUser model)
        {
            if (!ModelState.IsValid)
            {
                _logger.LogError("ERROR: AdminController UpdateChild model state as an admin is invalid");
            }

            var role = User.FindFirst(ClaimTypes.Role)?.Value;

            if (role == ApplicationRole.ADMIN)
            {
                var user = await _userManager.FindByIdAsync(id);

                if (user != null)
                {
                    user.Email      = model.Email;
                    user.FirstName  = model.FirstName;
                    user.LastName   = model.LastName;
                    user.BirthDate  = DateTime.Parse(model.BirthDate);
                    user.Street     = model.Street;
                    user.City       = model.City;
                    user.Province   = model.Province;
                    user.PostalCode = model.PostalCode;
                    user.Country    = model.Country;
                    user.Latitude   = model.Latitude;
                    user.Longitude  = model.Longitude;
                    user.UserName   = model.FirstName.ToLower();
                    user.IsNaugthy  = model.IsNaugthy;

                    var result = await _userManager.UpdateAsync(user);

                    if (result.Succeeded)
                    {
                        return(Ok());
                    }
                    else
                    {
                        return(BadRequest());
                    }
                }
                else
                {
                    return(NotFound());
                }
            }
            else
            {
                return(Unauthorized());
            }
        }
Example #2
0
        public async Task <ActionResult> Profile()
        {
            string email = User.FindFirst(ClaimTypes.NameIdentifier)?.Value;

            ApplicationUser user = await _userManager.FindByEmailAsync(email);

            if (user != null)
            {
                AdminEditUser temp = AdminEditUser.Transform(user);
                return(Ok(temp));
            }
            else
            {
                return(NotFound());
            }
        }
Example #3
0
        public async Task <ActionResult> Profile([FromBody] AdminEditUser model)
        {
            if (!ModelState.IsValid)
            {
                _logger.LogError("ERROR: update profile model state is invalid");
            }

            string email = User.FindFirst(ClaimTypes.NameIdentifier)?.Value;

            var user = await _userManager.FindByEmailAsync(email);

            if (user != null)
            {
                user.Email      = model.Email;
                user.FirstName  = model.FirstName;
                user.LastName   = model.LastName;
                user.BirthDate  = DateTime.Parse(model.BirthDate);
                user.Street     = model.Street;
                user.City       = model.City;
                user.Province   = model.Province;
                user.PostalCode = model.PostalCode;
                user.Country    = model.Country;
                user.Latitude   = model.Latitude;
                user.Longitude  = model.Longitude;
                user.UserName   = model.FirstName.ToLower();
                user.IsNaugthy  = model.IsNaugthy;

                var result = await _userManager.UpdateAsync(user);

                if (result.Succeeded)
                {
                    return(Ok());
                }
                else
                {
                    return(BadRequest());
                }
            }
            else
            {
                return(NotFound());
            }
        }
        public ActionResult EditUser(AdminEditUser user)
        {
            if (ModelState.IsValid)
            {
                string id;
                string IsActiv;
                if (user.UserRoles != null && user.UserRoles.Length > 0)
                {
                    foreach (var i in user.UserRoles)
                    {
                        id      = i.Substring(i.IndexOf("-") + 1);
                        IsActiv = i.Substring(0, i.Length - id.Length - 1);

                        if (IsActiv == "Activ")
                        {
                            var item = db.UserRoles.FirstOrDefault(f => f.UserDbId == user.Id && f.RoleId.ToString() == id);
                            if (item == null)
                            {
                                db.UserRoles.Add(new UserRole()
                                {
                                    UserDbId = user.Id, RoleId = int.Parse(id)
                                });
                            }
                        }
                        else
                        {
                            var item = db.UserRoles.FirstOrDefault(f => f.Id.ToString() == id);
                            if (item != null)
                            {
                                db.UserRoles.Remove(item);
                            }
                        }
                    }
                }
            }
            db.SaveChanges();
            return(RedirectToAction("UsersIndex"));
        }
Example #5
0
        public async Task <ActionResult> GetChild(string id)
        {
            string role = User.FindFirst(ClaimTypes.Role)?.Value;

            if (role == ApplicationRole.ADMIN)
            {
                ApplicationUser user = await _userManager.FindByIdAsync(id);

                if (user != null)
                {
                    AdminEditUser temp = AdminEditUser.Transform(user);
                    return(Ok(temp));
                }
                else
                {
                    return(NotFound());
                }
            }
            else
            {
                return(Unauthorized());
            }
        }
Example #6
0
        public ActionResult Edit(AdminEditUser editedUser)
        {
            if (!unitOfWork.UserService.IsExistUserByUserName(editedUser.UserName, editedUser.CurrentUserName))
            {
                if (!unitOfWork.UserService.IsExistUserByEmail(editedUser.Email, editedUser.CurrentEmail))
                {
                    var user = unitOfWork.UserService.GetUserByUserId(editedUser.UserId);
                    user.IsActive = editedUser.IsActive;
                    user.UserName = editedUser.UserName;
                    user.Email    = editedUser.Email;
                    unitOfWork.UserService.UpdateUser(user);
                    unitOfWork.save();
                    return(RedirectToAction("Index"));
                }

                ModelState.AddModelError("Email", "ایمیل استفاده شده تکراری میباشد");
            }
            else
            {
                ModelState.AddModelError("UserName", "نام کاربری استفاده شده تکراری میباشد");
            }

            return(View(editedUser));
        }
Example #7
0
#pragma warning disable CS1998 // Async method lacks 'await' operators and will run synchronously
        public async Task <ActionResult> List()
        {
#pragma warning restore CS1998 // Async method lacks 'await' operators and will run synchronously

            string role = User.FindFirst(ClaimTypes.Role)?.Value;

            if (role == ApplicationRole.ADMIN)
            {
                List <ApplicationUser> users = _context.Users.ToList();
                List <AdminEditUser>   list  = new List <AdminEditUser>();

                foreach (ApplicationUser user in users)
                {
                    AdminEditUser temp = AdminEditUser.Transform(user);
                    list.Add(temp);
                }

                return(Ok(list));
            }
            else
            {
                return(Unauthorized());
            }
        }