email domain blacklist live setting
This commit is contained in:
parent
fd263e1196
commit
a129c8cddb
|
@ -10,6 +10,7 @@ object Dev extends LilaController {
|
|||
|
||||
private lazy val settingsList = List[lila.memo.SettingStore[_]](
|
||||
Env.security.ugcArmedSetting,
|
||||
Env.security.emailBlacklistSetting,
|
||||
Env.irwin.irwinModeSetting,
|
||||
Env.api.assetVersionSetting,
|
||||
Env.explorer.indexFlowSetting,
|
||||
|
|
|
@ -5,6 +5,7 @@ import play.api.Play.current
|
|||
|
||||
final class DisposableEmailDomain(
|
||||
providerUrl: String,
|
||||
blacklistStr: () => String,
|
||||
busOption: Option[lila.common.Bus]
|
||||
) {
|
||||
|
||||
|
@ -41,7 +42,9 @@ final class DisposableEmailDomain(
|
|||
}
|
||||
|
||||
def apply(domain: String) =
|
||||
!DisposableEmailDomain.mainstreamDomains(domain.toLowerCase) && domains(domain)
|
||||
!DisposableEmailDomain.mainstreamDomains(domain.toLowerCase) && {
|
||||
domains.contains(domain) || blacklistStr().split(' ').contains(domain)
|
||||
}
|
||||
}
|
||||
|
||||
private object DisposableEmailDomain {
|
||||
|
|
|
@ -148,8 +148,15 @@ final class Env(
|
|||
|
||||
lazy val emailAddressValidator = new EmailAddressValidator(disposableEmailDomain)
|
||||
|
||||
lazy val emailBlacklistSetting = settingStore[String](
|
||||
"emailBlacklist",
|
||||
default = "",
|
||||
text = "Blacklisted email domains separated by a space".some
|
||||
)
|
||||
|
||||
private lazy val disposableEmailDomain = new DisposableEmailDomain(
|
||||
providerUrl = DisposableEmailProviderUrl,
|
||||
blacklistStr = emailBlacklistSetting.get,
|
||||
busOption = system.lilaBus.some
|
||||
)
|
||||
|
||||
|
|
Loading…
Reference in a new issue