using Gestor.Model.Domain.Generic; using Gestor.Model.Helper; using Gestor.Model.Resources; using Newtonsoft.Json; using System; using System.Collections.Generic; using System.Runtime.CompilerServices; namespace Gestor.Model.Domain.Ferramentas { public class AgendaEmail : EmailBase, IDomain { public Gestor.Model.Domain.Ferramentas.Agenda Agenda { get; set; } public bool Selecionado { get; set; } [JsonIgnore] public Func>> ValidationEvent { get { AgendaEmail agendaEmail = this; return new Func>>(agendaEmail.Validate); } } public AgendaEmail() { } public List> Validate() { List> keyValuePairs = ValidationHelper.AddValue(); if (string.IsNullOrWhiteSpace(base.Email)) { keyValuePairs.AddValue("Email", Messages.Obrigatorio, true); } else if (base.Email.Length > 80) { keyValuePairs.AddValue("Email", string.Format(Messages.MaiorQueLimite, 80), true); } else if (!base.Email.ValidacaoEmail()) { keyValuePairs.AddValue("Email", Messages.Invalido, true); } return keyValuePairs; } } }