Updated Map View

This commit is contained in:
2026-06-16 14:42:05 +10:00
parent 3aba428d2a
commit badb4dc46f
4 changed files with 142 additions and 17 deletions
@@ -5,7 +5,7 @@ import type { SharedProps } from '@/Types/types'
import { ref, onMounted, onUnmounted } from 'vue'
import NotificationMenu from "@/Components/FlightsGoneBy/NotificationMenu.vue";
const props = usePage<SharedProps>().props
const page = usePage<SharedProps>()
const menuOpen = ref(false)
const dropdownOpen = ref(false)
const dropdownRef = ref<HTMLElement | null>(null)
@@ -27,23 +27,23 @@ onUnmounted(() => document.removeEventListener('click', handleClickOutside))
<header class="glass">
<Link href="/" class="brand">FlightsGoneBy</Link>
<NotificationMenu v-if="props.auth.user" :unread-count="props.unread_notification_count" />
<NotificationMenu v-if="page.props.auth?.user" :unread-count="page.props.unread_notification_count" />
<!-- Desktop nav -->
<nav class="nav-desktop">
<template v-if="!props.auth.user">
<template v-if="!page.props.auth?.user">
<Link :href="route('login')" class="nav-link">Log In</Link>
<Link :href="route('register')" class="nav-link nav-link--highlight">Register</Link>
</template>
<template v-else>
<Link :href="route('flights.add')" class="nav-link">Add Flight</Link>
<Link :href="route('profile.view', { user: props.auth.user.name })" class="nav-link">Profile</Link>
<Link :href="route('profile.view', { user: page.props.auth?.user.name })" class="nav-link">Profile</Link>
<Link :href="route('feed')" class="nav-link">Feed</Link>
<Link v-if="props.auth.roles.includes('admin')" :href="route('admin.dashboard')" class="nav-link">Admin</Link>
<Link v-if="page.props.auth.roles.includes('admin')" :href="route('admin.dashboard')" class="nav-link">Admin</Link>
<div class="dropdown" ref="dropdownRef">
<button class="nav-link dropdown-trigger" @click.stop="dropdownOpen = !dropdownOpen">
{{ props.auth.user.name }}
{{ page.props.auth.user.name }}
<svg xmlns="http://www.w3.org/2000/svg" width="12" height="12" viewBox="0 0 24 24" fill="none"
stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
<path d="m6 9 6 6 6-6"/>
@@ -67,14 +67,14 @@ onUnmounted(() => document.removeEventListener('click', handleClickOutside))
<!-- Mobile drawer -->
<Transition name="slide">
<nav v-if="menuOpen" class="nav-mobile" @click.stop>
<template v-if="!props.auth.user">
<template v-if="!page.props.auth?.user">
<Link :href="route('login')" class="nav-link" @click="menuOpen = false">Log In</Link>
<Link :href="route('register')" class="nav-link nav-link--highlight" @click="menuOpen = false">Register</Link>
</template>
<template v-else>
<span class="nav-greeting">Welcome, {{ props.auth.user.name }}</span>
<span class="nav-greeting">Welcome, {{ page.props.auth.user.name }}</span>
<Link :href="route('flights.add')" class="nav-link" @click="menuOpen = false">Add Flight</Link>
<Link :href="route('profile.view', { user: props.auth.user.name })" class="nav-link" @click="menuOpen = false">Profile</Link>
<Link :href="route('profile.view', { user: page.props.auth.user.name })" class="nav-link" @click="menuOpen = false">Profile</Link>
<Link :href="route('feed')" class="nav-link nav-link" @click="menuOpen = false">Feed</Link>
<Link :href="route('import.fr24')" class="nav-link" @click="menuOpen = false">Import from FR24</Link>
<Link :href="route('profile.settings')" class="nav-link" @click="menuOpen = false">Settings</Link>