diff options
Diffstat (limited to 'src/DevHive.Web')
4 files changed, 40 insertions, 31 deletions
diff --git a/src/DevHive.Web/Models/Identity/User/BaseUserWebModel.cs b/src/DevHive.Web/Models/Identity/User/BaseUserWebModel.cs new file mode 100644 index 0000000..ff9fac5 --- /dev/null +++ b/src/DevHive.Web/Models/Identity/User/BaseUserWebModel.cs @@ -0,0 +1,30 @@ +using System.ComponentModel.DataAnnotations; +using DevHive.Web.Models.Identity.Validation; + +namespace DevHive.Web.Models.Identity.User +{ + public class BaseUserWebModel + { + [Required] + [MinLength(3)] + [MaxLength(50)] + [OnlyAlphanumerics(ErrorMessage = "Username can only contain letters and digits!")] + public string UserName { get; set; } + + [Required] + [EmailAddress] + public string Email { get; set; } + + [Required] + [MinLength(3)] + [MaxLength(30)] + [OnlyLetters(ErrorMessage = "First name can only contain letters!")] + public string FirstName { get; set; } + + [Required] + [MinLength(3)] + [MaxLength(30)] + [OnlyLetters(ErrorMessage = "Last name can only contain letters!")] + public string LastName { get; set; } + } +} diff --git a/src/DevHive.Web/Models/Identity/User/RegisterWebModel.cs b/src/DevHive.Web/Models/Identity/User/RegisterWebModel.cs index 60e860a..22b178b 100644 --- a/src/DevHive.Web/Models/Identity/User/RegisterWebModel.cs +++ b/src/DevHive.Web/Models/Identity/User/RegisterWebModel.cs @@ -3,32 +3,10 @@ using DevHive.Web.Models.Identity.Validation; namespace DevHive.Web.Models.Identity.User { - public class RegisterWebModel + public class RegisterWebModel : BaseUserWebModel { [Required] - [MinLength(3)] - [MaxLength(50)] - [OnlyAlphanumerics(ErrorMessage = "Username can only contain letters and digits!")] - public string UserName { get; set; } - - [Required] - [EmailAddress] - public string Email { get; set; } - - [Required] - [MinLength(3)] - [MaxLength(30)] - [OnlyLetters(ErrorMessage = "First name can only contain letters!")] - public string FirstName { get; set; } - - [Required] - [MinLength(3)] - [MaxLength(30)] - [OnlyLetters(ErrorMessage = "Last name can only contain letters!")] - public string LastName { get; set; } - - [Required] [GoodPassword] - public string Password { get; set; } + public virtual string Password { get; set; } } } diff --git a/src/DevHive.Web/Models/Identity/User/UpdateUserWebModel.cs b/src/DevHive.Web/Models/Identity/User/UpdateUserWebModel.cs index e04e7da..fbe02a5 100644 --- a/src/DevHive.Web/Models/Identity/User/UpdateUserWebModel.cs +++ b/src/DevHive.Web/Models/Identity/User/UpdateUserWebModel.cs @@ -1,7 +1,12 @@ +using System.ComponentModel.DataAnnotations; +using DevHive.Web.Models.Identity.Validation; + namespace DevHive.Web.Models.Identity.User { - public class UpdateUserWebModel : UserWebModel + public class UpdateUserWebModel : BaseUserWebModel { - public string Password { get; set; } + [Required] + [GoodPassword] + public virtual string Password { get; set; } } } diff --git a/src/DevHive.Web/Models/Identity/User/UserWebModel.cs b/src/DevHive.Web/Models/Identity/User/UserWebModel.cs index e070d44..88ee1b7 100644 --- a/src/DevHive.Web/Models/Identity/User/UserWebModel.cs +++ b/src/DevHive.Web/Models/Identity/User/UserWebModel.cs @@ -1,11 +1,7 @@ namespace DevHive.Web.Models.Identity.User { - public class UserWebModel + public class UserWebModel : BaseUserWebModel { - public string UserName { get; set; } - public string Email { get; set; } - public string FirstName { get; set; } - public string LastName { get; set; } public string Role { get; set; } } } |
