Documentation
¶
Index ¶
- Constants
- func SafeHTTPClient(client *http.Client, log logrus.FieldLogger) *http.Client
- func SafeRoundtripper(trans http.RoundTripper, log logrus.FieldLogger) http.RoundTripper
- type MailTemplate
- type Mailer
- type MailmeMailer
- type TemplateCache
- type TemplateMailer
- func (m *TemplateMailer) EmailChangeMail(user *models.User, referrerURL string) error
- func (m *TemplateMailer) RecoveryMail(user *models.User, referrerURL string) error
- func (m TemplateMailer) Send(user *models.User, subject, body string, data map[string]interface{}) error
- func (m TemplateMailer) ValidateEmail(email string) error
Constants ¶
const TemplateExpiration = 10 * time.Second
TemplateExpiration is the time period that the template will be cached for
const TemplateRetries = 3
TemplateRetries is the amount of time MailMe will try to fetch a URL before giving up
Variables ¶
This section is empty.
Functions ¶
func SafeHTTPClient ¶
SafeHTTPClient returns an http.Client
func SafeRoundtripper ¶
func SafeRoundtripper(trans http.RoundTripper, log logrus.FieldLogger) http.RoundTripper
SafeRoundtripper returns an HTTP Roundtripper with a logger
Types ¶
type MailTemplate ¶
type MailTemplate struct {
// contains filtered or unexported fields
}
MailTemplate is a mail template
type Mailer ¶
type Mailer interface { RecoveryMail(user *models.User, referrerURL string) error EmailChangeMail(user *models.User, referrerURL string) error ValidateEmail(email string) error }
Mailer defines the interface a mailer must implement.
func NewMailer ¶
func NewMailer(instanceConfig *config.Configuration) Mailer
NewMailer returns a new mailer
type MailmeMailer ¶
type MailmeMailer struct { From string Host string Port int User string Pass string BaseURL string FuncMap template.FuncMap // contains filtered or unexported fields }
MailmeMailer lets MailMe send templated mails
type TemplateCache ¶
type TemplateCache struct {
// contains filtered or unexported fields
}
TemplateCache caches the requested templates
type TemplateMailer ¶
type TemplateMailer struct { SiteURL string Config *config.Configuration Mailer *MailmeMailer }
TemplateMailer will send mail and use templates from the site for easy mail styling
func (*TemplateMailer) EmailChangeMail ¶
func (m *TemplateMailer) EmailChangeMail(user *models.User, referrerURL string) error
EmailChangeMail sends an email change confirmation mail to a user
func (*TemplateMailer) RecoveryMail ¶
func (m *TemplateMailer) RecoveryMail(user *models.User, referrerURL string) error
RecoveryMail sends a password recovery mail
func (TemplateMailer) Send ¶
func (m TemplateMailer) Send(user *models.User, subject, body string, data map[string]interface{}) error
Send can be used to send one-off emails to users
func (TemplateMailer) ValidateEmail ¶
func (m TemplateMailer) ValidateEmail(email string) error
ValidateEmail returns nil if the email is valid, otherwise an error indicating the reason it is invalid