Пример #1
0
        public ActionResult Edit(EditProfileViewModel profile)
        {
            var userId = this.User.Identity.GetUserId();
            var userToUpdate = this.usersServices.GetUserById(userId);
            userToUpdate.FirstName = profile.FirstName;
            userToUpdate.LastName = profile.LastName;

            this.usersServices.Update(userToUpdate);

            return this.Redirect("/Me");
        }
Пример #2
0
        public ActionResult EditProfile(EditProfileViewModel model)
        {
            var user = this.userService.GetById(this.User.Identity.GetUserId())
                                              .FirstOrDefault();

            if (!string.IsNullOrEmpty(model.FirstName))
            {
                user.FirstName = model.FirstName;
            }

            if (!string.IsNullOrEmpty(model.LastName))
            {
                user.LastName = model.LastName;
            }

            if (!string.IsNullOrEmpty(model.Email))
            {
                user.Email = model.Email;
            }

            if (model.ProfilePic != null)
            {
                using (var memory = new MemoryStream())
                {
                    model.ProfilePic.InputStream.CopyTo(memory);
                    var content = memory.GetBuffer();

                    var image = new Image
                    {
                        Content = content,
                        FileExtension = model.ProfilePic.FileName.Split(new[] { '.' }).Last()
                    };

                    user.ProfilePic = image;
                }
            }

            this.userService.UpdateUser(user);
            return this.RedirectToAction("UserDetails","Account");
        }
Пример #3
0
        public async Task <IActionResult> EditProfileAsync(EditProfileViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            var user = await GetCurrentUserAsync();

            if (user != null)
            {
                // update all user claims
                var result = await UpdateUserClaims(user, model.ToClaims());

                if (result.Succeeded)
                {
                    return(RedirectToAction(nameof(Index), new { Message = ManageMessageId.SetPasswordSuccess }));
                }
                AddErrors(result);
                return(View(model));
            }
            return(RedirectToAction(nameof(Index), new { Message = ManageMessageId.Error }));
        }
Пример #4
0
        public async Task <IActionResult> EditProfile(string userName)
        {
            // Находим пользователя по имени
            User user = await _websiteDB.Users.FirstOrDefaultAsync(u => u.Name == userName);

            // Находим его аватар
            AvatarImage avatarImage = await _websiteDB.AvatarImages.FirstOrDefaultAsync(a => a.UserId == user.Id);

            // Проверяем, чтобы пользователь не был NUll и чтобы имя залогиненного пользователя совпадало с полученным в методе
            if (User.Identity.Name == userName && user != null)
            {
                ViewBag.Title = $"Редактирование профиля {user.Name}";

                // Создаем модель для передачи в представление
                EditProfileViewModel model = new EditProfileViewModel()
                {
                    UserId           = user.Id,
                    Name             = user.Name,
                    Email            = user.Email,
                    CharacterClassId = user.CharacterClassId
                };

                // Аватар
                if (avatarImage != null)
                {
                    model.AvatarImage = avatarImage.ImagePath;
                }

                SelectList ingameClasses = new SelectList(_websiteDB.CharacterClasses, "Id", "ClassName", user.CharacterClassId);
                ViewBag.Classes = ingameClasses;

                return(View(model));
            }

            // Возврат ошибки 404, если пользователь не найден или пытается редактировать не свой профиль
            return(Redirect("/Main/PageNotFound"));
        }
Пример #5
0
        public async Task <IActionResult> Edit(EditProfileViewModel input)
        {
            var findUser = await _userManager.FindByNameAsync(User.Identity.Name);

            if (ModelState.IsValid)
            {
                findUser.FirstName = input.FirstName;
                findUser.LastName  = input.LastName;
                findUser.Email     = input.Email;
                findUser.Phone     = input.Phone;
                findUser.UserName  = input.Username;
                if (input.Password != null)
                {
                    findUser.PasswordHash = _userManager.PasswordHasher.HashPassword(findUser, input.Password);
                }
                var res = await _userManager.UpdateAsync(findUser);

                if (res.Succeeded)
                {
                    return(Json(new { Status = 1, Message = "" }));
                }
                else
                {
                    return(Json(new { Status = 0, Message = "لطفا دوباره تلاش کنید" }));
                }
            }
            var errors = new List <string>();

            foreach (var item in ModelState.Values)
            {
                foreach (var err in item.Errors)
                {
                    errors.Add(err.ErrorMessage);
                }
            }
            return(Json(new { Status = 0, Message = errors.First() }));
        }
Пример #6
0
        public async Task <IActionResult> EditProfile(EditProfileViewModel model)
        {
            var user = await UserManager.GetUserAsync(HttpContext.User);

            model.Cidades = await _CidadeService.FindAllAsync();

            if (user == null)
            {
                ViewBag.ErrorMessage = $"Usuário não encontrado";
                return(View("NotFound"));
            }
            else
            {
                if (ModelState.IsValid)
                {
                    user.Nome      = model.Nome;
                    user.Telefone  = model.Telefone;
                    user.Moradia   = model.Moradia;
                    user.Protecao  = model.Protecao;
                    user.QtAnimais = model.QtAnimais;
                    user.Cidade    = model.CidadeUser;
                    user.CidadeId  = model.CidadeId;
                    user.Bio       = model.Bio;
                    var result = await UserManager.UpdateAsync(user);

                    if (result.Succeeded)
                    {
                        return(RedirectToAction("Profile"));
                    }
                    foreach (var error in result.Errors)
                    {
                        ModelState.AddModelError("", error.Description);
                    }
                }
            }
            return(View(model));
        }
        public ActionResult EditProfile(EditProfileViewModel profile, string id)
        {
            if (profile != null && this.ModelState.IsValid)
            {
                var user = this.Users.GetById(this.CurrentUser.Id);

                user.FirstName       = profile.FirstName;
                user.LastName        = profile.LastName;
                user.HomeCity        = profile.HomeCity;
                user.Gender          = profile.Gender;
                user.PhoneNumber     = profile.PhoneNumber;
                user.FacebookProfile = profile.FacebookProfile;

                if (profile.UploadedImage != null)
                {
                    using (var memory = new MemoryStream())
                    {
                        profile.UploadedImage.InputStream.CopyTo(memory);
                        var content = memory.GetBuffer();

                        user.ProfilePicture = new Photo
                        {
                            Content       = content,
                            FileExtension = profile.UploadedImage.FileName.Split(new[] { '.' }).Last()
                        };
                        this.images.Update();
                    }
                }

                this.Users.Update();

                this.TempData["Notification"] = "Profile Updeted Succesfully!";
                return(this.RedirectToAction("ViewMyProfile"));
            }

            return(this.View(profile));
        }
Пример #8
0
        public async Task <IActionResult> EditProfile(EditProfileViewModel model)
        {
            ApplicationUser user = await _userManager.FindByIdAsync(model.Id);

            if (user == null)
            {
                ViewBag.ErrorMessage = $"User with Id = {model.Id} cannot be found";
                return(View("~/Views/Error/NotFound.cshtml"));
            }

            user.Id          = model.Id;
            user.Email       = model.Email;
            user.UserName    = model.UserName;
            user.FirstName   = model.FirstName;
            user.LastName    = model.LastName;
            user.FullName    = model.FirstName + " " + model.LastName;
            user.Country     = model.Country;
            user.PhoneNumber = model.PhoneNumber;
            user.Description = model.Description;
            user.PhotoPath   = model.PhotoPath;

            IdentityResult result = await _userManager.UpdateAsync(user);

            if (result.Succeeded)
            {
                user.PhotoPath = Path.Combine("~/Images/UserImages/", model.Id, model.PhotoPath);

                return(RedirectToAction("ViewProfile", "Account", new { user.Id }));
            }

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

            return(View(model));
        }
Пример #9
0
        public void DeleteProfileCancelDialogTest()
        {
            // Arrange
            DeleteUnitTestsProfile();

            Assert.That(File.Exists(_unitTestsProfile), Is.False, "File.Exists(_unitTestsProfile)");

            UserProfile profile = new UserProfile();

            profile.ProfileName = _profileName;
            profile.Save();

            Assert.That(File.Exists(_unitTestsProfile), Is.True, "File.Exists(_unitTestsProfile)");

            EditProfileViewModel editProfileViewModel = IoC.Resolve <EditProfileViewModel>();
            bool confirmationShown = false;

            editProfileViewModel.ShowMessageBox += (sender, args) => { confirmationShown = true; args.Data.Result = MessageBoxResult.No; }; // delete confirmation

            // Assert - initial state
            Assert.That(editProfileViewModel.Profiles, Is.Not.Null, "editProfileViewModel.Profiles");
            Assert.That(editProfileViewModel.Profile, Is.Not.Null, "editProfileViewModel.Profile");
            Assert.That(editProfileViewModel.Profile.ProfileName, Is.EqualTo(_profileName), "editProfileViewModel.Profile.ProfileName");
            Assert.That(File.Exists(_unitTestsProfile), Is.True, "File.Exists(_unitTestsProfile)");
            Assert.That(File.Exists(_defaultProfile), Is.False, "File.Exists(_defaultProfile)");

            // Act
            editProfileViewModel.DeleteProfileCommand.Execute(null);

            // Assert
            Assert.That(confirmationShown, Is.True, "confirmationShown");
            Assert.That(editProfileViewModel.Profiles, Is.Not.Null, "editProfileViewModel.Profiles");
            Assert.That(editProfileViewModel.Profile, Is.Not.Null, "editProfileViewModel.Profile");
            Assert.That(editProfileViewModel.Profile.ProfileName, Is.EqualTo(_profileName), "editProfileViewModel.Profile.ProfileName");
            Assert.That(File.Exists(_unitTestsProfile), Is.True, "File.Exists(_unitTestsProfile)");
            Assert.That(File.Exists(_defaultProfile), Is.False, "File.Exists(_defaultProfile)");
        }
Пример #10
0
        public ActionResult Edit(int id)
        {
            var profile = repository.Find(id);
            var model   = new EditProfileViewModel
            {
                AboutUs     = profile.AboutUs,
                Image       = profile.Image,
                Address1    = profile.Address1,
                Address2    = profile.Address2,
                Address3    = profile.Address3,
                Email       = profile.Email,
                Phone       = profile.Phone,
                Mission     = profile.Mission,
                Vission     = profile.Vission,
                Care        = profile.Care,
                Plan        = profile.Plan,
                ClientNum   = profile.ClientNum,
                WorkerNum   = profile.WorkerNum,
                ProjectsNum = profile.ProjectsNum,
                HoursNum    = profile.HoursNum
            };

            return(View(model));
        }
Пример #11
0
        private async Task <UserDTO> UpdateUserInformation(UserModel user, EditProfileViewModel editProfile)
        {
            user.FirstName = editProfile.FirstName ?? user.FirstName;
            user.LastName  = editProfile.LastName ?? user.LastName;

            Regex phoneNumberRegex = new Regex(@"^(?=.*[0-9])[- +()0-9].*[0-9]+$");

            if (!string.IsNullOrEmpty(editProfile.PhoneNumber))
            {
                if (!phoneNumberRegex.IsMatch(editProfile.PhoneNumber) || editProfile.PhoneNumber.Length < 5)
                {
                    throw new ValidationException(Resources.InvalidPhoneNumberFormat);
                }
            }

            if (editProfile.TermsAccepted != true)
            {
                throw new ValidationException(Resources.InvalidExternalLoginRequest);
            }

            if (editProfile.PrivacyPolicyAccepted != true)
            {
                throw new ValidationException(Resources.InvalidExternalLoginRequest);
            }

            user.PrivacyPolicyAccepted  = editProfile.PrivacyPolicyAccepted;
            user.TermsAccepted          = editProfile.TermsAccepted;
            user.PhoneNumber            = editProfile.PhoneNumber;
            user.NewsletterSubscription = editProfile.NewsletterSubscription;
            user.DisplayEmail           = editProfile.DisplayEmail;
            user.DisplayPhoneNumber     = editProfile.DisplayPhoneNumber;

            var editedUser = await _iUserDao.UpdateUser(user);

            return(UserConverter.FromUserModelToUserDTO(user));
        }
Пример #12
0
        public ActionResult EditProfile(EditProfileViewModel profile)
        {
            var UserId      = User.Identity.GetUserId();
            var CurrentUser = db.Users.Where(aa => aa.Id == UserId).SingleOrDefault();

            if (profile.CurrentPassword == null || profile.NewPassword == null || profile.ConfirmPassword == null)
            {
                ViewBag.Message = "Current or New or Confirm password Cannot be null";
            }
            else
            {
                if (!UserManager.CheckPassword(CurrentUser, profile.CurrentPassword))
                {
                    ViewBag.Message = "Current password is not correct";
                }
                else
                {
                    if (profile.NewPassword != profile.ConfirmPassword)
                    {
                        ViewBag.Message = "Current password does not match ConfirmPassword";
                    }
                    else
                    {
                        var newPasswordHash = UserManager.PasswordHasher.HashPassword(profile.NewPassword);
                        CurrentUser.UserName        = profile.UserName;
                        CurrentUser.Email           = profile.Email;
                        CurrentUser.PasswordHash    = newPasswordHash;
                        db.Entry(CurrentUser).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();
                        ViewBag.Message = "Successfully Edit";
                    }
                }
            }

            return(View(profile));
        }
Пример #13
0
        async public Task <IActionResult> Edit()
        {
            var userId = _httpContextAccessor.HttpContext.User.FindFirstValue(ClaimTypes.NameIdentifier);

            var User = await userManager.FindByIdAsync(userId);

            if (User != null)
            {
                var EditUser = new EditProfileViewModel
                {
                    Id           = User.Id,
                    City         = User.City,
                    Email        = User.Email,
                    ExistImgPath = User.Img,
                    Position     = User.Position,
                    Street       = User.Street
                };
                return(View(EditUser));
            }
            else
            {
                return(View("NotFound"));
            }
        }
Пример #14
0
        //
        // GET: /Account/EditProfile
        public ActionResult EditProfile()
        {
            var types    = GetAllTypes();
            var agencies = GetAllAgencies();

            var model = new EditProfileViewModel();

            model.Types    = GetSelectListItems(types);
            model.Agencies = GetSelectListItems(agencies);

            ApplicationUser user = UserManager.FindById(User.Identity.GetUserId());

            ViewBag.Email           = user.Email;
            ViewBag.FirstName       = user.FirstName;
            ViewBag.LastName        = user.LastName;
            ViewBag.BirthDate       = user.BirthDate.HasValue ? ViewBag.BirthDate = user.BirthDate.Value.ToString("MM/dd/yyyy") : "";
            ViewBag.CellphoneNumber = user.CellphoneNumber;
            ViewBag.TelephoneNumber = user.TelephoneNumber;
            ViewBag.Type            = user.Type;
            ViewBag.Agency          = user.Agency;
            ViewBag.AvatarUrl       = user.AvatarUrl;

            return(View(model));
        }
Пример #15
0
        public ActionResult Edit()
        {
            var model = new EditProfileViewModel();

            LoadLanguage(model);

            User user = Session.Get <User>(SecurityManager.AuthenticatedUser.Id);

            model.FirstName               = user.FirstName;
            model.MiddleName              = user.MiddleName;
            model.LastName                = user.LastName;
            model.EGN                     = user.EGN;
            model.Email                   = user.Email;
            model.Phone                   = user.Phone;
            model.Fax                     = user.Fax;
            model.Country                 = user.Address.Country;
            model.City                    = user.Address.City;
            model.State                   = user.Address.State;
            model.Zip                     = user.Address.Zip;
            model.DeliveryLine            = user.Address.DeliveryLine;
            model.IsSubscribedForNewsFeed = user.IsSubscribedForNewsFeed;

            return(View(model));
        }
Пример #16
0
        private EditProfileViewModel BuildEditViewModel(EditProfileViewModel oldVm = null)
        {
            EditProfileViewModel vm = new EditProfileViewModel();

            if (oldVm != null)
            {
                vm = oldVm;
            }
            vm.User = CurrentUser;
            vm.ReceiveEmailNotificationsForPosts = CurrentUser.ReceiveNotificationEmails;
            vm.ReceiveEmailsOnFeedPost           = CurrentUser.ReceiveEmailOnNewFeedPost;
            vm.ReceiveEmailsOnNewAskForHelp      = CurrentUser.ReceiveEmailOnNewAskForHelp;
            vm.UsersInCourse = Db.Users.Where(u => u.SchoolId == CurrentUser.SchoolId).ToList();
            StudentSubscriptionsQuery subs = new StudentSubscriptionsQuery(Db, CurrentUser);
            List <OsbideUser>         subscriptionsAsUsers = subs.Execute().ToList();
            List <UserSubscription>   subscriptions        = Db
                                                             .UserSubscriptions.Where(s => s.ObserverSchoolId == CurrentUser.SchoolId)
                                                             .Where(s => s.ObserverInstitutionId == CurrentUser.InstitutionId)
                                                             .ToList();

            foreach (OsbideUser user in subscriptionsAsUsers)
            {
                UserSubscription us = subscriptions.Where(s => s.SubjectInstitutionId == user.InstitutionId).FirstOrDefault();
                if (us != null)
                {
                    vm.UserSubscriptions[user.Id] = us;
                }
            }

            //set up school choices
            List <School> schools = Db.Schools.ToList();

            ViewBag.Schools = schools;

            return(vm);
        }
 public ActionResult EditProfile(EditProfileViewModel profile)
 {
     if (ModelState.IsValid)
     {
         var UserId      = User.Identity.GetUserId();
         var currentUser = db.Users.Find(UserId);
         if (!UserManager.CheckPassword(currentUser, profile.CurrentPassword))
         {
             ViewBag.Message = "كلمة السر الحالية غير صحيحة, برجاء التأكد من كلمة السر والمحاولة مرة أخرى.";
         }
         else
         {
             var NewHashedPassword = UserManager.PasswordHasher.HashPassword(profile.NewPassword);
             currentUser.UserName        = profile.UserName;
             currentUser.Email           = profile.Email;
             currentUser.PasswordHash    = NewHashedPassword;
             db.Entry(currentUser).State = System.Data.Entity.EntityState.Modified;
             ViewBag.Message             = "تم التعديل بنجاح.";
             db.SaveChanges();
         }
         //return RedirectToAction("Index","Home");
     }
     return(View());
 }
Пример #18
0
        public ActionResult EditProfile(EditProfileViewModel profile)
        {
            ApplicationUser user = _dbContext.Users.Find(User.Identity.GetUserId());

            ViewBag.Skills = new MultiSelectList(_dbContext.Skills.Select(s => new { Id = s.Id, Name = s.Name }), "Id", "Name");
            if (ModelState.IsValid)
            {
                //List<Skill> skills = new List<Skill>();
                //foreach (int skillId in profile.Skills)
                //{
                //   skills.Add(_dbContext.Skills.Find(skillId));
                //   // user.Skills.Add(_dbContext.Skills.Find(skillId));

                //}
                //user.Skills.Clear();
                //user.Skills = skills;

                user.FirstName = profile.FirstName;
                user.LastName  = profile.LastName;
                //user.WorkPlacement = profile.WorkPlacement;
                user.Birthday = profile.Birthday;
                //user.IntroduceYourself = profile.IntroduceYourself;
                user.Address     = profile.Address;
                user.PhoneNumber = profile.PhoneNumber;
                user.Email       = profile.Email;
                user.Skype       = profile.Skype;

                //_dbContext.Entry(user).State    = System.Data.Entity.EntityState.Modified;
                _dbContext.SaveChanges();

                return(View(profile));
            }

            //profile.WorkExperiences = user.WorkExperiences;
            return(View(profile));
        }
Пример #19
0
        // GET: Manage
        public async Task <ActionResult> Index(ManageMessageId?message)
        {
            if (TempData["ViewData"] != null)
            {
                ViewData = (ViewDataDictionary)TempData["ViewData"];
            }

            var user = await UserManager.FindByIdAsync(User.Identity.GetUserId());

            if (user == null)
            {
                return(View("Error"));
            }

            var profileInfo = new EditProfileViewModel
            {
                Email       = user.Email,
                PhoneNumber = user.PhoneNumber,
                FirstName   = user.FirstName,
                LastName    = user.LastName,
                Address     = user.Address,
                City        = user.City,
                PostalCode  = user.PostalCode,
                IsCompany   = user.IsCompany,
                CompanyName = user.CompanyName,
                NIP         = user.NIP
            };

            var model = new ManageViewModel
            {
                Message = message,
                EditProfileViewModel = profileInfo
            };

            return(View(model));
        }
Пример #20
0
        public async Task <IActionResult> Profile(string id)
        {
            var user = await userManager.FindByIdAsync(id);

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

            var userRoles = await userManager.GetRolesAsync(user);

            EditProfileViewModel editProfileViewModel = new EditProfileViewModel
            {
                Birthday           = user.Birthday,
                WorkStudyAllowance = user.WorkStudyAllowance,
                FirstName          = user.FirstName,
                LastName           = user.LastName,
                Email       = user.Email,
                PhoneNumber = user.PhoneNumber,
                ID          = user.Id,
                Roles       = userRoles
            };

            var loggedInUser = await userManager.GetUserAsync(HttpContext.User);

            if (loggedInUser.Id != user.Id)
            {
                ViewBag.OwnsAccount = false;
            }
            else
            {
                ViewBag.OwnsAccount = true;
            }

            return(View(editProfileViewModel));
        }
        public ActionResult adminprofile(EditProfileViewModel profile)
        {
            var UserID = User.Identity.GetUserId();
            var user   = db.Users.Where(a => a.Id == UserID).SingleOrDefault();

            if (!UserManager.CheckPassword(user, profile.currentPassword))
            {
                ViewBag.Massage = "Current Password Is Not Correct";
            }
            else
            {
                var NewPasswordHash = UserManager.PasswordHasher.HashPassword(profile.NewPassword);
                user.Email           = profile.Email;
                user.UserName        = profile.UserName;
                user.ssn             = profile.ssn;
                user.PhoneNumber     = profile.PhoneNumber;
                user.PasswordHash    = NewPasswordHash;
                db.Entry(user).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();
                ViewBag.Massage = "update successfully ";
            }

            return(View());
        }
Пример #22
0
        public async Task <EditProfileViewModel> GetEditProfileViewModel(string username)
        {
            var dev = await _userManager.FindByNameAsync(username);

            if (!_context.Profiles.Any(x => x.Owner.Id == dev.Id))
            {
                await AddProfile(username);
            }

            Profile p = _context.Profiles.Where(x => x.Owner.Id == dev.Id).SingleOrDefault() ?? throw new ArgumentException();

            EditProfileViewModel epvm = new EditProfileViewModel
            {
                OwnerUserName     = dev.UserName,
                ProfileId         = p.ProfileId,
                LinesWritten      = p.LinesWritten,
                WagePerLine       = p.WagePerLine,
                SpecialityFieldId = p.SpecialityField.SpecialityFieldId
            };

            epvm.SpecialityFields = _context.SpecialityFields.ToList();

            return(epvm);
        }
Пример #23
0
        public ActionResult EditProfile()
        {
            // Get the user from the identity.
            var userName = _context.Identity.Name;

            // Lookup the user in the repository.
            var user = _factory.GetUOF().User.Get(userName);

            // user should NEVER be null, but we check anyway.
            if (user == null)
            {
                throw new Exception("User not found");
            }

            // Populate the viewmodel.
            var viewModel = new EditProfileViewModel()
            {
                Email     = user.Email,
                FirstName = user.FirstName,
                LastName  = user.LastName,
            };

            return(View("EditProfile", viewModel));
        }
Пример #24
0
        public IActionResult EditProfile(EditProfileViewModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            if (model.Login != _userService.GetCurrent().Login)
            {
                if (_userRepository.Get(model.Login) != null)
                {
                    ModelState.AddModelError(nameof(EditProfileViewModel.Login),
                                             "Пользователь с таким именем уже существует");
                    return(View(model));
                }
            }

            var user = _userService.GetCurrent();

            user.Login   = model.Login;
            user.Name    = model.Name;
            user.Surname = model.Surname;
            user.Phone   = model.Phone;
            user.Email   = model.Email;

            if (model.Company != null)
            {
                var newCompany = _companyRepository.Get(model.Company) ?? new Company {
                    Name = model.Company
                };
                user.CustomerInfo.Company = newCompany;
            }

            _userRepository.Save(user);
            return(RedirectToAction("Profile"));
        }
Пример #25
0
        public ActionResult EditProfile(EditProfileViewModel model)
        {
            var 客戶資料 = _客戶repo.All().Where(p => p.帳號 == User.Identity.Name).FirstOrDefault();

            if (ModelState.IsValid)
            {
                客戶資料.電話    = model.電話;
                客戶資料.傳真    = model.傳真;
                客戶資料.地址    = model.地址;
                客戶資料.Email = model.Email;

                if (!string.IsNullOrEmpty(model.確認密碼))
                {
                    客戶資料.密碼 = FormsAuthentication.HashPasswordForStoringInConfigFile(客戶資料.帳號 + model.確認密碼, "MD5");
                }

                _客戶repo.UnitOfWork.Commit();
                return(RedirectToAction("Index", "Home"));
            }
            else
            {
                return(View(model));
            }
        }
Пример #26
0
        public async Task <ValidationResponseViewModel> Update(EditProfileViewModel editProfileViewModel)
        {
            User          user           = userService.GetUser(this.UserId);
            List <string> passwordErrors = new List <string>();
            List <string> information    = new List <string>();
            List <string> nameErrors     = new List <string>();

            passwordErrors = (List <string>)userService.ChangePassword(editProfileViewModel.OldPassword, editProfileViewModel.NewPassword, editProfileViewModel.NewPasswordConfirmation, this.UserId);
            nameErrors     = (List <string>)userService.CheckUserName(editProfileViewModel.FirstName, editProfileViewModel.SecondName);
            if (nameErrors.Count == 0)
            {
                information = (List <string>)userService.CheckUserInfo(editProfileViewModel.FirstName, editProfileViewModel.SecondName, editProfileViewModel.About, this.UserId);
                if (passwordErrors.Count == 0 && !String.IsNullOrWhiteSpace(editProfileViewModel.NewPassword) && !String.IsNullOrWhiteSpace(editProfileViewModel.OldPassword) && !String.IsNullOrWhiteSpace(editProfileViewModel.NewPasswordConfirmation))
                {
                    information.Add("Password changed");
                }

                user.FirstName  = editProfileViewModel.FirstName;
                user.About      = editProfileViewModel.About;
                user.SecondName = editProfileViewModel.SecondName;
                userService.Update(user);
            }
            return(new ValidationResponseViewModel(passwordErrors, information, nameErrors));
        }
Пример #27
0
 public ActionResult Edit(EditProfileViewModel model)
 {
     try
     {
         string FileName = UploadFile(model.File, model.Image);
         if (ModelState.IsValid)
         {
             var profile = new Profile
             {
                 AboutUs     = model.AboutUs,
                 Image       = FileName,
                 Address1    = model.Address1,
                 Address2    = model.Address2,
                 Address3    = model.Address3,
                 Email       = model.Email,
                 Phone       = model.Phone,
                 Mission     = model.Mission,
                 Vission     = model.Vission,
                 Care        = model.Care,
                 Plan        = model.Plan,
                 ClientNum   = model.ClientNum,
                 WorkerNum   = model.WorkerNum,
                 ProjectsNum = model.ProjectsNum,
                 HoursNum    = model.HoursNum
             };
             repository.Update(model.ID, profile);
             return(RedirectToAction("Index"));
         }
         ModelState.AddModelError("", "Please review the input Fields");
         return(View(model));
     }
     catch
     {
         return(View());
     }
 }
Пример #28
0
        public async Task <IActionResult> Edit(EditProfileViewModel user, IFormFile ProfilePictureFile)
        {
            if (ModelState.IsValid)
            {
                var currentUser = userManager.GetUserAsync(User).Result;

                currentUser.FirstName   = user.FirstName;
                currentUser.LastName    = user.LastName;
                currentUser.Location    = user.Location;
                currentUser.Age         = int.Parse(user.Age);
                currentUser.Description = user.Description;

                if (ProfilePictureFile != null)
                {
                    string uploadPath = Path.Combine(environment.WebRootPath, "uploads");
                    Directory.CreateDirectory(Path.Combine(uploadPath, currentUser.Id));

                    string filename = ProfilePictureFile.FileName.Split('\\').Last();

                    using (FileStream fs = new FileStream(Path.Combine(uploadPath, currentUser.Id, filename), FileMode.Create))
                    {
                        await ProfilePictureFile.CopyToAsync(fs);
                    }

                    currentUser.ProfilePicture = filename;
                }

                db.Update(currentUser);

                db.SaveChanges();

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

            return(View("Edit"));
        }
Пример #29
0
        public async Task<IActionResult> EditProfile(EditProfileViewModel model)
        {
            ApplicationUser user = await GetCurrentUserAsync();

            if (user == null)
            {
                return RedirectToAction(nameof(Index), new { Message = ManageMessageId.Error });
            }

            user.DisplayedName = model.DisplayedName;
            user.LastName = model.LastName;
            user.FirstName = model.FirstName;

            var result = await _userManager.UpdateAsync(user);

            if (result.Succeeded) 
            {
                return RedirectToAction(nameof(Index), new { Message = ManageMessageId.EditProfileSuccess });
            }

            AddErrors(result);
            
            return View(model);
        }
        public ActionResult Edit(EditProfileViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                User user = usersService.GetById(LoginUserSession.Current.UserId);
                user.Email = viewModel.Email;
                user.Name  = viewModel.Name;
                bool hasSuccessfullyEdited = true;
                try
                {
                    hasSuccessfullyEdited = usersService.Edit(user);
                }
                catch (System.Data.SqlClient.SqlException)
                {
                    hasSuccessfullyEdited = false;
                }

                if (hasSuccessfullyEdited)
                {
                    LoginUserSession currentSession = LoginUserSession.Current;
                    currentSession.Email           = viewModel.Email;
                    currentSession.Name            = viewModel.Name;
                    TempData["SuccessfullMessage"] = "Profile edited successfully";
                }
                else
                {
                    TempData["ErrorMessage"] = "There was a server error during the edit";
                }

                return(RedirectToAction("Index", "Home"));
            }
            else
            {
                return(View(viewModel));
            }
        }
Пример #31
0
        public ActionResult EditProfile(EditProfileViewModel Profile)
        {
            //************ To check that current user password is correct **************//

            var UserID      = User.Identity.GetUserId();
            var CurrentUser = db.Users.Where(a => a.Id == UserID).SingleOrDefault();

            if (!UserManager.CheckPassword(CurrentUser, Profile.CurrentPassword))
            {
                ViewBag.Message = "Current Password is wrong, Please try again";
            }
            else
            {
                var newPasswordHash = UserManager.PasswordHasher.HashPassword(Profile.NewPassword);
                CurrentUser.UserName = Profile.UserName;
                CurrentUser.Email    = Profile.Email;
                //CurrentUser.PasswordHash = newPasswordHash;
                CurrentUser.PasswordHash    = Profile.NewPassword;
                db.Entry(CurrentUser).State = System.Data.Entity.EntityState.Modified;
                db.SaveChanges();
                ViewBag.Message = " Data Updated successfully.";
            }
            return(View(Profile));
        }
Пример #32
0
        public async Task <JsonResult> EditProfile(EditProfileViewModel model)
        {
            if (!ModelState.IsValid)
            {
                var errMsg = "";

                foreach (var modelStateValue in ModelState.Values)
                {
                    foreach (var error in modelStateValue.Errors)
                    {
                        errMsg += error.ErrorMessage + "\n";
                    }
                }

                return(Json(new ResponseData()
                {
                    Success = false,
                    Message = errMsg,
                }));
            }

            var user = await _userManager.GetUserAsync(User);

            user.Name        = model.Name;
            user.Surname     = model.Surname;
            user.Email       = model.Email;
            user.PhoneNumber = model.PhoneNumber;

            await _userManager.UpdateAsync(user);

            return(Json(new ResponseData()
            {
                Success = true,
                Message = "Profil bilgileriniz başarı ile değiştirilmiştir."
            }));
        }
        public ActionResult Edit(EditProfileViewModel model)
        {
            if (!this.ModelState.IsValid)
            {
                return this.View(model);
            }

            var user = this.Mapper.Map<ApplicationUser>(model);
            user.Id = this.User.Identity.GetUserId();
            this.users.UpdateUser(user);

            return this.RedirectToAction("Index", new { Message = ManageMessageId.EditProfileSuccess });
        }
Пример #34
0
 public ActionResult EditProfile(EditProfileViewModel viewModel)
 {
     return View();
 }
        public ActionResult Edit(EditProfileViewModel model)
        {
            if (!ModelState.IsValid)
            {
                //do some stuff here
                ViewData["Message"] = "Edit profile unsuccessful";
                return Edit();
            }

            String username = User.Identity.Name;
            UserProfileModel p = accountServices.GetUserProfileByUsername(username);
            p.Birthdate = model.Birthdate;
            p.Description = model.Description;

            if (p.Description == null) { p.Description = ""; }

            p.LastName = model.LastName;
            p.FirstName = model.FirstName;
            p.IsFemale = model.GenderText.Equals("Female");

            DateTime newDT = DateTime.Parse(model.BirthdateMonth + "/" + model.BirthdateDay + "/" + model.BirthdateYear);

            p.Birthdate = newDT;
            //return PartialView("ProfileUserControl", model);
            if (accountServices.UpdateUserProfile(p))
            {
                ViewData["Message"] = "Edit profile successful";
            }
            else
            {
                ViewData["Message"] = "Edit profile unsuccessful";
            }
            return Edit();
        }
        //
        // GET: /Profile/Edit/5
        public ActionResult Edit()
        {
            string username = User.Identity.Name;
            UserProfileModel up = accountServices.GetUserProfileByUsername(username);
            EditProfileViewModel u = new EditProfileViewModel();
            u.Description = up.Description;
            u.FirstName = up.FirstName;
            u.LastName = up.LastName;
            u.GenderText = up.IsFemale ? "Female" : "Male";
            u.Reputation = up.Reputation;
            u.BirthdateDay = up.Birthdate.Day;
            u.BirthdateMonth = up.Birthdate.ToString("MMMM");
            u.BirthdateYear = up.Birthdate.Year;

            SetViewDataForDate(ViewData);

            return View(u);
        }
		public void SetUp ()
		{
			_repository = new MockRepository ();
			_sut = new EditProfileViewModel (_repository);
		}