コード例 #1
0
 void IAccountService.NewRegistration(RegisterModel model)
 {
     string token = webSecurityService.CreateUserAndAccount(model.UserName, model.Password, null, true);
     model.VerifyUrl = "/Account/Verify/" + token;
     CreatePersonForNewUser(model);
     this.emailHelper.SendSignupMail(model.UserName, model.Email, model.UserName, model.VerifyUrl);
 }
コード例 #2
0
 private void CreatePersonForNewUser(RegisterModel model)
 {
     var userId = webSecurityService.GetUserId(model.UserName);
     var contactInformation = new ContactInformation();
     contactInformation.Email1 = model.Email;
     var person = new Person() { UserId = userId, FirstName = model.FirstName, LastName = model.LastName, ContactInformation = contactInformation };
     this.personService.Save(person);
 }
コード例 #3
0
 public HttpResponseMessage Post(RegisterModel model)
 {
     if (ModelState.IsValid)
     {
         // Attempt to register the user
         try
         {
             accountService.NewRegistration(model);
             return Request.CreateResponse(HttpStatusCode.Accepted);
         }
         catch (MembershipCreateUserException e)
         {
             this.emailHelper.SendErrorEmail(e as Exception);
         }
     }
     return Request.CreateResponse(HttpStatusCode.BadRequest);
 }
コード例 #4
0
        void IAccountService.NewRegistrationNoVerification(RegisterModel model)
        {
            DateTime start = DateTime.Now;
            DateTime stop = DateTime.Now;
            Debug.WriteLine("####Entering Create Account: " + start);
            webSecurityService.CreateUserAndAccount(model.UserName, model.Password, null, false);
            stop = DateTime.Now;
            Debug.WriteLine("#####Create Account time: " + stop.Subtract(start));

            start = DateTime.Now;
            Debug.WriteLine("####Entering Create Person: " + start);
            CreatePersonForNewUser(model);
            stop = DateTime.Now;
            Debug.WriteLine("#####Create Person time: " + stop.Subtract(start));

            start = DateTime.Now;
            Debug.WriteLine("####Entering Send Email: " + start);
            this.emailHelper.SendSignupMailNoVerify(model.UserName, model.Email, model.UserName);
            stop = DateTime.Now;
            Debug.WriteLine("#####Send Email save time: " + stop.Subtract(start));
        }
コード例 #5
0
        //[ValidateAntiForgeryToken()]
        public virtual ActionResult Register(RegisterModel model)
        {
            DateTime start = DateTime.Now;
            Debug.WriteLine("####Entering Register: " + start);
            DateTime stop = DateTime.Now;
            if (ModelState.IsValid)
            {

                // Attempt to register the user
                try
                {
                    if (requireVerification)
                    {
                        accountService.NewRegistration(model);
                    }
                    else
                    {
                        accountService.NewRegistrationNoVerification(model);
                    }
                    stop = DateTime.Now;
                    Debug.WriteLine("#####Register save time: " + stop.Subtract(start));
                    var loggedIn = this.webSecurityService.Login(model.UserName, model.Password, true);
                    
                    stop = DateTime.Now;
                    Debug.WriteLine("#####Total Register save time: " + stop.Subtract(start));
                    return RedirectToAction("SignUp", "Organization");
                }
                catch (MembershipCreateUserException e)
                {
                    this.emailHelper.SendErrorEmail(e as Exception);
                    ModelState.AddModelError("", ErrorCodeToString(e.StatusCode));
                }
            }
            // If we got this far, something failed, redisplay form
            return View(model);
        }