Fix Join Us button linking logged-in users to register page

Send logged-in users to their dashboard instead of the registration
form, matching how the Navbar already treats logged-in vs guest users.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
This commit is contained in:
2026-08-07 01:52:35 +02:00
co-authored by Claude Sonnet 5
parent 4bcb07f9d1
commit 56e0c8a31f
3 changed files with 30 additions and 5 deletions
+4
View File
@@ -7,6 +7,10 @@ and this project follows [Semantic Versioning](https://semver.org/).
## [Unreleased]
### Fixed
- The homepage "Join Us" button sent logged-in users to the registration page instead of somewhere useful. It now shows "My Dashboard" and links to their dashboard when a user is already logged in.
## [1.5.3] - 2026-08-07
### Fixed
+3 -5
View File
@@ -1,8 +1,9 @@
import { EventCard } from "@/components/events/EventCard";
import { Navbar } from "@/components/layout/Navbar";
import { Footer } from "@/components/layout/Footer";
import { JoinUsButton } from "@/components/home/JoinUsButton";
import { appName } from "@/lib/siteConfig";
import { Calendar, UserPlus, ArrowRight, CalendarCheck, Users, Heart, ShieldCheck } from "lucide-react";
import { Calendar, ArrowRight, CalendarCheck, Users, Heart, ShieldCheck } from "lucide-react";
type Event = {
id: string;
@@ -58,10 +59,7 @@ export default async function HomePage() {
<Calendar className="w-4 h-4" />
View Events
</a>
<a href="/register" className="inline-flex items-center gap-2 px-6 py-2.5 border border-brand-600 text-brand-600 rounded-xl hover:bg-brand-50 font-medium transition-colors">
<UserPlus className="w-4 h-4" />
Join Us
</a>
<JoinUsButton />
</div>
</div>
</section>
@@ -0,0 +1,23 @@
"use client";
import Link from "next/link";
import { UserPlus, LayoutDashboard } from "lucide-react";
import { useAuth } from "@/hooks/useAuth";
export const JoinUsButton = () => {
const { user, loading } = useAuth();
if (loading) return null;
return user ? (
<Link href="/dashboard/user" className="inline-flex items-center gap-2 px-6 py-2.5 border border-brand-600 text-brand-600 rounded-xl hover:bg-brand-50 font-medium transition-colors">
<LayoutDashboard className="w-4 h-4" />
My Dashboard
</Link>
) : (
<Link href="/register" className="inline-flex items-center gap-2 px-6 py-2.5 border border-brand-600 text-brand-600 rounded-xl hover:bg-brand-50 font-medium transition-colors">
<UserPlus className="w-4 h-4" />
Join Us
</Link>
);
};