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); }
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); }