From 124e54807d24377d67ce2215449586442bc6552a Mon Sep 17 00:00:00 2001
From: ginifizz
Date: Tue, 24 Dec 2024 00:56:35 +0100
Subject: [PATCH] feat: add register page
---
.../con/2025/call-for-papers/page.tsx | 2 +-
.../[locale]/con/2025/components/HomePage.tsx | 138 +++++++++------
pwa/app/(con)/[locale]/con/2025/layout.tsx | 7 +-
.../con/2025/register/RegisterPage.tsx | 157 ++++++++++++++++++
.../(con)/[locale]/con/2025/register/page.tsx | 28 ++++
pwa/components/con/common/BuyButton.tsx | 7 +-
pwa/data/con/2025/prices.ts | 55 ++++++
pwa/i18n/dictionaries/en.json | 29 ++++
pwa/i18n/dictionaries/fr.json | 29 ++++
pwa/types/con.tsx | 1 +
10 files changed, 392 insertions(+), 61 deletions(-)
create mode 100644 pwa/app/(con)/[locale]/con/2025/register/RegisterPage.tsx
create mode 100644 pwa/app/(con)/[locale]/con/2025/register/page.tsx
create mode 100644 pwa/data/con/2025/prices.ts
diff --git a/pwa/app/(con)/[locale]/con/2025/call-for-papers/page.tsx b/pwa/app/(con)/[locale]/con/2025/call-for-papers/page.tsx
index eb24c9e3b..dacbbba17 100644
--- a/pwa/app/(con)/[locale]/con/2025/call-for-papers/page.tsx
+++ b/pwa/app/(con)/[locale]/con/2025/call-for-papers/page.tsx
@@ -20,7 +20,7 @@ export async function generateMetadata({ params }: Props): Promise {
alternates: {
languages: {
en: locale === "en" ? undefined : "/con/2025",
- fr: locale === "fr" ? undefined : "/fr/con/2024",
+ fr: locale === "fr" ? undefined : "/fr/con/2025",
},
},
};
diff --git a/pwa/app/(con)/[locale]/con/2025/components/HomePage.tsx b/pwa/app/(con)/[locale]/con/2025/components/HomePage.tsx
index 232d89a44..e579b54e4 100644
--- a/pwa/app/(con)/[locale]/con/2025/components/HomePage.tsx
+++ b/pwa/app/(con)/[locale]/con/2025/components/HomePage.tsx
@@ -3,19 +3,19 @@ import Button from "components/con/common/Button";
import SpeakerList from "components/con/speakers/SpeakerList";
import SectionTitle from "components/con/common/typography/SectionTitle";
import SectionSubTitle from "components/con/common/typography/SectionSubtitle";
-import Web from "components/con/common/Web";
+import { currentEdition } from "data/con/editions";
import Wave from "components/con/common/Wave";
import Venue from "components/con/home/Venue";
-import Image from "next/image";
import Partners from "components/con/home/Partners";
import LookingSponsorCard from "components/con/home/LookingSponsorCard";
import { Partner, Speaker } from "types/con";
import { useContext } from "react";
import { LanguageContext } from "contexts/con/LanguageContext";
import Section from "components/con/home/Section";
-import PictureGallery from "components/con/common/PictureGallery";
+import prices from "data/con/2024/prices";
import Logo from "./Logo";
-import AfterMovie from "app/con/2024/components/AfterMovie";
+import PricingCard from "components/con/home/Pricing/PricingCard";
+import BuyButton from "components/con/common/BuyButton";
type HomePageProps = {
speakers: Speaker[];
@@ -43,7 +43,12 @@ const HomePage = ({ speakers, partners, images }: HomePageProps) => {
{t("2025.subbaseline")}
-
@@ -51,53 +56,15 @@ const HomePage = ({ speakers, partners, images }: HomePageProps) => {
-
-
-
-
-
-
-
- {t("2025.see_review.link")}
-
- ),
- }}
- />
-
-
- {images.map((image: string) => (
-
- ))}
-
-
-
+ {currentEdition === "2025" && (
+
+
+
+
+
+
+ {prices.map((price) => (
+
+ ))}
+
+
+
+ {t("pricing.student")}
+
+
+
+
+
+ {t("contact_us")}
+
+
+ *{t("pricing.certificate_needed")}
+
+
+
+
+
+
+ )}
+
+
+
+
+
+
+
+
+ {t("2025.see_review.link")}
+
+ ),
+ }}
+ />
+
+
+
+
{t("missing_conferences.subtitle")}
@@ -151,10 +189,6 @@ const HomePage = ({ speakers, partners, images }: HomePageProps) => {
-
-
diff --git a/pwa/app/(con)/[locale]/con/2025/layout.tsx b/pwa/app/(con)/[locale]/con/2025/layout.tsx
index ea3574699..070089239 100644
--- a/pwa/app/(con)/[locale]/con/2025/layout.tsx
+++ b/pwa/app/(con)/[locale]/con/2025/layout.tsx
@@ -41,12 +41,7 @@ export async function generateMetadata({ params }: Props): Promise {
function EditionLayout({ children }: { children: React.ReactNode }) {
const eventData = getEditionEventData("2025");
return (
-
+