diff --git a/frontend/src/i18n/index.ts b/frontend/src/i18n/index.ts index 3414b0f..2efae20 100644 --- a/frontend/src/i18n/index.ts +++ b/frontend/src/i18n/index.ts @@ -2,12 +2,14 @@ import { createI18n } from "vue-i18n"; import en from "./translations/en.json"; import de from "./translations/de.json"; import localeStore from "../store/localeStore.ts"; +import { usePrimeVue } from "primevue/config"; export const supportedLocales = { en: { name: "English" }, de: { name: "Deutsch" }, }; // Private instance of VueI18n object +// eslint-disable-next-line @typescript-eslint/no-explicit-any let _i18n: any; // Initializer function setup() { @@ -24,12 +26,14 @@ function setup() { } // Sets the active locale. -function setLocale(newLocale: any) { +function setLocale(newLocale: string) { _i18n.global.locale = newLocale; setDocumentAttributesFor(newLocale); + const primeVue = usePrimeVue(); + primeVue.config.locale = Object.assign(_i18n); } -function setDocumentAttributesFor(locale: any) { +function setDocumentAttributesFor(locale: string) { const htmlElement = document.querySelector("html"); htmlElement?.setAttribute("lang", locale); diff --git a/frontend/src/i18n/messages.ts b/frontend/src/i18n/messages.ts deleted file mode 100644 index b21be5e..0000000 --- a/frontend/src/i18n/messages.ts +++ /dev/null @@ -1,18 +0,0 @@ -export default { - en: { - createCalendar: "Create Calendar", - editCalendar: "Edit Calendar", - roomFinder: "Room Finder", - faq: "FAQ", - imprint: "Imprint", - privacy: "Privacy Policy", - }, - de: { - createCalendar: "Kalender erstellen", - editCalendar: "Kalender bearbeiten", - roomFinder: "Raumfinder", - faq: "FAQ", - imprint: "Impressum", - privacy: "Datenschutz", - }, -}; diff --git a/frontend/src/i18n/translations/de.json b/frontend/src/i18n/translations/de.json index a0d6fc4..2c96b47 100644 --- a/frontend/src/i18n/translations/de.json +++ b/frontend/src/i18n/translations/de.json @@ -229,6 +229,125 @@ "ninthQuestion": "Wo kann ich den Quellcode einsehen und mitwirken?", "ninthAnswer": "Wenn du dich für die Entwicklung und den Quelltext interessierst, kannst du jederzeit als HTWK Student daran mitarbeiten. Dort findest alle Informationen im ", "notFound": "Nicht gefunden, wonach du suchst?", - "contact": "Kontakt aufnehmen" + "contact": "Kontakt aufnehmen", + "startsWith": "Beginnt mit", + "contains": "Enthält", + "notContains": "Enthält nicht", + "endsWith": "Endet mit", + "equals": "Ist gleich", + "notEquals": "Ist ungleich", + "noFilter": "Kein Filter", + "filter": "Filtern", + "lt": "Kleiner als", + "lte": "Kleiner oder gleich", + "gt": "Größer als", + "gte": "Größer oder gleich", + "dateIs": "Datum ist", + "dateIsNot": "Datum ist nicht", + "dateBefore": "Datum ist vor", + "dateAfter": "Datum ist nach", + "custom": "Benutzerdefiniert", + "clear": "Löschen", + "apply": "Übernehmen", + "matchAll": "Passt auf alle", + "matchAny": "Passt auf einige", + "addRule": "Regel hinzufügen", + "removeRule": "Regel entfernen", + "accept": "Ja", + "reject": "Nein", + "choose": "Auswählen", + "upload": "Hochladen", + "cancel": "Abbrechen", + "completed": "Abgeschlossen", + "pending": "Ausstehend", + "fileSizeTypes": ["B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"], + "dayNames": ["Sonntag", "Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag", "Samstag"], + "dayNamesShort": ["Son", "Mon", "Die", "Mit", "Don", "Fre", "Sam"], + "dayNamesMin": ["So", "Mo", "Di", "Mi", "Do", "Fr", "Sa"], + "monthNames": ["Januar", "Februar", "März", "April", "Mai", "Juni", "Juli", "August", "September", "Oktober", "November", "Dezember"], + "monthNamesShort": ["Jan", "Feb", "Mär", "Apr", "Mai", "Jun", "Jul", "Aug", "Sep", "Okt", "Nov", "Dez"], + "chooseYear": "Jahr wählen", + "chooseMonth": "Monat wählen", + "chooseDate": "Datum wählen", + "prevDecade": "Vorheriges Jahrzehnt", + "nextDecade": "Nächstes Jahrzehnt", + "prevYear": "Vorheriges Jahr", + "nextYear": "Nächstes Jahr", + "prevMonth": "Vorheriger Monat", + "nextMonth": "Nächster Monat", + "prevHour": "Vorherige Stunde", + "nextHour": "Nächste Stunde", + "prevMinute": "Vorherige Minute", + "nextMinute": "Nächste Minute", + "prevSecond": "Vorherige Sekunde", + "nextSecond": "Nächste Sekunde", + "am": "am", + "pm": "pm", + "today": "Heute", + "now": "Jetzt", + "weekHeader": "KW", + "firstDayOfWeek": 1, + "showMonthAfterYear": false, + "dateFormat": "dd.mm.yy", + "weak": "Schwach", + "medium": "Mittel", + "strong": "Stark", + "passwordPrompt": "Passwort eingeben", + "emptyFilterMessage": "Keine Ergebnisse gefunden", + "searchMessage": "{0} Ergebnisse verfügbar", + "selectionMessage": "{0} Elemente ausgewählt", + "emptySelectionMessage": "Kein ausgewähltes Element", + "emptySearchMessage": "Keine Ergebnisse gefunden", + "emptyMessage": "Keine Einträge gefunden", + "aria": { + "trueLabel": "Wahr", + "falseLabel": "Falsch", + "nullLabel": "Nicht ausgewählt", + "star": "1 Stern", + "stars": "{star} Sterne", + "selectAll": "Alle Elemente ausgewählt", + "unselectAll": "Alle Elemente abgewählt", + "close": "Schließen", + "previous": "Vorherige", + "next": "Nächste", + "navigation": "Navigation", + "scrollTop": "Nach oben scrollen", + "moveTop": "Zum Anfang bewegen", + "moveUp": "Nach oben bewegen", + "moveDown": "Nach unten bewegen", + "moveBottom": "Zum Ende bewegen", + "moveToTarget": "Zum Ziel bewegen", + "moveToSource": "Zur Quelle bewegen", + "moveAllToTarget": "Alle zum Ziel bewegen", + "moveAllToSource": "Alle zur Quelle bewegen", + "pageLabel": "Seite {page}", + "firstPageLabel": "Erste Seite", + "lastPageLabel": "Letzte Seite", + "nextPageLabel": "Nächste Seite", + "previousPageLabel": "Vorherige Seite", + "rowsPerPageLabel": "Zeilen pro Seite", + "jumpToPageDropdownLabel": "Zum Dropdown-Menü springen", + "jumpToPageInputLabel": "Zum Eingabefeld springen", + "selectRow": "Zeile ausgewählt", + "unselectRow": "Zeile abgewählt", + "expandRow": "Zeile erweitert", + "collapseRow": "Zeile reduziert", + "showFilterMenu": "Filtermenü anzeigen", + "hideFilterMenu": "Filtermenü ausblenden", + "filterOperator": "Filteroperator", + "filterConstraint": "Filterbeschränkung", + "editRow": "Zeile bearbeiten", + "saveEdit": "Änderungen speichern", + "cancelEdit": "Änderungen abbrechen", + "listView": "Listenansicht", + "gridView": "Rasteransicht", + "slide": "Folie", + "slideNumber": "{slideNumber}", + "zoomImage": "Bild vergrößern", + "zoomIn": "Vergrößern", + "zoomOut": "Verkleinern", + "rotateRight": "Nach rechts drehen", + "rotateLeft": "Nach links drehen" + } } } diff --git a/frontend/src/i18n/translations/en.json b/frontend/src/i18n/translations/en.json index ccea244..c989224 100644 --- a/frontend/src/i18n/translations/en.json +++ b/frontend/src/i18n/translations/en.json @@ -29,7 +29,10 @@ }, "freeRooms": { "freeRooms": "free rooms", - "detail": "Please select a time period to display rooms that have no occupancy." + "detail": "Please select a time period to display rooms that have no occupancy.", + "searchByRoom": "search by room", + "pleaseSelectDate": "please select a date", + "room": "room" }, "moduleSelection": { "selectAll": "select all", @@ -229,6 +232,125 @@ "ninthQuestion": "Where could i find the source code?", "ninthAnswer": "If you want to contribute, you can do so at any time if you are a HTWK student. The source code is available on ", "notFound": "Not finding what you're looking for?", - "contact": "Get in touch" + "contact": "Get in touch", + "startsWith": "Starts with", + "contains": "Contains", + "notContains": "Not contains", + "endsWith": "Ends with", + "equals": "Equals", + "notEquals": "Not equals", + "noFilter": "No Filter", + "filter": "Filter", + "lt": "Less than", + "lte": "Less than or equal to", + "gt": "Greater than", + "gte": "Greater than or equal to", + "dateIs": "Date is", + "dateIsNot": "Date is not", + "dateBefore": "Date is before", + "dateAfter": "Date is after", + "custom": "Custom", + "clear": "Clear", + "apply": "Apply", + "matchAll": "Match All", + "matchAny": "Match Any", + "addRule": "Add Rule", + "removeRule": "Remove Rule", + "accept": "Yes", + "reject": "No", + "choose": "Choose", + "upload": "Upload", + "cancel": "Cancel", + "completed": "Completed", + "pending": "Pending", + "fileSizeTypes": ["B", "KB", "MB", "GB", "TB", "PB", "EB", "ZB", "YB"], + "dayNames": ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"], + "dayNamesShort": ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"], + "dayNamesMin": ["Su", "Mo", "Tu", "We", "Th", "Fr", "Sa"], + "monthNames": ["January", "February", "March", "April", "May", "June", "July", "August", "September", "October", "November", "December"], + "monthNamesShort": ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"], + "chooseYear": "Choose Year", + "chooseMonth": "Choose Month", + "chooseDate": "Choose Date", + "prevDecade": "Previous Decade", + "nextDecade": "Next Decade", + "prevYear": "Previous Year", + "nextYear": "Next Year", + "prevMonth": "Previous Month", + "nextMonth": "Next Month", + "prevHour": "Previous Hour", + "nextHour": "Next Hour", + "prevMinute": "Previous Minute", + "nextMinute": "Next Minute", + "prevSecond": "Previous Second", + "nextSecond": "Next Second", + "am": "AM", + "pm": "PM", + "today": "Today", + "now": "Now", + "weekHeader": "Wk", + "firstDayOfWeek": 0, + "showMonthAfterYear": false, + "dateFormat": "mm/dd/yy", + "weak": "Weak", + "medium": "Medium", + "strong": "Strong", + "passwordPrompt": "Enter a password", + "emptyFilterMessage": "No results found", + "searchMessage": "{0} results are available", + "selectionMessage": "{0} items selected", + "emptySelectionMessage": "No selected item", + "emptySearchMessage": "No results found", + "emptyMessage": "No available options", + "aria": { + "trueLabel": "True", + "falseLabel": "False", + "nullLabel": "Not Selected", + "star": "1 star", + "stars": "{star} stars", + "selectAll": "All items selected", + "unselectAll": "All items unselected", + "close": "Close", + "previous": "Previous", + "next": "Next", + "navigation": "Navigation", + "scrollTop": "Scroll Top", + "moveTop": "Move Top", + "moveUp": "Move Up", + "moveDown": "Move Down", + "moveBottom": "Move Bottom", + "moveToTarget": "Move to Target", + "moveToSource": "Move to Source", + "moveAllToTarget": "Move All to Target", + "moveAllToSource": "Move All to Source", + "pageLabel": "Page {page}", + "firstPageLabel": "First Page", + "lastPageLabel": "Last Page", + "nextPageLabel": "Next Page", + "previousPageLabel": "Previous Page", + "rowsPerPageLabel": "Rows per page", + "jumpToPageDropdownLabel": "Jump to Page Dropdown", + "jumpToPageInputLabel": "Jump to Page Input", + "selectRow": "Row Selected", + "unselectRow": "Row Unselected", + "expandRow": "Row Expanded", + "collapseRow": "Row Collapsed", + "showFilterMenu": "Show Filter Menu", + "hideFilterMenu": "Hide Filter Menu", + "filterOperator": "Filter Operator", + "filterConstraint": "Filter Constraint", + "editRow": "Edit Row", + "saveEdit": "Save Edit", + "cancelEdit": "Cancel Edit", + "listView": "List View", + "gridView": "Grid View", + "slide": "Slide", + "slideNumber": "{slideNumber}", + "zoomImage": "Zoom Image", + "zoomIn": "Zoom In", + "zoomOut": "Zoom Out", + "rotateRight": "Rotate Right", + "rotateLeft": "Rotate Left" + } } } diff --git a/frontend/src/view/FreeRooms.vue b/frontend/src/view/FreeRooms.vue index 2da1dc8..5da275f 100644 --- a/frontend/src/view/FreeRooms.vue +++ b/frontend/src/view/FreeRooms.vue @@ -16,7 +16,7 @@
@@ -60,21 +60,21 @@