github.com/benoitkugler/goacve@v0.0.0-20201217100549-151ce6e55dc8/server/vote/main.go (about)

     1  package vote
     2  
     3  import (
     4  	"database/sql"
     5  	"html/template"
     6  	"path/filepath"
     7  
     8  	"github.com/benoitkugler/goACVE/server/core/utils/mails"
     9  	"github.com/benoitkugler/goACVE/logs"
    10  )
    11  
    12  const EndpointVote = "/vote"
    13  
    14  type Controller struct {
    15  	db           *sql.DB
    16  	smtp         logs.SMTP
    17  	templateMail *template.Template
    18  }
    19  
    20  func NewController(db *sql.DB, smtp logs.SMTP, rootPath string) (Controller, error) {
    21  	ct := Controller{db: db, smtp: smtp}
    22  	ct.smtp.ReplyTo = "" // on désactive le conseil
    23  	var err error
    24  	ct.templateMail, err = template.New("").Funcs(mails.FuncMap).ParseFiles(filepath.Join(rootPath, "ressources/templates_mails/base.html"),
    25  		filepath.Join(rootPath, "server/vote/invitation.html"))
    26  	return ct, err
    27  }