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({