Validate makes the form validatable by implementing [validation.Validatable] interface.
()
| 34 | |
| 35 | // Validate makes the form validatable by implementing [validation.Validatable] interface. |
| 36 | func (form *TestEmailSend) Validate() error { |
| 37 | return validation.ValidateStruct(form, |
| 38 | validation.Field( |
| 39 | &form.Collection, |
| 40 | validation.Length(1, 255), |
| 41 | validation.By(form.checkAuthCollection), |
| 42 | ), |
| 43 | validation.Field( |
| 44 | &form.Email, |
| 45 | validation.Required, |
| 46 | validation.Length(1, 255), |
| 47 | is.EmailFormat, |
| 48 | ), |
| 49 | validation.Field( |
| 50 | &form.Template, |
| 51 | validation.Required, |
| 52 | validation.In( |
| 53 | TestTemplateVerification, |
| 54 | TestTemplatePasswordReset, |
| 55 | TestTemplateEmailChange, |
| 56 | TestTemplateOTP, |
| 57 | TestTemplateAuthAlert, |
| 58 | ), |
| 59 | ), |
| 60 | ) |
| 61 | } |
| 62 | |
| 63 | func (form *TestEmailSend) checkAuthCollection(value any) error { |
| 64 | v, _ := value.(string) |