{{ $t("user.login") }}
@@ -191,7 +193,9 @@ export default defineComponent({
const allowSignup = computed(() => appInfo.value?.allowSignup || false);
const allowOidc = computed(() => appInfo.value?.enableOidc || false);
const oidcRedirect = computed(() => appInfo.value?.oidcRedirect || false);
- const oidcProviderName = computed(() => appInfo.value?.oidcProviderName || "OAuth")
+ const oidcProviderName = computed(() => appInfo.value?.oidcProviderName || "OAuth");
+ const allowPasswordLogin = computed(() => appInfo.value?.allowPasswordLogin ?? true);
+
whenever(
() => allowOidc.value && oidcRedirect.value && !isCallback() && !isDirectLogin() && !$auth.check().valid,
@@ -271,6 +275,7 @@ export default defineComponent({
form,
loggingIn,
allowSignup,
+ allowPasswordLogin,
allowOidc,
authenticate,
oidcAuthenticate,
diff --git a/mealie/core/settings/settings.py b/mealie/core/settings/settings.py
index e89b2e631..c839225af 100644
--- a/mealie/core/settings/settings.py
+++ b/mealie/core/settings/settings.py
@@ -129,6 +129,7 @@ class AppSettings(AppLoggingSettings):
GIT_COMMIT_HASH: str = "unknown"
ALLOW_SIGNUP: bool = False
+ ALLOW_PASSWORD_LOGIN: bool = True
DAILY_SCHEDULE_TIME: str = "23:45"
"""Local server time, in HH:MM format. See `DAILY_SCHEDULE_TIME_UTC` for the parsed UTC equivalent"""
diff --git a/mealie/routes/admin/admin_about.py b/mealie/routes/admin/admin_about.py
index e92013bb8..5986cc4f0 100644
--- a/mealie/routes/admin/admin_about.py
+++ b/mealie/routes/admin/admin_about.py
@@ -29,6 +29,7 @@ class AdminAboutController(BaseAdminController):
default_group=settings.DEFAULT_GROUP,
default_household=settings.DEFAULT_HOUSEHOLD,
allow_signup=settings.ALLOW_SIGNUP,
+ allow_password_login=settings.ALLOW_PASSWORD_LOGIN,
build_id=settings.GIT_COMMIT_HASH,
recipe_scraper_version=recipe_scraper_version.__version__,
enable_oidc=settings.OIDC_AUTH_ENABLED,
diff --git a/mealie/routes/app/app_about.py b/mealie/routes/app/app_about.py
index 27c2ac170..ae9b8e7aa 100644
--- a/mealie/routes/app/app_about.py
+++ b/mealie/routes/app/app_about.py
@@ -43,6 +43,7 @@ def get_app_info(session: Session = Depends(generate_session)):
oidc_provider_name=settings.OIDC_PROVIDER_NAME,
enable_openai=settings.OPENAI_ENABLED,
enable_openai_image_services=settings.OPENAI_ENABLED and settings.OPENAI_ENABLE_IMAGE_SERVICES,
+ allow_password_login=settings.ALLOW_PASSWORD_LOGIN,
)
diff --git a/mealie/schema/admin/about.py b/mealie/schema/admin/about.py
index 0fb4eb73f..fdc14da04 100644
--- a/mealie/schema/admin/about.py
+++ b/mealie/schema/admin/about.py
@@ -15,6 +15,7 @@ class AppInfo(MealieModel):
version: str
demo_status: bool
allow_signup: bool
+ allow_password_login: bool
default_group_slug: str | None = None
default_household_slug: str | None = None
enable_oidc: bool