コード例 #1
0
        public async Task <JsonResult> EditEmail(string tenantUid, string username, string customerToken, string email, string language)
        {
            var origin          = TenantHelper.GetCurrentTenantUrl(contentService, tenantUid);
            var verificationUrl = new Uri(new Uri(origin), helper.GetConfirmVerificationUrl(tenantUid, origin, email, language));

            var newEmail = new EditEmail
            {
                Username        = LoginSession.Username,
                Email           = email,
                VerificationUrl = verificationUrl.ToString()
            };
            var key           = ApiKeyCache.GetByTenantUid(tenantUid);
            var authorization = await new Authorization().GetAuthorizationAsync(key);

            var response = await apiService.EditEmailAsync(newEmail, tenantUid, origin, customerToken);

            return(Json(response, JsonRequestBehavior.DenyGet));
        }
コード例 #2
0
        public async Task <JsonResult> Register(string tenantUid,
                                                string email,
                                                string username,
                                                string password,
                                                string mobile,
                                                string title             = "",
                                                string firstName         = "",
                                                string lastName          = "",
                                                string gender            = "",
                                                string day               = "",
                                                string month             = "",
                                                string year              = "",
                                                string dob               = "",
                                                string address1          = "",
                                                string address2          = "",
                                                string address3          = "",
                                                string town              = "",
                                                string county            = "",
                                                string postalcode        = "",
                                                string currency          = "",
                                                string odds              = "",
                                                string language          = "",
                                                string country           = "",
                                                string timeZone          = "",
                                                string bonusCode         = "",
                                                string referrer          = "",
                                                string notify            = "",
                                                string notifyViaPlatform = "",
                                                string notifyViaEmail    = "",
                                                string notifyViaSMS      = "")
        {
            var origin        = TenantHelper.GetCurrentTenantUrl(contentService, tenantUid);
            var key           = ApiKeyCache.GetByTenantUid(tenantUid);
            var authorization = await new Authorization().GetAuthorizationAsync(key);

            if (dob == "")
            {
                if (year != "" && month != "" && day != "")
                {
                    dob = year + "-" + month + "-" + day;
                }
            }
            if (Request.Cookies.AllKeys.Contains("referrer"))
            {
                if (!String.IsNullOrEmpty(Request.Cookies.Get("referrer").Value))
                {
                    referrer = Request.Cookies.Get("referrer").Value;
                }
            }

            CustomerRegisterResponseContent response = (CustomerRegisterResponseContent)await verificationService.CustomerRegisterAsync(
                tenantUid : tenantUid.ToString(),
                origin : origin,
                email : email,
                username : username,
                password : password,
                mobile : mobile.TrimStart(new Char[] { '0' }),
                title : title,
                firstName : firstName,
                lastName : lastName,
                gender : gender,
                dob : dob,
                address1 : address1,
                address2 : address2,
                address3 : address3,
                town : town,
                county : county,
                postCode : postalcode,
                currency : currency,
                odds : odds,
                language : language,
                country : country,
                timeZone : timeZone,
                bonusCode : bonusCode,
                referrer : referrer,
                notify : notify == "on"? "true" : "false",
                notifyViaPlatform : notifyViaPlatform == "on"? "true" : "false",
                notifyViaEmail : notifyViaEmail == "on"? "true" : "false",
                notifyViaSMS : notifyViaSMS == "on"? "true" : "false",
                authorization : authorization.AccessToken);

            if (response.Success && !response.Payload.IsActive)
            {
                var verificationUrl      = helper.GetConfirmVerificationUrl(tenantUid, origin, email, language, response.Payload.Id.ToString());
                var postRegisterResponse = await verificationService.VerificationEmailAsync(tenantUid.ToString(), origin, verificationUrl, email, language, authorization.AccessToken);

                postRegisterResponse.RelatedResponse = response;
                return(Json(postRegisterResponse, JsonRequestBehavior.DenyGet));
            }
            return(Json(response, JsonRequestBehavior.DenyGet));
        }