From 3c45da10e05eb4401b6021f979eb5e7125da5b7a Mon Sep 17 00:00:00 2001 From: lavanyagarg112 Date: Sat, 12 Jul 2025 09:42:41 +0800 Subject: [PATCH 01/10] Add basic badges page --- app/badges/page.tsx | 18 +++ app/organisation/page.tsx | 14 +- components/badges/AdminBadge.tsx | 249 +++++++++++++++++++++++++++++++ components/badges/UserBadge.tsx | 10 ++ 4 files changed, 290 insertions(+), 1 deletion(-) create mode 100644 app/badges/page.tsx create mode 100644 components/badges/AdminBadge.tsx create mode 100644 components/badges/UserBadge.tsx diff --git a/app/badges/page.tsx b/app/badges/page.tsx new file mode 100644 index 0000000..c81c145 --- /dev/null +++ b/app/badges/page.tsx @@ -0,0 +1,18 @@ +import { getAuthUser } from "@/lib/auth"; +import AdminBadgesPage from "@/components/badges/AdminBadge"; +import UserBadgesPage from "@/components/badges/UserBadge"; + +export default async function BadgesPage() { + const user = await getAuthUser(); + if (!user || !user.hasCompletedOnboarding) { + return null; + } + + const isAdmin = user?.organisation?.role === "admin"; + + if (isAdmin) { + return null; + } + + return ; +} diff --git a/app/organisation/page.tsx b/app/organisation/page.tsx index b172f42..3eca01c 100644 --- a/app/organisation/page.tsx +++ b/app/organisation/page.tsx @@ -7,11 +7,12 @@ import ManageChannels from "@/components/organisation/settings/ManageChannels"; import ManageLevels from "@/components/organisation/settings/ManageLevels"; import OnboardingConfig from "@/components/organisation/settings/OnboardingConfig"; import OrgSettings from "@/components/organisation/settings/OrgSettings"; +import AdminBadgesPage from "@/components/badges/AdminBadge"; export default function OrganisationsPage() { const { user } = useAuth(); const [activeTab, setActiveTab] = useState< - "skills" | "channels" | "levels" | "onboarding" | "orgSettings" + "skills" | "channels" | "levels" | "onboarding" | "orgSettings" | "badges" >("skills"); if (!user || !user.hasCompletedOnboarding) { @@ -79,6 +80,16 @@ export default function OrganisationsPage() { > Onboarding Form +