diff --git a/src/app/admin/AdminSidebar.tsx b/src/app/admin/AdminSidebar.tsx index 7576396..3eb3299 100644 --- a/src/app/admin/AdminSidebar.tsx +++ b/src/app/admin/AdminSidebar.tsx @@ -22,7 +22,7 @@ import { useTranslation } from "react-i18next"; import Link from "next/link"; const groups = { - Allmänt: [ + general: [ { title: "admin:news.self", url: "/admin/news", @@ -34,7 +34,7 @@ const groups = { icon: Calendar, }, ], -}; +} as const; export function AdminSidebar() { const { t } = useTranslation(); @@ -48,7 +48,7 @@ export function AdminSidebar() { <SidebarGroup> <SidebarGroupLabel asChild> <CollapsibleTrigger> - {group} + {t(group)} <ChevronDown className="ml-auto transition-transform group-data-[state=open]/collapsible:rotate-180" /> </CollapsibleTrigger> </SidebarGroupLabel> diff --git a/src/app/admin/events/EventsForm.tsx b/src/app/admin/events/EventsForm.tsx index 963684b..fc244de 100644 --- a/src/app/admin/events/EventsForm.tsx +++ b/src/app/admin/events/EventsForm.tsx @@ -21,6 +21,7 @@ import { import { AdminChooseCouncil } from "@/widgets/AdminChooseCouncil"; import { AdminChooseDates } from "@/widgets/AdminChooseDates"; +import { useTranslation } from "react-i18next"; const eventsSchema = z.object({ title_sv: z.string().min(2), @@ -48,6 +49,7 @@ const eventsSchema = z.object({ export default function EventsForm() { const [open, setOpen] = useState(false); const [submitEnabled, setSubmitEnabled] = useState(true); + const { t } = useTranslation(); const eventsForm = useForm<z.infer<typeof eventsSchema>>({ resolver: zodResolver(eventsSchema), @@ -127,7 +129,7 @@ export default function EventsForm() { setSubmitEnabled(true); }} > - Skapa event + {t("events.create")} </Button> <Dialog open={open} onOpenChange={setOpen}> @@ -238,14 +240,14 @@ export default function EventsForm() { <div className="space-x-2 lg:col-span-2 lg:grid-cols-subgrid"> <Button variant="outline" className="w-32 min-w-fit"> - Förhandsgranska + {t("preview")} </Button> <Button type="submit" disabled={!submitEnabled} className="w-32 min-w-fit" > - Publicera + {t("publish")} </Button> </div> </form> diff --git a/src/app/admin/news/NewsForm.tsx b/src/app/admin/news/NewsForm.tsx index dce9c3f..a410b60 100644 --- a/src/app/admin/news/NewsForm.tsx +++ b/src/app/admin/news/NewsForm.tsx @@ -24,6 +24,7 @@ import { getAllNewsQueryKey, } from "@/api/@tanstack/react-query.gen"; import { Plus } from "lucide-react"; +import { useTranslation } from "react-i18next"; const newsSchema = z.object({ title_sv: z.string().min(2), @@ -39,6 +40,7 @@ export default function NewsForm() { const newsForm = useForm<z.infer<typeof newsSchema>>({ resolver: zodResolver(newsSchema), }); + const { t } = useTranslation("admin"); const createNews = useMutation({ ...createNewsMutation(), @@ -78,7 +80,7 @@ export default function NewsForm() { }} > <Plus /> - Skapa nyhet + {t("news.create")} </Button> <Dialog open={open} onOpenChange={setOpen}> diff --git a/src/locales/en/admin.json b/src/locales/en/admin.json index e4f0cc3..be24289 100644 --- a/src/locales/en/admin.json +++ b/src/locales/en/admin.json @@ -1,10 +1,15 @@ { "title": "Admin page", + "general": "General", "news": { "self": "News", - "page_title": "Administrate news" + "page_title": "Administrate news", + "create": "Create news article" }, "events": { - "self": "Events" - } + "self": "Events", + "create": "Create event" + }, + "preview": "Preview", + "publish": "Publish" } diff --git a/src/locales/sv/admin.json b/src/locales/sv/admin.json index 098fcb5..d788b61 100644 --- a/src/locales/sv/admin.json +++ b/src/locales/sv/admin.json @@ -1,10 +1,15 @@ { "title": "Adminsida", + "general": "Allmänt", "news": { "self": "Nyheter", - "page_title": "Administrera nyheter" + "page_title": "Administrera nyheter", + "create": "Skapa nyhet" }, "events": { - "self": "Evenemang" - } + "self": "Evenemang", + "create": "Skapa event" + }, + "preview": "Förhandsgranska", + "publish": "Publicera" }