using HealthchoiceMVC.Models; using System.Collections.Generic; using System.ComponentModel.DataAnnotations; using System.ComponentModel.DataAnnotations.Schema; using System.Web.UI; namespace HealthchoiceMVC.NonDbModels { public class ExternalLoginConfirmationViewModel { [Required] [Display(Name = "Username/Email")] [EmailAddress] public string UserName { get; set; } //[Required] //[EmailAddress] //[Display(Name = "Email")] //public string Email { get; set; } [Required] [StringLength(100)] [Display(Name = "First name")] public string FirstName { get; set; } [Required] [StringLength(100)] [Display(Name = "Last name")] public string LastName { get; set; } [Required] [StringLength(50, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] [Display(Name = "Cellphone number")] public string ContactNumber { get; set; } [Display(Name = "Register As")] public int AccountType { get; set; } } public class ExternalLoginListViewModel { public string ReturnUrl { get; set; } } public class SendCodeViewModel { public string SelectedProvider { get; set; } public ICollection Providers { get; set; } public string ReturnUrl { get; set; } public bool RememberMe { get; set; } } public class VerifyCodeViewModel { [Required] public string Provider { get; set; } [Required] [Display(Name = "Code")] public string Code { get; set; } public string ReturnUrl { get; set; } [Display(Name = "Remember this browser?")] public bool RememberBrowser { get; set; } public bool RememberMe { get; set; } } public class ForgotViewModel { [Required] [Display(Name = "Email")] public string Email { get; set; } } public class LoginViewModel { [Required] [Display(Name = "Email")] [EmailAddress] public string Email { get; set; } [Required] [DataType(DataType.Password)] [Display(Name = "Password")] public string Password { get; set; } [Display(Name = "Remember me?")] public bool RememberMe { get; set; } } public class RegisterViewModel { [Required] [EmailAddress] [Display(Name = "Email")] public string Email { get; set; } [Required] [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] [DataType(DataType.Password)] [Display(Name = "Password")] public string Password { get; set; } [Required] [DataType(DataType.Password)] [Display(Name = "Confirm password")] [Compare("Password", ErrorMessage = "The password and confirmation password do not match.")] public string ConfirmPassword { get; set; } [Required] [StringLength(100)] [Display(Name = "First name")] public string FirstName { get; set; } [Required] [StringLength(100)] [Display(Name = "Last name")] public string LastName { get; set; } [Required] [StringLength(50, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] [Display(Name = "Cellphone number")] public string ContactNumber { get; set; } [Display(Name = "Register As")] public int AccountType { get; set; } } [NotMapped] public class RegisterPracticeViewModel : Practice { [Required] [NotMapped] [Display(Name = "Practice Manager Title")] public int TitleId { get; set; } [Required] [NotMapped] [EmailAddress] [Display(Name = "Practice Manager Email")] public string Email { get; set; } [Required] [NotMapped] [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] [DataType(DataType.Password)] [Display(Name = "Password")] public string Password { get; set; } [Required] [NotMapped] [DataType(DataType.Password)] [Display(Name = "Confirm password")] [Compare("Password", ErrorMessage = "The password and confirmation password do not match.")] public string ConfirmPassword { get; set; } [Required] [NotMapped] [StringLength(100)] [Display(Name = "Practice Manager First Name")] public string FirstName { get; set; } [Required] [NotMapped] [StringLength(100)] [Display(Name = "Practice Manager Surname")] public string LastName { get; set; } [Required] [NotMapped] [Display(Name = "ID Type")] public int? IDTypeId { get; set; } = 3; [Required] [NotMapped] [Display(Name = "Gender")] [StringLength(1)] public string Gender { get; set; } = "N"; [Required] [NotMapped] [StringLength(100)] [Display(Name = "Practice Manager ID / Passport Number")] public string IdentityNumber { get; set; } [Required] [NotMapped] [StringLength(50, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] [Display(Name = "Practice Manager Contact Number")] public string ContactNumber { get; set; } [NotMapped] [Display(Name = "Register a")] public int AccountType { get; set; } [Display(Name = "I have read and accept the terms of use")] //[Range(typeof(bool), "true", "true", ErrorMessage = "You have to accept our terms and conditions.")] public bool TermsAndConditions { get; set; } } public class ResetPasswordViewModel { [Required] [EmailAddress] [Display(Name = "Email")] public string Email { get; set; } [Required] [StringLength(100, ErrorMessage = "The {0} must be at least {2} characters long.", MinimumLength = 6)] [DataType(DataType.Password)] [Display(Name = "Password")] public string Password { get; set; } [DataType(DataType.Password)] [Display(Name = "Confirm password")] [Compare("Password", ErrorMessage = "The password and confirmation password do not match.")] public string ConfirmPassword { get; set; } public string Code { get; set; } } public class ForgotPasswordViewModel { [Required] [EmailAddress] [Display(Name = "Email")] public string Email { get; set; } } }