feat:#60 added switch button (not working)

This commit is contained in:
masterElmar
2023-11-15 04:10:47 +01:00
parent 3e1214d13b
commit 3f1a592468
11 changed files with 242 additions and 96 deletions

View File

@@ -1,6 +1,5 @@
import { createRouter, createWebHistory } from "vue-router";
import Faq from "../components/FaqPage.vue";
import CourseSelection from "../components/CourseSelection.vue";
import AdditionalModules from "../components/AdditionalModules.vue";
import CalendarLink from "../components/CalendarLink.vue";
import Imprint from "../components/ImprintPage.vue";
@@ -10,70 +9,89 @@ import RoomFinder from "../components/RoomFinder.vue";
import EditCalendarView from "../view/editCalendarView.vue";
import EditAdditionalModules from "../components/editCalendar/EditAdditionalModules.vue";
import EditModules from "../components/editCalendar/EditModules.vue";
import CourseSelection from "../components/CourseSelection.vue";
import i18n, { defaultLocale } from "../i18n";
const router = createRouter({
history: createWebHistory(import.meta.env.BASE_URL),
routes: [
{
path: "/",
name: "course-selection",
component: CourseSelection,
redirect: `/${defaultLocale}`,
},
{
path: "/rooms",
name: "room-finder",
component: RoomFinder,
},
{
path: "/faq",
name: "faq",
component: Faq,
},
{
path: "/additional-modules",
name: "additional-modules",
component: AdditionalModules,
},
{
path: "/edit-additional-modules",
name: "edit-additional-modules",
component: EditAdditionalModules,
},
{
path: "/edit-calendar",
name: "edit-calendar",
component: EditModules,
},
{
path: "/calendar-link",
name: "calendar-link",
component: CalendarLink,
},
{
path: "/edit",
name: "edit",
component: EditCalendarView,
},
{
path: "/privacy-policy",
name: "privacy-policy",
component: PrivacyPolicy,
},
{
path: "/imprint",
name: "imprint",
component: Imprint,
},
{
path: "/rename-modules",
name: "rename-modules",
component: RenameModules,
},
{
path: "/:catchAll(.*)",
redirect: "/",
path: "/:locale",
children: [
{
path: "",
name: "course-selection",
component: CourseSelection,
},
{
path: "rooms",
name: "room-finder",
component: RoomFinder,
},
{
path: "faq",
name: "faq",
component: Faq,
},
{
path: "additional-modules",
name: "additional-modules",
component: AdditionalModules,
},
{
path: "edit-additional-modules",
name: "edit-additional-modules",
component: EditAdditionalModules,
},
{
path: "edit-calendar",
name: "edit-calendar",
component: EditModules,
},
{
path: "calendar-link",
name: "calendar-link",
component: CalendarLink,
},
{
path: "edit",
name: "edit",
component: EditCalendarView,
},
{
path: "privacy-policy",
name: "privacy-policy",
component: PrivacyPolicy,
},
{
path: "imprint",
name: "imprint",
component: Imprint,
},
{
path: "rename-modules",
name: "rename-modules",
component: RenameModules,
},
],
},
],
});
router.beforeEach(async (to, from) => {
const newLocale = to.params.locale
const prevLocale = from.params.locale
// If the locale hasn't changed, do nothing
if (newLocale === prevLocale) {
return
}
await i18n.loadMessagesFor(newLocale)
i18n.setLocale(newLocale)
})
export default router;