示例#1
0
        public ActionResult Verify(ViewModelRegister userInfo, HttpPostedFileBase image)
        {
            User user = userInfo.GetUser();

            if (image != null)
            {
                ViewBag.Length = image.InputStream.Length;
                MemoryStream target = new MemoryStream();
                image.InputStream.CopyTo(target);
                byte[] data = target.ToArray();
                user.Avatar = data;
            }

            db.Users.Add(user);
            db.SaveChanges();

            if (userInfo.IsSport)
            {
                db.UserAchievements.Add(new UserAchievement {
                    UserID = user.ID, AchievementID = 1
                });
            }
            if (userInfo.IsCandidate)
            {
                db.UserAchievements.Add(new UserAchievement {
                    UserID = user.ID, AchievementID = 2
                });
            }
            if (userInfo.IsDoctor)
            {
                db.UserAchievements.Add(new UserAchievement {
                    UserID = user.ID, AchievementID = 3
                });
            }

            db.SaveChanges();

            string digest = GenerateDigest();
            var    model  = new ViewModelVerify {
                ID = user.ID, GeneratedPass = digest
            };

            ViewBag.Error = false;
            try
            {
                SendEmail(user.Email, digest);
            }
            catch
            {
                ViewBag.Error = true;
            }

            return(View(model));
        }
示例#2
0
        public ActionResult Finish(ViewModelVerify info)
        {
            User user  = db.Users.Where(u => u.ID == info.ID).FirstOrDefault();
            bool check = info.Correct();

            ViewBag.Correct = check;
            if (check)
            {
                user.IsValidated = true;
                db.SaveChanges();
                return(View());
            }
            else
            {
                RemoveUser(user);
                return(View());
            }
        }