Exemplo n.º 1
0
        private void LoadValuesFromForm(CheckoutViewModel model)
        {
            // Email
            model.CurrentOrder.UserEmail = Request.Form["customeremail"];

            // Addresses
            model.BillShipSame = (Request.Form["chkbillsame"] != null);

            LoadAddressFromForm("shipping", model.CurrentOrder.ShippingAddress);
            if (model.BillShipSame)
            {
                model.CurrentOrder.ShippingAddress.CopyTo(model.CurrentOrder.BillingAddress);
            }
            else
            {
                LoadAddressFromForm("billing", model.CurrentOrder.BillingAddress);
            }
            // Save addresses to customer account
            if (model.IsLoggedIn)
            {
                model.CurrentOrder.ShippingAddress.CopyTo(model.CurrentOrder.ShippingAddress);
                if (model.BillShipSame == false)
                {
                    model.CurrentOrder.BillingAddress.CopyTo(model.CurrentCustomer.BillingAddress);
                }
                MTApp.MembershipServices.Customers.Update(model.CurrentCustomer);
            }

            //Shipping
            string shippingRateKey = Request.Form["shippingrate"];

            MTApp.OrderServices.OrdersRequestShippingMethodByUniqueKey(shippingRateKey, model.CurrentOrder, MTApp.CurrentStore);

            // Save Values so far in case of later errors
            MTApp.CalculateOrder(model.CurrentOrder);

            // Save Payment Information
            model.UseRewardsPoints = Request.Form["userewardspoints"] == "1";
            ApplyRewardsPoints(model);

            // Payment Methods
            LoadPaymentFromForm(model);
            SavePaymentSelections(model);

            // Instructions
            model.CurrentOrder.Instructions = Request.Form["specialinstructions"];

            // Agree to Terms
            var agreedValue = Request.Form["agreed"];

            if (!String.IsNullOrEmpty(agreedValue))
            {
                model.AgreedToTerms = true;
            }


            // Save all the changes to the order
            MTApp.OrderServices.Orders.Update(model.CurrentOrder);
            SessionManager.SaveOrderCookies(model.CurrentOrder, MTApp.CurrentStore);
        }
Exemplo n.º 2
0
        private void SaveShippingSelections(CheckoutViewModel model)
        {
            //Shipping
            string shippingRateKey = Request.Form["shippingrate"];

            MTApp.OrderServices.OrdersRequestShippingMethodByUniqueKey(shippingRateKey, model.CurrentOrder, MTApp.CurrentStore);


            // Save Values so far in case of later errors
            MTApp.CalculateOrder(model.CurrentOrder);

            // Save all the changes to the order
            MTApp.OrderServices.Orders.Update(model.CurrentOrder);
            SessionManager.SaveOrderCookies(model.CurrentOrder, MTApp.CurrentStore);
        }