aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/api/identity.rs4
-rw-r--r--src/config.rs4
2 files changed, 8 insertions, 0 deletions
diff --git a/src/api/identity.rs b/src/api/identity.rs
index fe40dcd2..1990e35b 100644
--- a/src/api/identity.rs
+++ b/src/api/identity.rs
@@ -108,6 +108,10 @@ fn _password_login(data: ConnectData, conn: DbConn, ip: ClientIp) -> JsonResult
if CONFIG.mail_enabled() && new_device {
if let Err(e) = mail::send_new_device_logged_in(&user.email, &ip.ip.to_string(), &device.updated_at, &device.name) {
error!("Error sending new device email: {:#?}", e);
+
+ if CONFIG.require_device_email() {
+ err!("Could not send login notification email. Please contact your administrator.")
+ }
}
}
diff --git a/src/config.rs b/src/config.rs
index 85d97511..eaf8127c 100644
--- a/src/config.rs
+++ b/src/config.rs
@@ -269,6 +269,10 @@ make_config! {
/// Note that the checkbox would still be present, but ignored.
disable_2fa_remember: bool, true, def, false;
+ /// Require new device emails |> When a user logs in an email is required to be sent.
+ /// If sending the email fails the login attempt will fail.
+ require_device_email: bool, true, def, false;
+
/// Reload templates (Dev) |> When this is set to true, the templates get reloaded with every request.
/// ONLY use this during development, as it can slow down the server
reload_templates: bool, true, def, false;