Release v2.2: admin auth settings, Passkey RP ID, Cloudflare and Google captcha
Co-authored-by: Cursor <cursoragent@cursor.com>
This commit is contained in:
@@ -52,5 +52,42 @@ def update_settings_from_form(form):
|
||||
settings.smtp_from_name = form.get("smtp_from_name", "").strip() or "PhotoHost"
|
||||
settings.smtp_use_tls = form.get("smtp_use_tls") == "on"
|
||||
|
||||
settings.registration_enabled = form.get("registration_enabled") == "on"
|
||||
settings.password_login_enabled = form.get("password_login_enabled") == "on"
|
||||
settings.passkey_enabled = form.get("passkey_enabled") == "on"
|
||||
settings.webauthn_rp_id = form.get("webauthn_rp_id", "").strip() or None
|
||||
settings.webauthn_rp_name = form.get("webauthn_rp_name", "").strip() or "PhotoHost"
|
||||
settings.webauthn_origin = form.get("webauthn_origin", "").strip() or None
|
||||
|
||||
provider = form.get("captcha_provider", "none").strip()
|
||||
if provider not in ("none", "turnstile", "recaptcha_v2", "recaptcha_v3"):
|
||||
provider = "none"
|
||||
settings.captcha_provider = provider
|
||||
settings.turnstile_site_key = form.get("turnstile_site_key", "").strip() or None
|
||||
if form.get("turnstile_secret_key", "").strip():
|
||||
settings.turnstile_secret_key = form.get("turnstile_secret_key", "").strip()
|
||||
settings.recaptcha_v2_site_key = form.get("recaptcha_v2_site_key", "").strip() or None
|
||||
if form.get("recaptcha_v2_secret_key", "").strip():
|
||||
settings.recaptcha_v2_secret_key = form.get("recaptcha_v2_secret_key", "").strip()
|
||||
settings.recaptcha_v3_site_key = form.get("recaptcha_v3_site_key", "").strip() or None
|
||||
if form.get("recaptcha_v3_secret_key", "").strip():
|
||||
settings.recaptcha_v3_secret_key = form.get("recaptcha_v3_secret_key", "").strip()
|
||||
try:
|
||||
settings.recaptcha_v3_min_score = max(0.0, min(1.0, float(form.get("recaptcha_v3_min_score") or 0.5)))
|
||||
except ValueError:
|
||||
settings.recaptcha_v3_min_score = 0.5
|
||||
settings.captcha_on_login = form.get("captcha_on_login") == "on"
|
||||
settings.captcha_on_register = form.get("captcha_on_register") == "on"
|
||||
settings.captcha_on_forgot_password = form.get("captcha_on_forgot_password") == "on"
|
||||
|
||||
db.session.commit()
|
||||
return settings
|
||||
|
||||
|
||||
def get_auth_public_settings():
|
||||
settings = get_settings()
|
||||
return {
|
||||
"registration_enabled": settings.registration_enabled,
|
||||
"password_login_enabled": settings.password_login_enabled,
|
||||
"passkey_enabled": settings.passkey_enabled,
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user