diff --git a/backend/root/management/commands/seed_scripts/textitems.py b/backend/root/management/commands/seed_scripts/textitems.py
index 9fa2bd21b..50e8c1da0 100644
--- a/backend/root/management/commands/seed_scripts/textitems.py
+++ b/backend/root/management/commands/seed_scripts/textitems.py
@@ -33,6 +33,25 @@ def seed():
'text_nb': 'Har du spørsmål eller ønsker å komme i kontakt med oss? Ikke nøl med å ta kontakt!',
'text_en': 'Do you have any questions or want to get in touch with us? Don"t hesitate to contact us!',
},
+ {
+ 'key':
+ 'sulten_reservation_help',
+ 'text_nb':
+ """Bord må reserveres minst en dag i forveien. Mat kan forhåndsbestilles slik at dere ikke trenger å vente når dere kommer.
+ Merk at flertallet av personer må være medlem for å reservere og at alle må være over 20 år etter kl 20:00 i helger.""",
+ 'text_en':
+ """Tables must be reserved at least one day in advance. Food can be pre-ordered so you do not have to wait when you arrive.
+ Note that the majority of people must be a member of the Student Society to reserve
+ and that all must be over 20 years after 20:00 on weekends.""",
+ },
+ {
+ 'key':
+ 'sulten_reservation_contact',
+ 'text_nb':
+ 'Reservasjonssystemet vårt er fortsatt under utvikling, og vi ber om forbehold om at feil kan forekomme. Klikk her for å bestille via epost: ',
+ 'text_en':
+ 'Our reservation system is still under development, and reservation errors may therefore occur. Click here to order via email: ',
+ },
]
TextItem.objects.all().delete()
diff --git a/frontend/src/AppRoutes.tsx b/frontend/src/AppRoutes.tsx
index 92cb69c8e..2becb28a8 100644
--- a/frontend/src/AppRoutes.tsx
+++ b/frontend/src/AppRoutes.tsx
@@ -14,6 +14,7 @@ import {
LoginPage,
LycheAboutPage,
LycheContactPage,
+ LycheReservationPage,
LycheHomePage,
LycheMenuPage,
NotFoundPage,
@@ -240,6 +241,7 @@ export function AppRoutes() {
} />
} />
} />
+ } />
{/*
diff --git a/frontend/src/Components/Button/Button.module.scss b/frontend/src/Components/Button/Button.module.scss
index ff38e3298..c18b3b0f0 100644
--- a/frontend/src/Components/Button/Button.module.scss
+++ b/frontend/src/Components/Button/Button.module.scss
@@ -42,6 +42,11 @@
color: white;
}
+.button_lyche {
+ background-color: $sulten-orange;
+ color: white;
+}
+
.button_success {
background-color: $green;
color: white;
diff --git a/frontend/src/Components/Button/utils.ts b/frontend/src/Components/Button/utils.ts
index 6733fe9ba..8d8191a85 100644
--- a/frontend/src/Components/Button/utils.ts
+++ b/frontend/src/Components/Button/utils.ts
@@ -5,6 +5,7 @@ export const themeToStyleMap = {
basic: styles.button_basic,
pure: styles.pure,
samf: styles.button_samf,
+ lyche: styles.button_lyche,
secondary: styles.button_secondary,
success: styles.button_success,
outlined: classNames(styles.button_outlined, 'button_outlined'), // Must be globally available for theme-dark.
diff --git a/frontend/src/Components/SultenNavbar/SultenNavbar.tsx b/frontend/src/Components/SultenNavbar/SultenNavbar.tsx
index 7f212626f..52687d6ed 100644
--- a/frontend/src/Components/SultenNavbar/SultenNavbar.tsx
+++ b/frontend/src/Components/SultenNavbar/SultenNavbar.tsx
@@ -33,7 +33,7 @@ export function SultenNavbar() {
setMobileNavigation(false)} className={itemStyling}>
- {t(KEY.common_reservations)}
+ {t(KEY.common_reservation)}
setMobileNavigation(false)} className={itemStyling}>
{t(KEY.common_menu)}
diff --git a/frontend/src/Forms/SamfForm.tsx b/frontend/src/Forms/SamfForm.tsx
index dbc8a93c2..fc2e41b33 100644
--- a/frontend/src/Forms/SamfForm.tsx
+++ b/frontend/src/Forms/SamfForm.tsx
@@ -4,6 +4,7 @@ import { Button } from '~/Components';
import { usePermission } from '~/hooks';
import { PERM } from '~/permissions';
import styles from './SamfForm.module.scss';
+import { ButtonDisplay, ButtonTheme } from '~/Components/Button';
// ================================== //
// Context & State Management //
@@ -92,6 +93,8 @@ type SamfFormProps = {
validateOnInit?: boolean;
validateOn?: ValidationMode;
submitText?: string;
+ submitButtonTheme?: ButtonTheme;
+ submitButtonDisplay?: ButtonDisplay;
noStyle?: boolean;
className?: string;
onChange?(data: Partial): void;
@@ -107,6 +110,8 @@ export function SamfForm({
validateOnInit = false,
validateOn = 'submit',
submitText,
+ submitButtonTheme = 'green',
+ submitButtonDisplay = 'basic',
noStyle,
className,
onChange,
@@ -215,7 +220,8 @@ export function SamfForm({