using Core.DomainObjects.Pages;
using WeatherForecast.Models.Abstractions;

namespace WeatherForecast.Models.Pages {

  /// <summary>
  /// 
  /// </summary>
  public class SignInPageModel : PageModelBase<SignInPage> {

    /// <summary>
    /// 
    /// </summary>
    public string Title { get; set; }

    /// <summary>
    /// 
    /// </summary>
    public FormItemModel Email { get; set; }

    /// <summary>
    /// 
    /// </summary>
    public FormItemModel Password { get; set; }

    /// <summary>
    /// 
    /// </summary>
    public string DontHaveAnAccount { get; set; }

    /// <summary>
    /// 
    /// </summary>
    public LinkModel SignUpLink { get; set; }

    /// <summary>
    /// 
    /// </summary>
    public FormItemModel Submit { get; set; }

    /// <summary>
    /// 
    /// </summary>
    /// <param name="signInPage"></param>
    public SignInPageModel(SignInPage signInPage) : base(signInPage) {

      Title = signInPage.Title;
      Email = new FormItemModel(signInPage.Email);
      Password = new FormItemModel(signInPage.Password);
      DontHaveAnAccount = signInPage.DontHaveAnAccount;
      SignUpLink = new LinkModel(signInPage.SignUpLink);
      Submit = new FormItemModel(signInPage.Submit);
    }
  }
}
