1
0
mirror of https://github.com/volatiletech/authboss.git synced 2024-11-28 08:58:38 +02:00
authboss/config.go

65 lines
1.4 KiB
Go
Raw Normal View History

package authboss
import (
"io"
"io/ioutil"
2015-01-26 01:40:57 +02:00
"net/smtp"
"time"
)
// Config holds all the configuration for both authboss and it's modules.
type Config struct {
// MountPath is the path to mount the router at.
MountPath string
// ViewsPath is the path to overiding view template files.
ViewsPath string
// HostName is self explanitory
HostName string
AuthLogoutRoute string
AuthLoginSuccessRoute string
RecoverInitiateRedirect string
RecoverInitiateSuccessFlash string
2015-01-18 09:37:05 +02:00
Policies []Validator
ConfirmFields []string
2015-01-26 04:13:32 +02:00
ExpireAfter time.Duration
LockAfter int
LockWindow time.Duration
LockDuration time.Duration
EmailFrom string
EmailSubjectPrefix string
2015-01-26 01:40:57 +02:00
SMTPAddress string
SMTPAuth smtp.Auth
2015-01-26 01:40:57 +02:00
Storer Storer
CookieStoreMaker CookieStoreMaker
SessionStoreMaker SessionStoreMaker
2015-01-27 12:11:19 +02:00
XSRFMaker XSRF
LogWriter io.Writer
Callbacks *Callbacks
Mailer Mailer
}
// NewConfig creates a new config full of default values ready to override.
func NewConfig() *Config {
return &Config{
2015-01-08 09:45:41 +02:00
MountPath: "/",
ViewsPath: "/",
2015-01-11 09:12:40 +02:00
AuthLogoutRoute: "/",
2015-01-19 00:24:20 +02:00
AuthLoginSuccessRoute: "/",
RecoverInitiateRedirect: "/login",
RecoverInitiateSuccessFlash: "An email has been sent with further insructions on how to reset your password",
LogWriter: ioutil.Discard,
2015-01-16 00:01:01 +02:00
Callbacks: NewCallbacks(),
2015-01-26 01:40:57 +02:00
Mailer: LogMailer(ioutil.Discard),
}
}