1
0
mirror of https://github.com/kataras/iris.git synced 2025-12-18 02:17:05 +00:00

E-mail sender

This commit is contained in:
Makis Maropoulos
2016-06-01 15:29:38 +03:00
parent 83d3e076a4
commit 7f56cdea8c
6 changed files with 119 additions and 1 deletions

17
iris.go
View File

@@ -15,6 +15,7 @@ import (
"github.com/fatih/color"
"github.com/kataras/iris/config"
"github.com/kataras/iris/logger"
"github.com/kataras/iris/mail"
"github.com/kataras/iris/render/rest"
"github.com/kataras/iris/render/template"
"github.com/kataras/iris/server"
@@ -80,6 +81,7 @@ type (
templates *template.Template
sessionManager *sessions.Manager
websocketServer websocket.Server
mailService mail.Service
logger *logger.Logger
gzipWriterPool sync.Pool // this pool is used everywhere needed in the iris for example inside party-> StaticSimple
}
@@ -130,6 +132,15 @@ func (s *Iris) initWebsocketServer() {
}
}
func (s *Iris) initMailService() {
if s.mailService == nil {
// enable mail sender service if configs are valid
if s.config.Mail.Host != "" && s.config.Mail.Username != "" && s.config.Mail.Password != "" {
s.mailService = mail.New(s.config.Mail)
}
}
}
func (s *Iris) printBanner() {
c := color.New(color.FgHiBlue).Add(color.Bold)
printTicker := utils.NewTicker()
@@ -321,3 +332,9 @@ func (s *Iris) Websocket() websocket.Server {
s.initWebsocketServer() // for any case the user called .Websocket() before server's listen
return s.websocketServer
}
// Mail returns the mail sender service
func (s *Iris) Mail() mail.Service {
s.initMailService()
return s.mailService
}