using Core.DomainObjects.Pages;
using WeatherForecast.Models.Abstractions;
using WeatherForecast.Models.PageSections;
namespace WeatherForecast.Models.Pages {
  /// 
  /// 
  /// 
  public class ShopCheckoutPageModel : PageModelBase {
    /// 
    /// 
    /// 
    public BillingAddressSectionModel BillingAddressSection { get; set; }
    /// 
    /// 
    /// 
    public ShippingAddressSectionModel ShippingAddressSection { get; set; }
    /// 
    /// 
    /// 
    public CheckoutSettingsSectionModel SettingsSection { get; set; }
    /// 
    /// 
    /// 
    public CheckoutSummarySectionModel SummarySection { get; set; }
    /// 
    /// 
    /// 
    public PaymentSectionModel PaymentSection { get; set; }
    /// 
    /// 
    /// 
    public FormItemModel Submit { get; set; }
    /// 
    /// 
    /// 
    /// 
    public ShopCheckoutPageModel(ShopCheckoutPage shopCheckoutPage) : base(shopCheckoutPage) {
      BillingAddressSection = new BillingAddressSectionModel(shopCheckoutPage.BillingAddressSection);
      ShippingAddressSection = new ShippingAddressSectionModel(shopCheckoutPage.ShippingAddressSection);
      SettingsSection = new CheckoutSettingsSectionModel(shopCheckoutPage.SettingsSection);
      SummarySection = new CheckoutSummarySectionModel(shopCheckoutPage.SummarySection);
      PaymentSection = new PaymentSectionModel(shopCheckoutPage.PaymentSection);
      Submit = new FormItemModel(shopCheckoutPage.Submit);
    }
  }
}