diff --git a/controller/config.go b/controller/config.go index 5a3c8c40..012827b6 100644 --- a/controller/config.go +++ b/controller/config.go @@ -69,6 +69,7 @@ type InfluxConfig struct { } type MaintenanceConfig struct { + Account *AccountMaintenanceConfig Registration *RegistrationMaintenanceConfig } @@ -78,6 +79,12 @@ type RegistrationMaintenanceConfig struct { BatchLimit int } +type AccountMaintenanceConfig struct { + ExpirationTimeout time.Duration + CheckFrequency time.Duration + BatchLimit int +} + const Unlimited = -1 type LimitsConfig struct { @@ -95,6 +102,11 @@ func DefaultConfig() *Config { ServiceName: "metrics", }, Maintenance: &MaintenanceConfig{ + Account: &AccountMaintenanceConfig{ + ExpirationTimeout: time.Minute * 15, + CheckFrequency: time.Minute * 15, + BatchLimit: 500, + }, Registration: &RegistrationMaintenanceConfig{ ExpirationTimeout: time.Hour * 24, CheckFrequency: time.Hour, diff --git a/controller/controller.go b/controller/controller.go index 7fdb9778..970035dc 100644 --- a/controller/controller.go +++ b/controller/controller.go @@ -80,8 +80,13 @@ func Run(inCfg *Config) error { cancel() }() - if cfg.Maintenance != nil && cfg.Maintenance.Registration != nil { - go newMaintenanceAgent(ctx, cfg.Maintenance).run() + if cfg.Maintenance != nil { + if cfg.Maintenance.Registration != nil { + go newRegistrationMaintenanceAgent(ctx, cfg.Maintenance.Registration).run() + } + if cfg.Maintenance.Account != nil { + go newAccountMaintenanceAgent(ctx, cfg.Maintenance.Account).run() + } } server := rest_server_zrok.NewServer(api) diff --git a/controller/emailUi/forgotPassword.gohtml b/controller/emailUi/forgotPassword.gohtml index c9de434c..6ad373bc 100644 --- a/controller/emailUi/forgotPassword.gohtml +++ b/controller/emailUi/forgotPassword.gohtml @@ -1,11 +1,192 @@
- -Please click this link to change your zrok account password.
Please click this to change your zrok account password.