using PrivaPub.ClientModels.Resources; using PrivaPub.ClientModels.ValidatorAttributes; using System.ComponentModel.DataAnnotations; namespace PrivaPub.ClientModels.Group { public class InsertGroupForm { [Required(ErrorMessageResourceName = "Required", ErrorMessageResourceType = typeof(ErrorsResource))] public string AvatarId { get; set; } [Required(ErrorMessageResourceName = "Required", ErrorMessageResourceType = typeof(ErrorsResource)), StringLength(32, MinimumLength = 3, ErrorMessageResourceName = "StringLengthMinMax", ErrorMessageResourceType = typeof(ErrorsResource)), RegularExpression("^[a-z0-9_]+$", ErrorMessageResourceName = "EmptySpacesNotAllowed", ErrorMessageResourceType = typeof(ErrorsResource)), NoWhiteSpaces] public string UserName { get; set; } [Required(ErrorMessageResourceName = "Required", ErrorMessageResourceType = typeof(ErrorsResource)), StringLength(64, ErrorMessageResourceName = "MaxLengthString", ErrorMessageResourceType = typeof(ErrorsResource))] public string Name { get; set; } [StringLength(2000, ErrorMessageResourceName = "MaxLengthString", ErrorMessageResourceType = typeof(ErrorsResource))] public string Description { get; set; } public string InvitationPassword { get; set; } public bool IsDiscoverable { get; set; } = true; public bool ManuallyApprovesMembers { get; set; } } }