diff --git a/apps/scandic-web/components/ContentType/HotelSubpage/Sidebar/RestaurantSidebar.tsx b/apps/scandic-web/components/ContentType/HotelSubpage/Sidebar/RestaurantSidebar.tsx
index 84e681faa..16948763a 100644
--- a/apps/scandic-web/components/ContentType/HotelSubpage/Sidebar/RestaurantSidebar.tsx
+++ b/apps/scandic-web/components/ContentType/HotelSubpage/Sidebar/RestaurantSidebar.tsx
@@ -40,7 +40,6 @@ export default async function RestaurantSidebar({
key={details.openingHours.name}
openingHours={details.openingHours}
alternateOpeningHours={details.alternateOpeningHours}
- heading={details.openingHours.name}
/>
))}
diff --git a/apps/scandic-web/components/OpeningHours/index.tsx b/apps/scandic-web/components/OpeningHours/index.tsx
index 74a9b9771..5ed7ba7c0 100644
--- a/apps/scandic-web/components/OpeningHours/index.tsx
+++ b/apps/scandic-web/components/OpeningHours/index.tsx
@@ -6,7 +6,7 @@ import { Divider } from "@scandic-hotels/design-system/Divider"
import { Typography } from "@scandic-hotels/design-system/Typography"
import AlternateOpeningHours from "./AlternateOpeningHours"
-import { getGroupedOpeningHours } from "./utils"
+import { getGroupedOpeningHours, getTranslatedName } from "./utils"
import styles from "./openingHours.module.css"
@@ -25,11 +25,12 @@ export default function OpeningHours({
}: OpeningHoursProps) {
const intl = useIntl()
const groupedOpeningHours = getGroupedOpeningHours(openingHours, intl)
-
return (
- {heading ?? openingHours.name}
+
+ {heading ?? getTranslatedName(openingHours.nameEnglish, intl)}
+
diff --git a/apps/scandic-web/components/OpeningHours/openingHours.test.ts b/apps/scandic-web/components/OpeningHours/openingHours.test.ts
index 9cadb5547..3004e5e69 100644
--- a/apps/scandic-web/components/OpeningHours/openingHours.test.ts
+++ b/apps/scandic-web/components/OpeningHours/openingHours.test.ts
@@ -28,6 +28,7 @@ describe("getGroupedOpeningHours", () => {
const allDaysClosed: RestaurantOpeningHours = {
isActive: true,
name: "Opening hours",
+ nameEnglish: "Opening hours",
monday: {
isClosed: true,
alwaysOpen: false,
@@ -86,6 +87,7 @@ describe("getGroupedOpeningHours", () => {
const allDaysSameHours: RestaurantOpeningHours = {
isActive: true,
name: "Opening hours",
+ nameEnglish: "Opening hours",
monday: {
openingTime: "09:00",
closingTime: "17:00",
@@ -144,6 +146,7 @@ describe("getGroupedOpeningHours", () => {
const mixedOpeningHours: RestaurantOpeningHours = {
isActive: true,
name: "Opening hours",
+ nameEnglish: "Opening hours",
monday: {
openingTime: "09:00",
closingTime: "17:00",
@@ -206,6 +209,7 @@ describe("getGroupedOpeningHours", () => {
const someAlwaysOpen: RestaurantOpeningHours = {
isActive: true,
name: "Opening hours",
+ nameEnglish: "Opening hours",
monday: {
alwaysOpen: true,
isClosed: false,
@@ -268,6 +272,7 @@ describe("getGroupedOpeningHours", () => {
const missingDays: RestaurantOpeningHours = {
isActive: true,
name: "Opening hours",
+ nameEnglish: "Opening hours",
monday: {
openingTime: "09:00",
closingTime: "17:00",
@@ -302,6 +307,7 @@ describe("getGroupedOpeningHours", () => {
const nonConsecutiveSameHours: RestaurantOpeningHours = {
isActive: true,
name: "Opening hours",
+ nameEnglish: "Opening hours",
monday: {
openingTime: "09:00",
closingTime: "17:00",
@@ -336,6 +342,7 @@ describe("getGroupedOpeningHours", () => {
const nullableHours: RestaurantOpeningHours = {
isActive: true,
name: "Opening hours",
+ nameEnglish: "Opening hours",
monday: {
openingTime: "",
closingTime: "",
@@ -370,6 +377,7 @@ describe("getGroupedOpeningHours", () => {
const inactiveHours: RestaurantOpeningHours = {
isActive: false,
name: "Opening hours",
+ nameEnglish: "Opening hours",
monday: {
openingTime: "09:00",
closingTime: "17:00",
diff --git a/apps/scandic-web/components/OpeningHours/utils.ts b/apps/scandic-web/components/OpeningHours/utils.ts
index 746217474..55766648f 100644
--- a/apps/scandic-web/components/OpeningHours/utils.ts
+++ b/apps/scandic-web/components/OpeningHours/utils.ts
@@ -1,3 +1,5 @@
+import { logger } from "@scandic-hotels/common/logger"
+
import type { RestaurantOpeningHours } from "@scandic-hotels/trpc/types/hotel"
import type { IntlShape } from "react-intl"
@@ -108,3 +110,62 @@ export function getGroupedOpeningHours(
}
return groupedOpeningHours
}
+
+export function getTranslatedName(name: string, intl: IntlShape) {
+ switch (name) {
+ case "Breakfast":
+ return intl.formatMessage({
+ defaultMessage: "Breakfast",
+ })
+ case "Brunch":
+ return intl.formatMessage({
+ defaultMessage: "Brunch",
+ })
+ case "After Work":
+ return intl.formatMessage({
+ defaultMessage: "After Work",
+ })
+ case "Cafe":
+ return intl.formatMessage({
+ defaultMessage: "Cafe",
+ })
+ case "Lunch":
+ return intl.formatMessage({
+ defaultMessage: "Lunch",
+ })
+ case "Dinner":
+ return intl.formatMessage({
+ defaultMessage: "Dinner",
+ })
+ case "Bar":
+ return intl.formatMessage({
+ defaultMessage: "Bar",
+ })
+ case "Snacks & drinks":
+ return intl.formatMessage({
+ defaultMessage: "Snacks & drinks",
+ })
+ case "Takeaway":
+ return intl.formatMessage({
+ defaultMessage: "Takeaway",
+ })
+ case "Changes":
+ return intl.formatMessage({
+ defaultMessage: "Changes",
+ })
+ case "Live events":
+ return intl.formatMessage({
+ defaultMessage: "Live events",
+ })
+ case "Terrace":
+ return intl.formatMessage({
+ defaultMessage: "Terrace",
+ })
+ default:
+ logger.warn(`Unsupported name given: ${name}`)
+
+ return intl.formatMessage({
+ defaultMessage: "N/A",
+ })
+ }
+}
diff --git a/packages/trpc/lib/routers/hotels/schemas/hotel/include/restaurants.ts b/packages/trpc/lib/routers/hotels/schemas/hotel/include/restaurants.ts
index 61888fc24..e0d8b26a6 100644
--- a/packages/trpc/lib/routers/hotels/schemas/hotel/include/restaurants.ts
+++ b/packages/trpc/lib/routers/hotels/schemas/hotel/include/restaurants.ts
@@ -59,6 +59,7 @@ export const openingHoursSchema = z.object({
isActive: z.boolean().default(false),
monday: openingHoursDetailsSchema.optional(),
name: nullableStringValidator,
+ nameEnglish: nullableStringValidator,
saturday: openingHoursDetailsSchema.optional(),
sunday: openingHoursDetailsSchema.optional(),
thursday: openingHoursDetailsSchema.optional(),