Layout.jsx - BACKUP
import React from "react";
import { Link, useLocation } from "react-router-dom";
import { useEffect } from "react";
import { createPageUrl } from "@/utils";
import { User } from "@/entities/User";
import { LogOut, LogIn, Users, FileText, Phone, HelpCircle, Globe, MessageCircle, Video, BookOpen, ChevronDown, Book, DollarSign } from "lucide-react";
import { initAnalytics, pageView } from "@/components/analytics";
import JsonLD from "@/components/JsonLD";
import Perf from "@/components/Perf";
import { captureAttributionFromURL } from "@/components/referrals/ReferralManager";

import {
  DropdownMenu,
  DropdownMenuContent,
  DropdownMenuItem,
  DropdownMenuTrigger,
} from "@/components/ui/dropdown-menu";
import { Button } from "@/components/ui/button";

export default function Layout({ children, currentPageName }) {
  const location = useLocation();
  const [user, setUser] = React.useState(null);

  React.useEffect(() => {
    const checkUser = async () => {
      try {
        const currentUser = await User.me();
        setUser(currentUser);
      } catch (error) {
        setUser(null);
      }
    };
    checkUser();
  }, [location.pathname]);

  useEffect(() => {
    initAnalytics();
    captureAttributionFromURL();
  }, []);

  useEffect(() => {
    pageView(location.pathname, document.title || currentPageName || "Unknown Page");
  }, [location.pathname, currentPageName]);

  const handleLogout = async () => {
    await User.logout();
    setUser(null);
    window.location.reload();
  };

  const handleLogin = async () => {
    const currentUrl = window.location.href;
    await User.loginWithRedirect(currentUrl);
  };

  const hasSubscription = user?.hasActiveSubscription === true;

  return (
    <>
      <Perf />
      <JsonLD data={{
        "@context": "https://schema.org",
        "@type": "Organization",
        name: "Parent Whisperer",
        url: "https://parentwhisperer.info"
      }} />
      
      <div className="min-h-screen bg-gradient-to-b from-gray-50 to-white flex flex-col">
        <header className="bg-gradient-to-r from-green-600 to-green-700 text-white shadow-lg">
          <div className="container mx-auto px-6 py-3">
            <div className="flex justify-between items-center">
              <Link to={createPageUrl("Home")}>
                <h1 className="text-2xl font-bold">Parent Whisperer</h1>
              </Link>
              {user ? (
                <Button variant="ghost" onClick={handleLogout}>
                  <LogOut className="w-4 h-4" />
                  Log Out
                </Button>
              ) : (
                <Button variant="ghost" onClick={handleLogin}>
                  <LogIn className="w-4 h-4" />
                  Log In
                </Button>
              )}
            </div>
            <nav className="mt-3">
              {/* Navigation menu */}
            </nav>
          </div>
        </header>
        <main className="container mx-auto px-4 py-4 flex-1">
          {children}
        </main>
      </div>
    </>
  );
}