Пример #1
0
        private bool ValidateContactDetail(AccountMeViewModel model)
        {
            Requires(model.ContactDetail.FirstName, "ContactDetail.FirstName", "*");
            Requires(model.ContactDetail.LastName, "ContactDetail.LastName", "*");
            Requires(model.ContactDetail.City, "ContactDetail.City", "*");
            Requires(model.ContactDetail.Address1, "ContactDetail.Address1", "*");
            Requires(model.ContactDetail.EMail, "ContactDetail.EMail", "*");

            if ("0".Equals(model.ContactDetail.Country))
            {
                ModelState.AddModelError("ContactDetail.Country", "*");
            }

            if ("USA".Equals(model.ContactDetail.Country) && string.IsNullOrWhiteSpace(model.ContactDetail.ZipOrRegionCode))
            {
                ModelState.AddModelError("ContactDetail.ZipOrRegionCode", "*");
            }

            if ("USA".Equals(model.ContactDetail.Country) && string.IsNullOrWhiteSpace(model.ContactDetail.StateOrProvince))
            {
                ModelState.AddModelError("State", "*");
            }

            return(ModelState.IsValid);
        }
Пример #2
0
        public async Task <ActionResult> Me(string returnUrl)
        {
            var model = new AccountMeViewModel {
                ReturnUrl = returnUrl
            };

            var submitter = await _submitterService.GetSubmitterByMicrosoftAccountAsync(User.GetEmailAddress());

            if (submitter != null)
            {
                model.ContactDetail = await _submitterService.GetContactDetailAsync(submitter.SubmitterID);
            }

            return(View(model));
        }
Пример #3
0
        public async Task <ActionResult> Me(AccountMeViewModel model, string returnUrl)
        {
            if (!ValidateContactDetail(model))
            {
                return(View(model));
            }

            var submitter = await _submitterService.SaveContactDetailAsync(User.GetEmailAddress(), model.ContactDetail);

            // add submitter claims
            HttpContext.GetOwinContext().Authentication.SignInAsSubmitter(submitter);

            if (string.IsNullOrEmpty(returnUrl))
            {
                return(RedirectToRoute(SiteRouteNames.Portal));
            }
            else
            {
                return(Redirect(returnUrl));
            }
        }