diff --git a/surfsense_web/components/homepage/navbar.tsx b/surfsense_web/components/homepage/navbar.tsx index 4d71b0041..5f39113f4 100644 --- a/surfsense_web/components/homepage/navbar.tsx +++ b/surfsense_web/components/homepage/navbar.tsx @@ -6,8 +6,75 @@ import { useEffect, useState } from "react"; import { Logo } from "@/components/Logo"; import { ThemeTogglerComponent } from "@/components/theme/theme-toggle"; import { useGithubStars } from "@/hooks/use-github-stars"; +import { AUTH_TYPE, BACKEND_URL } from "@/lib/env-config"; +import { trackLoginAttempt } from "@/lib/posthog/events"; import { cn } from "@/lib/utils"; +// Official Google "G" logo with brand colors +const GoogleLogo = ({ className }: { className?: string }) => ( + + + + + + +); + +// Sign in button component that handles both Google OAuth and local auth +const SignInButton = ({ variant = "desktop" }: { variant?: "desktop" | "mobile" }) => { + const isGoogleAuth = AUTH_TYPE === "GOOGLE"; + + const handleGoogleLogin = () => { + trackLoginAttempt("google"); + window.location.href = `${BACKEND_URL}/auth/google/authorize-redirect`; + }; + + if (isGoogleAuth) { + return ( + + + Sign In + + ); + } + + return ( + + Sign In + + ); +}; + export const Navbar = () => { const [isScrolled, setIsScrolled] = useState(false); @@ -102,12 +169,7 @@ const DesktopNav = ({ navItems, isScrolled }: any) => { )} - - Sign In - + ); @@ -191,12 +253,7 @@ const MobileNav = ({ navItems, isScrolled }: any) => { - - Sign In - + )}