コード例 #1
0
        public async Task <IActionResult> ChangeData(YourProfileViewModel model)
        {
            var info = HttpContext.Session.GetString("UserInfo");

            if (info == null)
            {
                return(View());
            }
            if (ModelState.IsValid)
            {
                var result = JsonConvert.DeserializeObject <UserInfo>(info);
                var user   = _context.PatientProfiles.FirstOrDefault(u => u.Id == result.Id);
                user.FirstName   = model.FirstName;
                user.DateOfBirth = Convert.ToDateTime(model.DateBirth);
                user.Image       = model.ImagePath;
                user.LastName    = model.LastName;
                user.Login       = model.Login;
                user.TypeBlood   = model.TypeBlood;
                user.User.Email  = model.Email;
                if (user.Image == null)
                {
                    user.Image = "https://rtfm.co.ua/wp-content/plugins/all-in-one-seo-pack/images/default-user-image.png";
                }
                _context.PatientProfiles.Add(user);
                _context.SaveChanges();
                return(RedirectToAction("YourProfile"));
            }
            return(View());
        }
コード例 #2
0
        public IActionResult YourProfile()
        {
            var info = HttpContext.Session.GetString("UserInfo");

            if (info != null)
            {
                var result = JsonConvert.DeserializeObject <UserInfo>(info);

                var user = _context.PatientProfiles.FirstOrDefault(x => x.Id == result.Id);

                YourProfileViewModel model = new YourProfileViewModel()
                {
                    Login     = user.Login,
                    DateBirth = user.DateOfBirth.ToString("dd/MM/yyyy"),
                    Email     = result.Email,
                    FirstName = user.FirstName,
                    LastName  = user.LastName,
                    ImagePath = user.Image,
                    TypeBlood = user?.TypeBlood
                };
                return(View(model));
            }

            return(View());
        }
コード例 #3
0
        public ActionResult YourAccount(YourProfileViewModel ypVM)
        {
            string usermail = User.Identity.Name;

            if (!ModelState.IsValid)
            {
                return(View("YourAccount", ypVM));
            }
            if (!string.IsNullOrWhiteSpace(ypVM.Pass))
            {
                if (!ypVM.ConfirmPass.Equals(ypVM.Pass))
                {
                    ModelState.AddModelError("", "Пароли не совадают");
                    return(View("YourAccount", ypVM));
                }

                using (Db db = new Db())
                {
                    if (db.users.Where(x => x.Id != ypVM.Id).Any(x => x.Mail.Equals(ypVM.Mail)))
                    {
                        ModelState.AddModelError("", "Пользователь с таким почтовым ящиком уже зарегестрирован");
                        ypVM.Mail = String.Empty;
                        return(View("YourAccount", ypVM));
                    }
                    Users user = db.users.Find(ypVM.Id);
                    user.FirstName   = ypVM.FirstName;
                    user.SurName     = ypVM.SurName;
                    user.PhoneNumber = ypVM.PhoneNumber;
                    //if mail was chaned
                    user.Mail     = ypVM.Mail;
                    user.NickName = ypVM.NickName;
                    if (!string.IsNullOrWhiteSpace(ypVM.Pass))
                    {
                        user.Pass = ypVM.Pass;
                    }


                    db.SaveChanges();
                    FormsAuthentication.SetAuthCookie(ypVM.Mail, true);
                }
            }
            TempData["SuccessUserChange"] = "Изменения успешно внесены";
            //FormsAuthentication.SignOut();
            //return Redirect("~/account/enter");
            return(Redirect("~/account/your-account"));
        }
コード例 #4
0
        public ActionResult YourAccount()
        {
            YourProfileViewModel ypVM;
            string usermail = User.Identity.Name;

            using (Db db = new Db())
            {
                Users user = db.users.FirstOrDefault(x => x.Mail == usermail);
                //    ypVM = new YourProfileViewModel() {
                //        FirstName = user.FirstName,
                //        SurName = user.SurName,
                //        SurName = u.SurName,
                //        Mail = u.Mail,
                //        NickName = u.NickName,
                //        Pass = u.Pass,
                //        PhoneNumber = u.PhoneNumber,
                //        DateRegistration = u.DateRegistration
                //};
                ypVM = new YourProfileViewModel(user);
            }
            return(View("YourAccount", ypVM));
        }