{t("admin.loading_users")}
+{adminAccessDeniedDetail ?? t("admin.access_denied")}
+ ++ {successMessage} +
+ )} + + {loading && ( +{t("admin.loading_users")}
++ {t("admin.reassign_duty")}: {t("admin.select_user")} +
+ {dutyOnly.length === 0 ? ( +{t("admin.no_duties")}
+ ) : ( ++ {localDateString(new Date(selectedDuty.start_at))}{" "} + {formatHHMM(selectedDuty.start_at)} – {formatHHMM(selectedDuty.end_at)} +
+ {usersForSelect.length === 0 ? ( +{t("admin.no_users_for_assign")}
+ ) : ( ++ {reassignError} +
+ )} +{t("not_found.description")}
s.setIsAdmin); + useEffect(() => { + if (!isAllowed || !initDataRaw) { + setIsAdmin(false); + return; + } + fetchAdminMe(initDataRaw, getLang()).then(({ is_admin }) => setIsAdmin(is_admin)); + }, [isAllowed, initDataRaw, setIsAdmin]); + const { accessDenied, currentView, setCurrentView, setSelectedDay, appContentReady } = useAppStore( useShallow((s: AppState) => ({ @@ -50,7 +61,7 @@ export default function Home() { const content = accessDenied ? (