feat: add view-as-role feature for site admins (#15)
Site admins can now temporarily view the site as a player, tournament admin, or club admin to understand the experience for each role. Changes: - Added RoleSwitcher context and provider for client-side role simulation - Added role switcher dropdown in Navigation (visible only to site admins) - Added yellow banner showing current viewing-as role with reset button - Navigation links and wordmark href now use effective role for conditional display - Added BDD feature file with 5 scenarios covering all role transitions - Added step definitions for site admin login and role switcher interactions The view-as feature is purely UI-level - server-side permissions remain unchanged. 5 scenarios, 27 steps, all passing.
This commit is contained in:
+5
-2
@@ -1,6 +1,7 @@
|
||||
import type { Metadata } from "next";
|
||||
import "./globals.css";
|
||||
import { SessionProvider } from "@/components/SessionProvider";
|
||||
import { RoleSwitcherProvider } from "@/components/RoleSwitcher";
|
||||
import Footer from "@/components/Footer";
|
||||
|
||||
const inter = {
|
||||
@@ -24,8 +25,10 @@ export default function RootLayout({
|
||||
>
|
||||
<body className="min-h-full flex flex-col overflow-x-hidden">
|
||||
<SessionProvider>
|
||||
{children}
|
||||
<Footer />
|
||||
<RoleSwitcherProvider>
|
||||
{children}
|
||||
<Footer />
|
||||
</RoleSwitcherProvider>
|
||||
</SessionProvider>
|
||||
</body>
|
||||
</html>
|
||||
|
||||
Reference in New Issue
Block a user