Example #1
0
        public JsonResult Vip(VipModel model)
        {
            var customer = this.context.Customer;

            Transactional.Execute(() => {
                var vip = new VipRequest {
                    Customer    = customer,
                    Email       = model.VipEmail,
                    FullName    = model.VipFullName,
                    Ip          = Request.ServerVariables["REMOTE_ADDR"],
                    Phone       = model.VipPhone,
                    RequestDate = DateTime.UtcNow
                };
                this.vipRequestRepository.SaveOrUpdate(vip);


                if (customer != null)
                {
                    customer.Vip = true;
                }
            });

            var c = new ServiceClient();

            c.Instance.VipRequest(customer != null ? customer.Id : 0, model.VipFullName, model.VipEmail, model.VipPhone);
            return(Json(new {}));
        }         // Vip
Example #2
0
        public JsonResult Vip()
        {
            var vipModel = new VipModel {
                VipEnabled = CurrentValues.Instance.VipEnabled
            };

            if (vipModel.VipEnabled)
            {
                vipModel.Ip = Request.ServerVariables["REMOTE_ADDR"];
                if (this.context.Customer != null)
                {
                    vipModel.VipEmail     = this.context.Customer.Name;
                    vipModel.RequestedVip = this.context.Customer.Vip;

                    if (this.context.Customer.PersonalInfo != null)
                    {
                        vipModel.VipFullName = this.context.Customer.PersonalInfo.Fullname;
                        vipModel.VipPhone    = string.IsNullOrEmpty(this.context.Customer.PersonalInfo.DaytimePhone)
                                                                            ? this.context.Customer.PersonalInfo.MobilePhone
                                                                            : this.context.Customer.PersonalInfo.DaytimePhone;
                    }
                }
                else
                {
                    var numOfRequests = this.vipRequestRepository.CountRequestsPerIp(vipModel.Ip);
                    if (numOfRequests >= CurrentValues.Instance.VipMaxRequests)
                    {
                        vipModel.RequestedVip = true;
                    }
                }
            }

            return(Json(vipModel, JsonRequestBehavior.AllowGet));
        }         // Vip