Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
View Source
var ( // DefaultMailer is the mailer used. DefaultMailer Mailer // DefaultTemplateBuilder is used to generate templates DefaultTemplateBuilder TemplateBuilder )
Functions ¶
This section is empty.
Types ¶
type Mailer ¶
type Mailer interface { // Send a message. Send(dest string, subject string, text []byte, html []byte) error }
Mailer sends Messages.
type MarkdownBuilder ¶
type MarkdownBuilder struct {
Provider MarkdownProvider
}
MarkdownBuilder generates email templates from markdown.
func NewMarkdownBuilder ¶
func NewMarkdownBuilder(provider MarkdownProvider) *MarkdownBuilder
NewMarkdownBuilder creates a new MarkdownBuilder from a Provider.
type MarkdownProvider ¶
type MarkdownProvider interface { // Get the markdown template by name and language (returns *text/template.Template). Get(templateName, lang string) (*text.Template, error) // Body for html messages by language (returns *html/template.Template). Body(lang string) (*html.Template, error) }
MarkdownProvider provides templates for markdown Builder.
type Message ¶
type Message struct { Dest user.User `json:"dest"` Subject string `json:"subject"` Template string `json:"template"` Data interface{} `json:"data"` }
Message represents an email to be sent.
type TemplateBuilder ¶
type TemplateBuilder interface { // GenerateText for data in language lang Text(template, lang string, data interface{}) ([]byte, error) // GenerateHTML for data in language lang HTML(template, lang string, data interface{}) ([]byte, error) }
TemplateBuilder generates the content of a Message.
Click to show internal directories.
Click to hide internal directories.