nav: show register/login when logged out, move guides/collection to menu

This commit is contained in:
Justin Edmund 2025-11-30 23:16:04 -08:00
parent 7e02884941
commit d412e760ab

View file

@ -44,6 +44,7 @@
const collectionHref = $derived(localizeHref('/collection')) const collectionHref = $derived(localizeHref('/collection'))
const meHref = $derived(localizeHref('/me')) const meHref = $derived(localizeHref('/me'))
const loginHref = $derived(localizeHref('/auth/login')) const loginHref = $derived(localizeHref('/auth/login'))
const registerHref = $derived(localizeHref('/auth/register'))
const settingsHref = $derived(localizeHref('/settings')) const settingsHref = $derived(localizeHref('/settings'))
const databaseHref = $derived(localizeHref('/database')) const databaseHref = $derived(localizeHref('/database'))
const newTeamHref = $derived(localizeHref('/teams/new')) const newTeamHref = $derived(localizeHref('/teams/new'))
@ -151,15 +152,15 @@
<li> <li>
<a href={galleryHref} class:selected={isNavSelected(galleryHref)}>{m.nav_gallery()}</a> <a href={galleryHref} class:selected={isNavSelected(galleryHref)}>{m.nav_gallery()}</a>
</li> </li>
<li><a href={guidesHref} class:selected={isNavSelected(guidesHref)}>Guides</a></li> {#if isAuth}
<li> <!-- Authenticated: show Guides and Collection in nav -->
<a href={collectionHref} class:selected={isNavSelected(collectionHref)} <li><a href={guidesHref} class:selected={isNavSelected(guidesHref)}>Guides</a></li>
>{m.nav_collection()}</a <li>
> <a href={collectionHref} class:selected={isNavSelected(collectionHref)}
</li> >{m.nav_collection()}</a
>
<li> </li>
{#if isAuth} <li>
<a <a
href={meHref} href={meHref}
class:selected={isProfileSelected} class:selected={isProfileSelected}
@ -178,12 +179,18 @@
{/if} {/if}
<span>{username}</span> <span>{username}</span>
</a> </a>
{:else} </li>
<a href={loginHref} class:selected={isNavSelected(loginHref)} aria-label="Login" {:else}
>{m.nav_login()}</a <!-- Not authenticated: show Register and Log in -->
<li>
<a href={registerHref} class:selected={isNavSelected(registerHref)}
>{m.nav_register()}</a
> >
{/if} </li>
</li> <li>
<a href={loginHref} class:selected={isNavSelected(loginHref)}>{m.nav_login()}</a>
</li>
{/if}
<li> <li>
<DropdownMenu.Root> <DropdownMenu.Root>
@ -193,6 +200,16 @@
<DropdownMenu.Portal> <DropdownMenu.Portal>
<DropdownMenu.Content class="dropdown-content" sideOffset={5}> <DropdownMenu.Content class="dropdown-content" sideOffset={5}>
{#if !isAuth}
<!-- Not authenticated: show Guides and Collection in dropdown -->
<DropdownItem>
<a href={guidesHref}>Guides</a>
</DropdownItem>
<DropdownItem>
<a href={collectionHref}>{m.nav_collection()}</a>
</DropdownItem>
<DropdownMenu.Separator class="dropdown-separator" />
{/if}
<DropdownItem> <DropdownItem>
<button onclick={() => (settingsModalOpen = true)}> <button onclick={() => (settingsModalOpen = true)}>
{m.nav_settings()} {m.nav_settings()}