Exemplo n.º 1
0
        public async Task<ActionResult> Edit(EditUserViewModel model)
        {
            var Db = new ApplicationDbContext();
            var user = Db.Users.First(u => u.UserName == model.UserName);
            if (ModelState.IsValid)
            {
                model.PhotoUrl = Utils.SavePhotoFileToDisk(model.Photo, this, user.PhotoUrl, model.IsNoPhotoChecked);
                user.PhotoUrl = model.PhotoUrl;

                // Update the user data:
                user.FirstName = model.FirstName;
                user.LastName = model.LastName;
                user.Email = model.Email;
                Db.Entry(user).State = System.Data.Entity.EntityState.Modified;
                await Db.SaveChangesAsync();

                if (HttpContext.User.IsInRole("Admin"))
                {
                    return RedirectToAction("Index");
                }
                else
                {
                    return RedirectToAction("Edit", new { id = user.UserName, Message = ManageMessageId.RegisterSuccess });
                }
            }
            model.PhotoUrl = user.PhotoUrl;
            // If we got this far, something failed, redisplay form
            return View(model);
        }
 public ActionResult Edit(string id, ManageMessageId? Message = null)
 {
     var Db = new ApplicationDbContext();
     var user = Db.Users.First(u => u.UserName == id);
     var model = new EditUserViewModel(user);
     ViewBag.MessageId = Message;
     return View(model);
 }
        public ActionResult EditUser(string name, ManageMessageId? Message = null)
        {
            var user = this.ApplicationDbContext.Users.First(u => u.UserName == name);
            var model = new EditUserViewModel(user);

            ViewBag.MessageId = Message;
            ViewBag.Title = "Edit User";

            return View(model);
        }
Exemplo n.º 4
0
        /// <summary>
        /// Saves the user.
        /// </summary>
        /// <param name="model">The model.</param>
        /// <returns>Json status result.</returns>
        public ActionResult SaveUser(EditUserViewModel model)
        {
            var response = GetCommand<SaveUserCommand>().ExecuteCommand(model);
            if (response != null)
            {
                Messages.AddSuccess(UsersGlobalization.SaveUser_CreatedSuccessfully_Message);
                return Json(new WireJson { Success = true, Data = response });
            }

            return Json(new WireJson { Success = false });
        }
 public ActionResult Delete(string id = null)
 {
     var Db = new ApplicationDbContext();
     var user = Db.Users.First(u => u.UserName == id);
     var model = new EditUserViewModel(user);
     if (user == null)
     {
         return HttpNotFound();
     }
     return View(model);
 }
Exemplo n.º 6
0
        public ActionResult Edit(string id, ManageMessageId? message = null)
        {
            ViewBag.StatusMessage =
            message == ManageMessageId.RegisterSuccess ? "Le compte a été modifié avec succés."
            : message == ManageMessageId.Error ? "Une erreur s'est produite."
            : "";

            var Db = new ApplicationDbContext();
            var user = Db.Users.First(u => u.UserName == id);
            var model = new EditUserViewModel(user);
            return View(model);
        }
Exemplo n.º 7
0
 /// <summary>
 /// Returns a view model to show all accounts.
 /// </summary>
 /// <returns></returns>
 public ActionResult Index()
 {
     var Db = new ApplicationDbContext();
     var users = Db.Users;
     var model = new List<EditUserViewModel>();
     foreach (var user in users)
     {
         var u = new EditUserViewModel(user);
         model.Add(u);
     }
     return View(model);
 }
Exemplo n.º 8
0
 public ActionResult Index()
 {
     //var users = UserManager.Users.Cast<List<EditUserViewModel>>().ToList();
     var db = new ApplicationDbContext();
     var users = db.Users;
     var model = new List<EditUserViewModel>();
     foreach (var user in users)
     {
         var u = new EditUserViewModel(user);
         model.Add(u);
     }
     return View(model);
 }
Exemplo n.º 9
0
        public async Task<IActionResult> EditUser(EditUserViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return View(viewModel);
            }

            //Skill associations
            var user = GetUser(viewModel.UserId);
            user.AssociatedSkills.RemoveAll(usk => viewModel.AssociatedSkills == null || !viewModel.AssociatedSkills.Any(msk => msk.SkillId == usk.SkillId));

            if (viewModel.AssociatedSkills != null)
            {
                user.AssociatedSkills.AddRange(viewModel.AssociatedSkills.Where(msk => !user.AssociatedSkills.Any(usk => usk.SkillId == msk.SkillId)));
            }

            if (user.AssociatedSkills != null && user.AssociatedSkills.Count > 0)
            {
                user.AssociatedSkills.ForEach(usk => usk.UserId = user.Id);
            }

            await _mediator.SendAsync(new UpdateUser { User = user });

            var organizationAdminClaim = new Claim(Security.ClaimTypes.UserType, "OrgAdmin");
            if (viewModel.IsOrganizationAdmin)
            {
                //add organization admin claim
                var result = await _userManager.AddClaimAsync(user, organizationAdminClaim);
                if (result.Succeeded)
                {
                    //mgmccarthy: there is no Login action method on the AdminController. The only login method I could find is on the AccountController. Not too sure what to do here
                    var callbackUrl = Url.Action(new UrlActionContext { Action = "Login", Controller = "Admin", Values = new { Email = user.Email }, Protocol = HttpContext.Request.Scheme });
                    await _mediator.SendAsync(new SendAccountApprovalEmail { Email = user.Email, CallbackUrl = callbackUrl });
                }
                else
                {
                    return Redirect("Error");
                }
            }
            else if (user.IsUserType(UserType.OrgAdmin))
            {
                //remove organization admin claim
                var result = await _userManager.RemoveClaimAsync(user, organizationAdminClaim);
                if (!result.Succeeded)
                {
                    return Redirect("Error");
                }
            }

            return RedirectToAction(nameof(Index));
        }
Exemplo n.º 10
0
        public ActionResult Index()
        {
            var companies = companyService.GetCompanies();
            var roles = roleService.GetRoles();
            EditUserViewModel editUser = new EditUserViewModel()
            {
                Roles = roles.ToList(),
                CompanyList = companies.ToList()
            };
            ViewData["companies"] = companies;
            ViewData["EditUser"] = editUser;
            return View();

        }
Exemplo n.º 11
0
        public ActionResult Edit(string id, ManageMessageId? Message = null)
        {
            var Db = new ApplicationDbContext();
            var user = Db.Users.First(u => u.UserName == id);
            var model = new EditUserViewModel(user);
            ViewBag.MessageId = Message;
            
            var userprefer = Db.UserPreferences.Where(a => a.UserName == id).Select(x=> new {x.SchoolRefID,x.AcademicYearRefID}).FirstOrDefault();
            
            ViewBag.SchoolID = new SelectList(Db.Schools.AsNoTracking().Select(x => new { x.SchoolID, x.SchoolName }), "SchoolID", "SchoolName",userprefer.SchoolRefID);
            ViewBag.AcademicYearID = new SelectList(Db.AcademicYears.AsNoTracking().Where(a => a.SchoolRefID ==userprefer.SchoolRefID).Select(x => new { x.AcademicYearID, x.DisplayYear }), "AcademicYearID", "DisplayYear",userprefer.AcademicYearRefID);

            return View(model);
        }
 public async Task<ActionResult> Edit(EditUserViewModel model)
 {
     if (ModelState.IsValid)
     {
         var Db = new ApplicationDbContext();
         var user = Db.Users.First(u => u.UserName == model.UserName);
         // Update the user data:
         user.FirstName = model.FirstName;
         user.LastName = model.LastName;
         user.Email = model.Email;
         Db.Entry(user).State = System.Data.Entity.EntityState.Modified;
         await Db.SaveChangesAsync();
         return RedirectToAction("Index");
     }
     // If we got this far, something failed, redisplay form
     return View(model);
 }
Exemplo n.º 13
0
        public IActionResult EditUser(string userId)
        {
            var user = GetUser(userId);
            var organizationId = user.GetOrganizationId();

            var viewModel = new EditUserViewModel
            {
                UserId = userId,
                UserName = user.UserName,
                AssociatedSkills = user.AssociatedSkills,
                IsOrganizationAdmin = user.IsUserType(UserType.OrgAdmin),
                IsSiteAdmin = user.IsUserType(UserType.SiteAdmin),
                Organization = organizationId != null ? _mediator.Send(new OrganizationByIdQuery { OrganizationId = organizationId.Value }) : null
            };

            return View(viewModel);
        }
Exemplo n.º 14
0
        public ActionResult Index(string sortOrder, string searchString)
        {
            ViewBag.UsernameSortParam = String.IsNullOrEmpty(sortOrder) ? "username_asc" : "";
            ViewBag.NameSortParam = sortOrder == "first_asc" ? "first_desc" : "first_asc";
            ViewBag.LastSortParam = sortOrder == "last_asc" ? "last_desc" : "last_asc";

            var db = new ApplicationDbContext();
            var users = from u in db.Users
                        where u.Status != ApplicationUser.AccountStatus.Disabled
                        select u;

            if (!String.IsNullOrEmpty(searchString))
            {
                users = users.Where(u => u.LastName.Contains(searchString)
                                       || u.FirstName.Contains(searchString)
                                       && u.Status != ApplicationUser.AccountStatus.Disabled);
            }
            switch (sortOrder)
            {
                case "username_asc":
                    users = users.OrderBy(u => u.UserName);
                    break;
                case "first_desc":
                    users = users.OrderByDescending(u => u.FirstName);
                    break;
                case "last_desc":
                    users = users.OrderByDescending(u => u.LastName);
                    break;
                case "first_asc":
                    users = users.OrderBy(u => u.FirstName);
                    break;
                case "last_asc":
                    users = users.OrderBy(u => u.LastName);
                    break;
            }

            var model = new System.Collections.Generic.List<EditUserViewModel>();

            foreach (var user in users)
            {
                var u = new EditUserViewModel(user);
                model.Add(u);
            }
            return View(model);
        }
        public async Task<ActionResult> EditUser(EditUserViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = this.ApplicationDbContext.Users.First(u => u.Id == model.Id);

                user.UserName = model.UserName;
                user.FirstName = model.FirstName;
                user.LastName = model.LastName;
                user.Email = model.Email;

                this.ApplicationDbContext.Entry(user).State = System.Data.Entity.EntityState.Modified;
                await this.ApplicationDbContext.SaveChangesAsync();

                return RedirectToAction("Index");
            }
            return View(model);
        }
Exemplo n.º 16
0
        public ActionResult Index(string userrole = null)
        {
            List<ApplicationUser> users;
            if (userrole != null)
            {
                users = _accountService.GetUsersByRole(userrole);
            }
            else
            {
                users = _accountService.GetAllUsers();
            }

            var model = new List<EditUserViewModel>();
            foreach (ApplicationUser user in users)
            {
                var u = new EditUserViewModel(user);
                model.Add(u);
            }
            return View(model);
        }
Exemplo n.º 17
0
        public async Task <IActionResult> EditUser(string userId)
        {
            User user = await _userManager.FindByIdAsync(userId);

            if (user == null)
            {
                return(NotFound());
            }
            EditUserViewModel model = new EditUserViewModel
            {
                Id               = userId,
                Email            = user.Email,
                Username         = user.UserName,
                FirstName        = user.FirstName,
                LastName         = user.LastName,
                NumderReadTicket = user.NumderReadTicket,
                PhoneNumber      = user.PhoneNumber,
                ProfilePicture   = user.ProfilePicture,
                GroupNumber      = user.GroupNumber
            };

            return(View(model));
        }
Exemplo n.º 18
0
        public async Task <IActionResult> Edit(string id)
        {
            User user = await _userManager.FindByIdAsync(id);

            if (user == null)
            {
                return(NotFound());
            }
            EditUserViewModel model = new EditUserViewModel
            {
                Id          = user.Id,
                Email       = user.Email,
                PhoneNumber = user.PhoneNumber,
                FirstName   = user.FirstName,
                MiddleName  = user.MiddleName,
                LastName    = user.LastName,
                Gender      = user.Gender,
                TaxId       = user.TaxId,
                BirthDate   = user.BirthDate
            };

            return(View(model));
        }
        public async Task <IActionResult> EditUser(EditUserViewModel editUserViewModel)
        {
            var user = await userManager.FindByIdAsync(editUserViewModel.Id);

            if (user != null)
            {
                user.Email    = editUserViewModel.Email;
                user.UserName = editUserViewModel.UserName;


                var result = await userManager.UpdateAsync(user);

                if (result.Succeeded)
                {
                    return(RedirectToAction("Index"));
                }

                ModelState.AddModelError("", "User not updated, something went wrong.");
                return(View(editUserViewModel));
            }

            return(RedirectToAction("Index"));
        }
Exemplo n.º 20
0
        public async Task <IActionResult> ChangeUser()
        {
            var owner = await _dataContext.Owners
                        .Include(o => o.User)
                        .FirstOrDefaultAsync(o => o.User.UserName.ToLower() == (User.Identity.Name.ToLower()));

            if (owner == null)
            {
                return(NotFound());
            }

            var view = new EditUserViewModel
            {
                Address     = owner.User.Address,
                Document    = owner.User.Document,
                FirstName   = owner.User.FirstName,
                Id          = owner.Id,
                LastName    = owner.User.LastName,
                PhoneNumber = owner.User.PhoneNumber
            };

            return(View(view));
        }
Exemplo n.º 21
0
        public IActionResult EditUser(int id)
        {
            User user = context.Users.FirstOrDefault(u => u.Id == id);

            if (user == null)
            {
                return(NotFound());
            }

            EditUserViewModel editUserViewModel = new EditUserViewModel
            {
                Id              = user.Id,
                FirstName       = user.FirstName,
                LastName        = user.LastName,
                Email           = user.Email,
                Username        = user.Username,
                Password        = user.Password,
                ConfirmPassword = user.ConfirmPassword,
                Role            = user.Role
            };

            return(this.View(editUserViewModel));
        }
Exemplo n.º 22
0
        public ActionResult Update([DataSourceRequest]DataSourceRequest request, EditUserViewModel user)
        {
            if (!ModelState.IsValid)
            {
                return this.View();
            }

            var currentUser = this.UserService.GetById(user.Id)
                                              .FirstOrDefault();

            if (currentUser == null)
            {
                return this.View();
            }

            currentUser.FirstName = user.FirstName;
            currentUser.LastName = user.LastName;
            currentUser.Email = user.Email;
            currentUser.UserName = user.UserName;

            this.UserService.UpdateUser(currentUser);
            return Json(new[] { user }.ToDataSourceResult(request, ModelState));
        }
Exemplo n.º 23
0
        public IActionResult EditUser(EditUserViewModel model)
        {
            int result = service.EditUser(model);

            if (result > 0)
            {
            }
            else
            {
                if (result == -1)
                {
                    ViewBag.Message = "Username or Email is already taken!";
                    return(View());
                }
                else if (result == -2)
                {
                    ViewBag.Message = "Role must be 'CEO', 'Team Lead', 'Developer' or 'Unassigned'!";
                    return(View());
                }
            }

            return(RedirectToAction("ViewCreatedUsers", "User"));
        }
Exemplo n.º 24
0
        public async Task <IActionResult> Edit(string id)
        {
            User user = await _userManager.FindByIdAsync(id);

            if (user == null)
            {
                return(NotFound());
            }
            EditUserViewModel model = new EditUserViewModel {
                Id   = user.Id,
                Name = user.Name,
                //Avatar = user.Avatar,
                UserName    = user.UserName,
                WebSite     = user.WebSite,
                AboutMe     = user.AboutMe,
                Email       = user.Email,
                PhoneNumber = user.PhoneNumber,
                Gender      = user.Gender,
                BirthDate   = user.BirthDate
            };

            return(View(model));
        }
        public async Task <IActionResult> EditUser(EditUserViewModel userViewModel)
        {
            var user = await _userManager.FindByIdAsync(userViewModel.Id);

            if (user != null)
            {
                user.Email     = userViewModel.Email;
                user.UserName  = userViewModel.Email;
                user.Country   = userViewModel.Country;
                user.City      = userViewModel.City;
                user.Birthdate = userViewModel.Birthdate;
                IdentityResult result = await _userManager.UpdateAsync(user);

                if (result.Succeeded)
                {
                    return(RedirectToAction("UserManagement", _userManager.Users));
                }
                ModelState.AddModelError("", "User not updated, something went wrong.");

                return(View(user));
            }
            return(RedirectToAction("UserManagement", _userManager.Users));
        }
Exemplo n.º 26
0
        public async Task <IActionResult> EditUser(Guid userId)
        {
            User user = await _websiteDB.Users.FirstOrDefaultAsync(u => u.Id == userId);

            if (user != null)
            {
                // Список ролей для выпадающего списка droplist на странице
                SelectList rolesList = new SelectList(_websiteDB.Roles.OrderByDescending(r => r.AccessLevel), "Id", "Name", user.RoleId);
                ViewBag.Roles = rolesList;

                EditUserViewModel model = new EditUserViewModel()
                {
                    UserId = user.Id,
                    Name   = user.Name,
                    Email  = user.Email,
                    RoleId = user.RoleId
                };

                return(View(model));
            }

            return(Redirect("/Main/PageNotFound"));
        }
Exemplo n.º 27
0
        public async Task <IActionResult> EditUser(EditUserViewModel model)
        {
            IdentityResource user = await _userManager.FindByIdAsync(model.Id);

            if (user != null)
            {
                user.UserName = model.UserName;
                user.Email    = model.Email;

                var result = await _userManager.UpdateAsync(user);

                if (result.Succeeded)
                {
                    return(RedirectToAction("UserManagement", _userManager.Users));
                }

                ModelState.AddModelError("", "User not updated, something went wrong");

                return(View(model));
            }

            return(RedirectToAction("UserManagement", _userManager.Users));
        }
Exemplo n.º 28
0
        public async Task <IActionResult> EditUser(EditUserViewModel model)
        {
            var user = await userManager.FindByIdAsync(model.Id);

            if (user == null)
            {
                ViewBag.ErrorMessage = $"No such role exist! Id = {model.Id}";
            }
            else
            {
                user.UserName = model.UserName;

                var result = userManager.UpdateAsync(user);

                if (result.IsCompleted)
                {
                    return(RedirectToAction("AllUsers"));
                }
            }


            return(View(model));
        }
Exemplo n.º 29
0
        public ActionResult Edit(string id)
        {
            if (string.IsNullOrWhiteSpace(id))
            {
                return(new HttpStatusCodeResult(System.Net.HttpStatusCode.BadRequest));
            }
            User user = UserManager.FindById(id);

            if (user == null)
            {
                return(HttpNotFound());
            }
            var editUserViewModel = new EditUserViewModel()
            {
                Email          = user.Email,
                UserName       = user.UserName,
                FBAccount      = user.FBAccount,
                TwitterAccount = user.TwitterAccount,
                EmailConfirmed = user.EmailConfirmed
            };

            return(View(editUserViewModel));
        }
Exemplo n.º 30
0
        public async Task <IActionResult> EditUser(string id)
        {
            EditUserViewModel model = new EditUserViewModel();

            model.ApplicationRoles = _roleManager.Roles.Select(r => new SelectListItem
            {
                Text  = r.Name,
                Value = r.Id
            }).ToList();

            if (!String.IsNullOrEmpty(id))
            {
                ApplicationUser user = await _userManager.FindByIdAsync(id);

                if (user != null)
                {
                    model.Name              = user.UserName;
                    model.Email             = user.Email;
                    model.ApplicationRoleId = _roleManager.Roles.Single(r => r.Name == _userManager.GetRolesAsync(user).Result.Single()).Id;
                }
            }
            return(PartialView("_EditUser", model));
        }
Exemplo n.º 31
0
        public ActionResult Edit(EditUserViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                ApplicationUser u = users.FindById(viewModel.ID);
                u.DateOfBirth  = viewModel.DateOfBirth;
                u.DepartmentId = viewModel.DepartmentId;
                u.Email        = viewModel.Email;
                u.Name         = viewModel.Name;
                u.Address      = viewModel.Address;
                u.PhoneNumber  = viewModel.PhoneNumber;
                u.UserName     = viewModel.UserName;
                var deletedRoles = users.GetRoles(u.Id);
                users.RemoveFromRoles(u.Id, deletedRoles.ToArray());
                users.AddToRole(u.Id, viewModel.RoleId);
                context.Entry(u).State = System.Data.Entity.EntityState.Modified;
                context.SaveChanges();
                return(RedirectToAction("Index"));
            }

            InitialViewBags(viewModel.ID);
            return(View());
        }
        public async Task <IActionResult> EditUser(EditUserViewModel model)
        {
            var user = await userManager.FindByIdAsync(model.Id);

            if (user == null)
            {
                ViewBag.ErrorMessage = $"User with Id = {model.Id} cannot be found";
                return(View("NotFound"));
            }
            else
            {
                try
                {
                    user.Email    = model.Email;
                    user.UserName = model.UserName;

                    var result = await userManager.UpdateAsync(user);

                    if (result.Succeeded)
                    {
                        return(RedirectToAction("ListUsers"));
                    }

                    foreach (var error in result.Errors)
                    {
                        ModelState.AddModelError("", error.Description);
                    }

                    return(View(model));
                }
                catch (DbUpdateException ex)
                {
                    Logger.LogError($"Error updating user {ex}");
                    return(View("Error"));
                }
            }
        }
Exemplo n.º 33
0
        //
        // GET: /Users/Edit/1
        public async Task <ActionResult> Edit(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var user = await UserManager.FindByIdAsync(id);

            if (user == null)
            {
                return(HttpNotFound());
            }

            var userRoles = await UserManager.GetRolesAsync(user.Id);

            var currentCompany = new EditUserViewModel()
            {
                Id        = user.Id,
                Email     = user.Email,
                userName  = user.UserName,
                firstName = user.firstName,
                lastName  = user.lastName,

                RolesList = RoleManager.Roles.ToList().Select(x => new SelectListItem()
                {
                    Selected = userRoles.Contains(x.Name),
                    Text     = x.Name,
                    Value    = x.Name
                })
            };

            return(View(currentCompany)



                   );
        }
Exemplo n.º 34
0
        public ActionResult EditarCliente(EditUserViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            using (var db = new Pr1malRegistrosEntities())
            {
                var oCliente = db.RegistroClien.Find(model.Id);

                oCliente.Nombre = model.Nombre;
                //oCliente.Nacimiento = model.Nacimiento;
                //oCliente.Genero = model.Genero;
                //oCliente.Edad = model.Edad;
                oCliente.Celular   = model.Celular;
                oCliente.Direccion = model.Direccion;
                //oCliente.Registro = model.Registro;
                //oCliente.Nip = model.Nip;
                //oCliente.Email = model.Email;
                oCliente.Altura        = model.Altura;
                oCliente.Peso          = model.Peso;
                oCliente.Imc           = model.Imc;
                oCliente.Corporal      = model.Corporal;
                oCliente.Metabolismo   = model.Metabolismo;
                oCliente.Grasa         = model.Grasa;
                oCliente.Musculo       = model.Musculo;
                oCliente.Numero        = model.Numero;
                oCliente.Observaciones = model.Observaciones;

                db.Entry(oCliente).State = System.Data.Entity.EntityState.Modified;

                db.SaveChanges();
            }

            return(Redirect(Url.Content("~/Home/")));
        }
Exemplo n.º 35
0
        public async Task <ActionResult> Edit([Bind(Include = "Email,Id")] EditUserViewModel editUser, params string[] selectedRole)
        {
            if (ModelState.IsValid)
            {
                var user = await UserManager.FindByIdAsync(editUser.Id);

                if (user == null)
                {
                    return(HttpNotFound());
                }

                user.UserName = editUser.Email;
                user.Email    = editUser.Email;

                var userRoles = await UserManager.GetRolesAsync(user.Id);

                selectedRole = selectedRole ?? new string[] { };

                var result = await UserManager.AddToRolesAsync(user.Id, selectedRole.Except(userRoles).ToArray <string>());

                if (!result.Succeeded)
                {
                    ModelState.AddModelError("", result.Errors.First());
                    return(View());
                }
                result = await UserManager.RemoveFromRolesAsync(user.Id, userRoles.Except(selectedRole).ToArray <string>());

                if (!result.Succeeded)
                {
                    ModelState.AddModelError("", result.Errors.First());
                    return(View());
                }
                return(RedirectToAction("Index"));
            }
            ModelState.AddModelError("", "Something failed.");
            return(View());
        }
Exemplo n.º 36
0
        public async Task <IActionResult> EditUser(string id)
        {
            var user = await _userManager.FindByIdAsync(id);

            if (user == null)
            {
                return(RedirectToAction("UserManagement", _userManager.Users));
            }

            var claims = await _userManager.GetClaimsAsync(user);

            // var input = new EditUserViewModel.InputModel
            // {
            //     FirstName = user.FirstName,
            //     LastName = user.LastName,
            //     PhoneNumber = user.PhoneNumber
            // };
            var vm = new EditUserViewModel()
            {
                Input = new EditUserViewModel.InputModel
                {
                    FirstName   = user.FirstName,
                    LastName    = user.LastName,
                    PhoneNumber = user.PhoneNumber
                },
                Id         = user.Id,
                Email      = user.Email,
                UserName   = user.UserName,
                Birthdate  = user.Birthdate,
                State      = user.State,
                City       = user.City,
                UserClaims = claims.Select(c => c.Value).ToList()
            };
            var json = Json(vm);

            return(View(vm));
        }
Exemplo n.º 37
0
        public async Task <ActionResult> Edit(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var user = await UserManager.FindByIdAsync(id);

            if (user == null)
            {
                return(HttpNotFound());
            }

            // Display a list of available Groups:
            var allGroups  = this.GroupManager.Groups;
            var userGroups = await this.GroupManager.GetUserGroupsAsync(id);

            var model = new EditUserViewModel()
            {
                Id    = user.Id,
                Email = user.Email,
                Fname = user.Fname,
                Lname = user.Lname
            };

            foreach (var group in allGroups)
            {
                var listItem = new SelectListItem()
                {
                    Text     = group.Name,
                    Value    = group.Id,
                    Selected = userGroups.Any(g => g.Id == group.Id)
                };
                model.GroupsList.Add(listItem);
            }
            return(View(model));
        }
        public async Task <ActionResult> Edit([Bind(Include = "UserName,Id")] EditUserViewModel editUser, params string[] selectedRole)
        {
            if (ModelState.IsValid)
            {
                var user = await _userManager.FindByIdAsync(editUser.Id);

                if (user == null)
                {
                    return(HttpNotFound());
                }

                user.UserName = editUser.UserName;
                //user.Email = editUser.Email;

                var userRoles = await _userManager.GetRolesAsync(user.Id);

                selectedRole = selectedRole ?? new string[] { };

                var result = await _userManager.AddToRolesAsync(user.Id, selectedRole.Except(userRoles).ToArray());

                if (!result.Succeeded)
                {
                    ModelState.AddModelError("", result.Errors.First());
                    return(View());
                }
                result = await _userManager.RemoveFromRolesAsync(user.Id, userRoles.Except(selectedRole).ToArray());

                if (!result.Succeeded)
                {
                    ModelState.AddModelError("", result.Errors.First());
                    return(View());
                }
                return(Json(new { success = true }));
            }
            ModelState.AddModelError("", "خطا");
            return(PartialView(viewName: "Edit", model: editUser));
        }
Exemplo n.º 39
0
        public ActionResult Edit(EditUserViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                if (viewModel.CurrentUser)
                {
                    return(RedirectWithViewModel(viewModel, "edit"));
                }

                return(RedirectWithViewModel(viewModel, "edituser", routeValues: new { userId = viewModel.UserId }));
            }

            var result = _editUserCommand.Invoke(new EditUserRequest
            {
                FirstName     = viewModel.FirstName,
                LastName      = viewModel.LastName,
                Email         = viewModel.Email,
                UserId        = viewModel.UserId,
                CurrentUser   = Core.AppContext.CurrentUser,
                GroupIds      = viewModel.CurrentUser ? null : viewModel.Groups.Where(g => g.Selected).Select(g => g.Id.GetFriendlyId()).ToList(),
                Administrator = (!AppContext.CurrentUser.IsAdministrator() || viewModel.CurrentUser) ? null : (bool?)viewModel.IsAdministrator,
            });

            //if user has changed email, log them in again
            if (Core.AppContext.CurrentUser.FriendlyId == viewModel.UserId.GetFriendlyId() &&
                Core.AppContext.CurrentUser.Email.ToLowerInvariant() != viewModel.Email.ToLowerInvariant())
            {
                _authenticationManager.SignIn(viewModel.Email);
            }

            if (viewModel.CurrentUser)
            {
                return(RedirectWithViewModel(viewModel, "yourdetails", result.Status.MapToResource(Resources.Account.ResourceManager), result.Status != EditUserStatus.Ok));
            }

            return(RedirectWithViewModel(viewModel, "index", result.Status.MapToResource(Resources.Account.ResourceManager), result.Status != EditUserStatus.Ok, new { userId = viewModel.UserId }));
        }
Exemplo n.º 40
0
        public async Task <IActionResult> EditUser(string id)
        {
            //UserViewModel model = new UserViewModel
            //{
            //    ApplicationRoles = _roleManager.Roles.Select(r => new SelectListItem
            //    {
            //        Text = r.Name,
            //        Value = r.Id,
            //    }).ToList()
            //};
            //هردو روش یکی هستنداین روش و روش بالایی

            //اطالاعات کمبوباکس رااز دیتا بیس اوردیم
            EditUserViewModel model = new EditUserViewModel();

            model.ApplicationRoles = _roleManager.Roles.Select(r => new SelectListItem
            {
                Text  = r.Name,
                Value = r.Id,
            }).ToList();
            //String is a class & string is a data type
            ///////////////  اطلاعات کاربر انتخاب شده را اوردیم از دیتابیس ///////////////
            if (!String.IsNullOrEmpty(id))
            {
                ApplicationUser user = await _userManager.FindByIdAsync(id);

                if (user != null)
                {
                    model.FirstName = user.FirstName;
                    model.LastName  = user.LastName;
                    model.Email     = user.Email;
                    //برای نمایش نقش و رل کاربر انتخاب شده برای ویرایش در کمبو باکس
                    model.ApplicationReleId = _roleManager.Roles.Single(r => r.Name == _userManager.GetRolesAsync(user).Result.Single()).Id;
                }
            }
            return(PartialView("_EditUserPartial", model));
        }
        // GET: Administration/DeleteUser/5
        public async Task <IActionResult> DeleteUser(string id, bool?saveChangesError = false)
        {
            if (string.IsNullOrEmpty(id))
            {
                return(NotFound());
            }

            var user = await userManager.FindByIdAsync(id);

            if (user == null)
            {
                return(NotFound());
            }
            // GetClaimsAsync retunrs the list of user Claims
            var userClaims = await userManager.GetClaimsAsync(user);

            // GetRolesAsync returns the list of user Roles
            var userRoles = await userManager.GetRolesAsync(user);

            var model = new EditUserViewModel
            {
                Id       = user.Id,
                Email    = user.Email,
                UserName = user.UserName,
                Claims   = userClaims.Select(c => c.Value).ToList(),
                Roles    = userRoles
            };

            if (saveChangesError.GetValueOrDefault())
            {
                ModelState.AddModelError("",
                                         "Delete failed. Try again, and if the problem persists " +
                                         "see your system administrator.");
            }

            return(View(model));
        }
Exemplo n.º 42
0
        //
        // GET: /Users/Edit/1
        public async Task <ActionResult> Edit(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var user = await UserManager.FindByIdAsync(id);

            if (user == null)
            {
                return(HttpNotFound());
            }

            var userRoles = await UserManager.GetRolesAsync(user.Id);

            var rlist = RoleManager.Roles.ToList().Select(x => new SelectListItem()
            {
                Selected = userRoles.Contains(x.Name),
                Text     = x.Name,
                Value    = x.Name
            });

            var editModel = new EditUserViewModel(user.Id)
            {
                Id        = user.Id,
                Email     = user.Email,
                wNumber   = user.wNumber,
                RolesList = RoleManager.Roles.ToList().Select(x => new SelectListItem()
                {
                    Selected = userRoles.Contains(x.Name),
                    Text     = x.Name,
                    Value    = x.Name
                })
            };

            return(View(editModel));
        }
Exemplo n.º 43
0
        //
        // GET: /Users/Details/5
        public ActionResult Details(string id)
        {
            try {
                var user = UserManager.FindById(id);
                if (user == null)
                {
                    return(HttpNotFound());
                }

                var userRoles = UserManager.GetRoles(user.Id);

                EditUserViewModel usuario = new EditUserViewModel();

                usuario.UserName = user.Email.Substring(0, user.Email.Length - 17);
                usuario.Id       = user.Id;
                usuario.Email    = user.Email != null ? user.Email : "";
                usuario.Nombre   = user.Nombre != null ? user.Nombre : "";
                usuario.aPaterno = user.aPaterno != null ? user.aPaterno : "";
                usuario.aMaterno = user.aMaterno != null ? user.aMaterno : "";
                usuario.Zona     = user.Zona;
                usuario.Rol      = UserManager.GetRoles(user.Id).FirstOrDefault();

                SISECOOBEntities db = new SISECOOBEntities();

                ViewBag.Zonas = db.Zonas.Select(i => new { id = i.ZonaID, nombre = i.Nombre }).ToList();
                ViewBag.Roles = RoleManager.Roles.Select(i => new
                {
                    nombre = i.Name
                }).ToList();

                return(PartialView("_Details", usuario));
            }
            catch (Exception e)
            {
                throw e;
            }
        }
Exemplo n.º 44
0
        public async Task <IActionResult> ChangeUser(EditUserViewModel model)
        {
            if (ModelState.IsValid)
            {
                Guid imageId = model.ImageId;

                if (model.ImageFile != null)
                {
                    imageId = await _blobHelper.UploadBlobAsync(model.ImageFile, "users");
                }

                User user = await _userHelper.GetUserAsync(User.Identity.Name);

                user.FirstName   = model.FirstName;
                user.LastName    = model.LastName;
                user.Address     = model.Address;
                user.PhoneNumber = model.PhoneNumber;
                user.ImageId     = imageId;
                user.Profession  = await _context.Professions.FindAsync(model.ProfessionId);

                user.Church = await _context.Churches.FindAsync(model.ChurchId);

                user.Profession = await _context.Professions.FindAsync(model.ProfessionId);

                user.Document = model.Document;

                await _userHelper.UpdateUserAsync(user);

                return(RedirectToAction("Index", "Home"));
            }

            model.Fields      = _combosHelper.GetComboFields();
            model.Districts   = _combosHelper.GetComboDistricts(model.FieldId);
            model.Churches    = _combosHelper.GetComboChurches(model.DistrictId);
            model.Professions = _combosHelper.GetComboProfessions();
            return(View(model));
        }
Exemplo n.º 45
0
        public async Task <ActionResult> Edit(string id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            var user = await UserManager.FindByIdAsync(id);

            if (user == null)
            {
                return(HttpNotFound());
            }

            var userRoles = await UserManager.GetRolesAsync(user.Id);

            EditUserViewModel editUser = new EditUserViewModel()
            {
                Id    = user.Id,
                Email = user.Email,
                // Include the additional custom properties
                FirstName = user.FirstName,
                Lastname  = user.Lastname,
                Address   = user.Address,
                City      = user.City,
                State     = user.State,
                Country   = user.Country,

                RolesList = RoleManager.Roles.ToList().Select(x => new SelectListItem()
                {
                    Selected = userRoles.Contains(x.Name),
                    Text     = x.Name,
                    Value    = x.Name
                })
            };

            return(View(editUser));
        }
Exemplo n.º 46
0
        public async Task <IActionResult> Edit(EditUserViewModel model)
        {
            if (ModelState.IsValid)
            {
                ApplicationUser user = await _userManager.FindByIdAsync(model.Id);

                if (user != null)
                {
                    user.UserName    = model.UserName;
                    user.FirstName   = model.FirstName;
                    user.LastName    = model.LastName;
                    user.MiddleName  = model.MiddleName;
                    user.PhoneNumber = model.PhoneNumber;
                    user.Email       = model.Email;

                    var result = await _userManager.UpdateAsync(user);

                    if (result.Succeeded)
                    {
                        log.Info($"Пользователь отредактирован: {user.UserName}");

                        return(RedirectToAction("Index"));
                    }
                    else
                    {
                        log.Error("Ошибка редактирования пользователя");

                        foreach (var error in result.Errors)
                        {
                            ModelState.AddModelError(string.Empty, error.Description);
                        }
                    }
                }
            }

            return(View(model));
        }
Exemplo n.º 47
0
        public ActionResult Index(string searchString, string currentFilter, int?page)
        {
            var Db    = new ApplicationDbContext();
            var users = from s in Db.Users
                        select s;

            users = users.OrderBy(s => s.LastName);

            if (searchString != null)
            {
                page = 1;
            }
            else
            {
                searchString = currentFilter;
            }
            ViewBag.CurrentFilter = searchString;

            if (!String.IsNullOrEmpty(searchString))
            {
                users = users.Where(s => s.LastName.Contains(searchString) ||
                                    s.FirstName.Contains(searchString) || s.UserName.Contains(searchString));
            }

            var model = new List <EditUserViewModel>();

            foreach (var user in users)
            {
                var u = new EditUserViewModel(user);
                model.Add(u);
            }

            int pageSize   = 9;
            int pageNumber = (page ?? 1);

            return(View(model.ToPagedList(pageNumber, pageSize)));
        }
Exemplo n.º 48
0
        public ActionResult Edit(string id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            ViewBag.ALUMNOS = new SelectList(new PersonasRepository().GetAlumnos(), "ID", "PERSONA_NOMBRE_COMPLETO");
            ApplicationUser user = _repo.GetUser(id);

            var roleStore = new RoleStore<IdentityRole>(context);
            var roleManager = new RoleManager<IdentityRole>(roleStore);
            var userRoles = UserManager.GetRoles(id);
            ViewBag.USER_ROLES = roleStore.Roles.ToList().Select(x => new SelectListItem()
            {
                Selected = userRoles.Contains(x.Name),
                Text = x.Name,
                Value = x.Name
            });
            EditUserViewModel vm = new EditUserViewModel
            {
                Email = user.Email,
                UserName = user.UserName,
                USER_PERSONA_ID = user.USER_PERSONA_ID != null ? user.USER_PERSONA_ID.Value : 0,
            };

            return View(vm);
        }
 public ActionResult CreateUser()
 {
     var model = new EditUserViewModel { IsNewUser = true };
     return PartialView("EditUser", model);
 }
 public virtual ActionResult Index()
 {
     var users = _db.Users;
     var model = new List<EditUserViewModel>();
     foreach (var user in users)
     {
         var u = new EditUserViewModel(user);
         model.Add(u);
     }
     return View(model);
 }
        public virtual async Task<ActionResult> Edit(EditUserViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = _db.Users.First(u => u.UserName == model.UserName);
                user.FirstName = model.FirstName;
                user.LastName = model.LastName;
                user.Email = model.Email;
                _db.Entry(user).State = System.Data.Entity.EntityState.Modified;
                await _db.SaveChangesAsync();
                return RedirectToAction("Index");
            }

            // If we got this far, something failed, redisplay form
            return View(model);
        }
Exemplo n.º 52
0
 /// <summary>
 /// View to edit an account.
 /// </summary>
 /// <param name="id">The identifier.</param>
 /// <param name="Message">The message.</param>
 /// <returns></returns>
 public ActionResult Edit(string id, ManageMessageId? Message = null)
 {
     if (!string.IsNullOrEmpty(id))
     {
         var Db = new ApplicationDbContext();
         var account = Db.Users.First(u => u.UserName == id);
         var model = new EditUserViewModel(account);
         ViewBag.MessageId = Message;
         return View(model);
     }
     else
     {
         return RedirectToAction("Index");
     }
 }
 public virtual ActionResult Delete(string id = null)
 {
     var user = _db.Users.First(u => u.UserName == id);
     var model = new EditUserViewModel(user);
     if (user == null)
     {
         return HttpNotFound();
     }
     return View(model);
 }
Exemplo n.º 54
0
        public ActionResult Edit(EditUserViewModel vm, params string[] selectedRoles)
        {
            ViewBag.ALUMNOS = new SelectList(new PersonasRepository().GetAlumnos(), "ID", "PERSONA_NOMBRE_COMPLETO");
            var userRoles = UserManager.GetRoles(vm.ID);

            ViewBag.USER_ROLES = RoleManager.Roles.ToList().Select(x => new SelectListItem()
            {
                Selected = userRoles.Contains(x.Name),
                Text = x.Name,
                Value = x.Name
            });
            if (ModelState.IsValid)
            {
                var db = new ColegioTerciarioContext();
                var usuario = db.Users.Find(vm.ID);
                usuario.USER_PERSONA_ID = vm.USER_PERSONA_ID;
                usuario.UserName = vm.UserName;
                if (usuario.Email != vm.Email)
                {
                    usuario.Email = vm.Email;
                };

                var roleStore = new RoleStore<IdentityRole>(context);
                var roleManager = new RoleManager<IdentityRole>(roleStore);

                if (vm.USER_ROLES != null)
                {
                    var rolesToDelete = (from r in roleManager.Roles
                                         where !vm.USER_ROLES.Contains(r.Name)
                                         select r.Name).ToArray();
                    var removeFromRoles = UserManager.RemoveFromRoles(vm.ID, rolesToDelete);
                    foreach (var role in vm.USER_ROLES)
                    {
                        if (!UserManager.GetRoles(vm.ID).Contains(role))
                        {
                            var addtorole = UserManager.AddToRole(vm.ID, role);
                        }
                    }
                }
                else
                {
                    UserManager.RemoveFromRoles(vm.ID, roleManager.Roles.Select(r => r.Name).ToArray());
                }
                db.SaveChanges();

                if (vm.Password != null)
                {
                    UserManager.RemovePassword(usuario.Id);
                    var result = UserManager.AddPassword(usuario.Id, vm.Password);
                    if (result.Succeeded)
                    {
                        return RedirectToAction("Index");
                    }

                    AddErrors(result);
                    return View(vm);
                }

                return RedirectToAction("Index");
            }
            else
            {

                return View(vm);
            }
        }
Exemplo n.º 55
0
 public ActionResult Delete(string id = null)
 {
     //var Db = DatabaseFactory.Get();
     var user = db.Users.First(u => u.Id == id);
     var model = new EditUserViewModel(user);
     if (user == null)
     {
         return HttpNotFound();
     }
     return View(model);
 }
 public virtual ActionResult Edit(string id, ManageMessageId? Message = null)
 {
     var user = _db.Users.First(u => u.UserName == id);
     var model = new EditUserViewModel(user);
     ViewBag.MessageId = Message;
     return View(model);
 }
Exemplo n.º 57
0
        public async Task<ActionResult> Edit(EditUserViewModel model)
        {
            var dbmgtm = new ApplicationDbContext();
            if (ModelState.IsValid)
            {
                var user = await UserManager.FindByNameAsync(model.UserName);

                user.Email = model.Email;
                user.FirstName = model.FirstName;
                user.LastName = model.LastName;

                using (var securitytrans = dbmgtm.Database.BeginTransaction())
                {

                    //try
                    //{
                    
                        IdentityResult result;
                        result = await UserManager.UpdateAsync(user);

                        if (result.Succeeded)
                        {
                            
                            if(model.AcademicYearID > 0 && model.SchoolID > 0 )
                            { 
                                var userid = dbmgtm.UserPreferences.Where(a => a.UserName == model.UserName).Select(x => new { x.UserID }).FirstOrDefault();
                                UserPreference up = new UserPreference();
                                up.UserID = userid.UserID;
                                up.SchoolRefID = model.SchoolID;
                                up.AcademicYearRefID = model.AcademicYearID;

                                dbmgtm.UserPreferences.Attach(up);
                                dbmgtm.Entry(up).Property("SchoolRefID").IsModified = true;
                                dbmgtm.Entry(up).Property("AcademicYearRefID").IsModified = true;
                                //dbmgtm.Entry(up).State = EntityState.Modified;
                            
                                await dbmgtm.SaveChangesAsync();
                            
                                securitytrans.Commit();
                                return RedirectToAction("Index", "Account");
                              }
                            else
                            {
                                securitytrans.Rollback();
                                return RedirectToAction("Index", "Account");

                            }
                            //await SignInAsync(user, isPersistent: false);
                            
                        }

                //        else
                //        {
                //            ModelState.AddModelErrsor(string.Empty, "There are error in the form");
                //        }
                //    }
                //    catch (Exception e)
                //    {
                //        securitytrans.Rollback();
                //        ModelState.AddModelError(e.Message, "There are error in the form");
                //    }
                        //return View(model);
                }
                  
            }
            ViewBag.SchoolID = new SelectList(dbmgtm.Schools.AsNoTracking().Select(x => new { x.SchoolID, x.SchoolName }), "SchoolID", "SchoolName",model.SchoolID);
            ViewBag.AcademicYearID = new SelectList(dbmgtm.AcademicYears.AsNoTracking().Select(x => new { x.AcademicYearID, x.DisplayYear }), "AcademicYearID", "DisplayYear",model.AcademicYearID);

            return View(model);
        }
        //
        // GET: /Users/Edit/1
        public async Task<ActionResult> Edit(int id)
        {
            if (id == 0)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            var user = await UserManager.FindByIdAsync(id);
            if (user == null)
            {
                return HttpNotFound();
            }

            var userRoles = await UserManager.GetRolesAsync(user.Id);
           
            var model = new EditUserViewModel()
            {
                Id = user.Id,
                Email = user.Email,
                // Include the Addresss info:
                Address = user.Address,
                City = user.City,
                State = user.State,
                PostalCode = user.PostalCode,
                RolesList = RoleManager.Roles.Count() > 0 ? RoleManager.Roles.ToList().Select(x => new SelectListItem()
                {
                    Selected = userRoles.Contains(x.Name),
                    Text = x.Name,
                    Value = x.Name
                }) : null

            };

            return View(model);
        }
Exemplo n.º 59
0
        //
        // GET: /Users/Edit/1
        public async Task<ActionResult> Edit(string id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            var user = await UserManager.FindByIdAsync(id);
            if (user == null)
            {
                return HttpNotFound();
            }

            // Display a list of available Groups:
            var allGroups = this.GroupManager.Groups;
            var userGroups = await this.GroupManager.GetUserGroupsAsync(id);

            var model = new EditUserViewModel()
            {
                Id = user.Id,
                Email = user.Email
            };

            foreach (var group in allGroups)
            {
                var listItem = new SelectListItem()
                {
                    Text = group.Name,
                    Value = group.Id,
                    Selected = userGroups.Any(g => g.Id == group.Id)
                };
                model.GroupsList.Add(listItem);
            }
            return View(model);
        }
Exemplo n.º 60
0
        //
        // GET: /Users/Edit/1
        public async Task<ActionResult> Edit(string id)
        {
            if (id == null)
            {
                return new HttpStatusCodeResult(HttpStatusCode.BadRequest);
            }
            var user = await UserManager.FindByIdAsync(id);
            if (user == null)
            {
                return HttpNotFound();
            }

            var userRoles = await UserManager.GetRolesAsync(user.Id);

            var rlist = RoleManager.Roles.ToList().Select(x => new SelectListItem()
                        {
                            Selected = userRoles.Contains(x.Name),
                            Text = x.Name,
                            Value = x.Name
                        });

            var editModel = new EditUserViewModel(user.Id)
            {
                Id = user.Id,
                Email = user.Email,
                wNumber = user.wNumber,
                RolesList = RoleManager.Roles.ToList().Select(x => new SelectListItem()
                {
                    Selected = userRoles.Contains(x.Name),
                    Text = x.Name,
                    Value = x.Name
                })
            };

            return View(editModel);
        }