diff --git a/frigate/api/auth.py b/frigate/api/auth.py index d1c968818..641131208 100644 --- a/frigate/api/auth.py +++ b/frigate/api/auth.py @@ -812,6 +812,11 @@ limiter = Limiter(key_func=get_remote_addr) ) @limiter.limit(limit_value=rateLimiter.get_limit) def login(request: Request, body: AppPostLoginBody): + if not request.app.frigate_config.auth.enabled: + return JSONResponse( + content={"message": "Authentication is disabled"}, status_code=404 + ) + JWT_COOKIE_NAME = request.app.frigate_config.auth.cookie_name JWT_COOKIE_SECURE = request.app.frigate_config.auth.cookie_secure JWT_SESSION_LENGTH = request.app.frigate_config.auth.session_length diff --git a/web/src/components/config-form/theme/widgets/ObjectLabelSwitchesWidget.tsx b/web/src/components/config-form/theme/widgets/ObjectLabelSwitchesWidget.tsx index d3d6bdbe3..072b9c017 100644 --- a/web/src/components/config-form/theme/widgets/ObjectLabelSwitchesWidget.tsx +++ b/web/src/components/config-form/theme/widgets/ObjectLabelSwitchesWidget.tsx @@ -2,7 +2,7 @@ import { WidgetProps } from "@rjsf/utils"; import { SwitchesWidget } from "./SwitchesWidget"; import { FormContext } from "./SwitchesWidget"; -import { getTranslatedLabel } from "@/utils/i18n"; +import i18n, { getTranslatedLabel } from "@/utils/i18n"; import { FrigateConfig } from "@/types/frigateConfig"; import { JsonObject } from "@/types/configForm"; @@ -76,7 +76,12 @@ function getObjectLabels(context: FormContext): string[] { ...sourceLabels, ...formDataLabels, ]); - return [...combinedLabels].sort(); + return [...combinedLabels].sort((a, b) => + getObjectLabelDisplayName(a).localeCompare( + getObjectLabelDisplayName(b), + i18n.language, + ), + ); } function getObjectLabelDisplayName(label: string): string { @@ -94,6 +99,7 @@ export function ObjectLabelSwitchesWidget(props: WidgetProps) { i18nKey: "objectLabels", listClassName: "relative max-h-none overflow-visible md:max-h-64 md:overflow-y-auto md:overscroll-contain md:scrollbar-container", + enableSearch: true, }} /> );