Example #1
0
        public async Task <ActionResult> RegisterGuestUser(RegisterGuestViewModel model)
        {
            model.UserType = "GuestProspect";
            var user = new ApplicationUser()
            {
                UserName = model.UserName, UserType = model.UserType, Email = model.Email
            };
            var result = await UserManager.CreateAsync(user, model.Password);

            if (result.Succeeded)
            {
                await SignInAsync(user, isPersistent : false);

                await UserManager.AddToRoleAsync(user.Id, model.UserType);

                UserVerificationHelper.VerificationResult r = UserVerificationHelper.generateVerificationLog(user.Id, model.Email);
                if (r.status.Equals("500"))
                {
                    AddSingleError(r.message);
                    return(View());
                }
                Session["EMAIL"] = model.Email;
                Session["USER"]  = user.Id;
                return(RedirectToAction("VerifyEmail"));
            }
            else
            {
                AddErrors(result);
            }

            return(View());
        }
Example #2
0
        public async Task <IHttpActionResult> RequestPasswordReset([FromUri] String Email)
        {
            var user = db.Users.Where(a => a.Email.Equals(Email)).FirstOrDefault();

            if (user == null)
            {
                return(BadRequest("No matching user with this email!"));
            }
            UserVerificationHelper.VerificationResult result = UserVerificationHelper.generateVerificationLog(user.Id, Email);

            if (result.status.Equals("500"))
            {
                return(BadRequest(result.message));
            }
            else
            {
                return(Ok(result));
            }
        }