refactor: merge ecology into /members, redirect old routes
- ecology.vue replaced with redirect to /members?view=ecology - connections.vue updated to skip the /ecology hop, redirects directly - Remove Ecology nav entry; Members covers it
This commit is contained in:
parent
4fff0bf4cd
commit
a448ea809d
3 changed files with 57 additions and 486 deletions
|
|
@ -35,7 +35,18 @@
|
|||
<div class="sidebar-section">Explore</div>
|
||||
<ul class="sidebar-nav">
|
||||
<li v-for="item in exploreItems" :key="item.path">
|
||||
<a
|
||||
v-if="item.external"
|
||||
:href="item.path"
|
||||
target="_blank"
|
||||
rel="noopener"
|
||||
@click="handleNavigate"
|
||||
>
|
||||
{{ item.label
|
||||
}}<span class="external-hint" aria-hidden="true">ext</span>
|
||||
</a>
|
||||
<NuxtLink
|
||||
v-else
|
||||
:to="item.path"
|
||||
:class="{ active: isActive(item.path) }"
|
||||
@click="handleNavigate"
|
||||
|
|
@ -50,7 +61,18 @@
|
|||
<div class="sidebar-section">Navigate</div>
|
||||
<ul class="sidebar-nav">
|
||||
<li v-for="item in publicItems" :key="item.path">
|
||||
<a
|
||||
v-if="item.external"
|
||||
:href="item.path"
|
||||
target="_blank"
|
||||
rel="noopener"
|
||||
@click="handleNavigate"
|
||||
>
|
||||
{{ item.label
|
||||
}}<span class="external-hint" aria-hidden="true">ext</span>
|
||||
</a>
|
||||
<NuxtLink
|
||||
v-else
|
||||
:to="item.path"
|
||||
:class="{ active: isActive(item.path) }"
|
||||
@click="handleNavigate"
|
||||
|
|
@ -77,7 +99,18 @@
|
|||
<div class="sidebar-section">Navigate</div>
|
||||
<ul class="sidebar-nav">
|
||||
<li v-for="item in publicItems" :key="item.path">
|
||||
<a
|
||||
v-if="item.external"
|
||||
:href="item.path"
|
||||
target="_blank"
|
||||
rel="noopener"
|
||||
@click="handleNavigate"
|
||||
>
|
||||
{{ item.label
|
||||
}}<span class="external-hint" aria-hidden="true">ext</span>
|
||||
</a>
|
||||
<NuxtLink
|
||||
v-else
|
||||
:to="item.path"
|
||||
:class="{ active: isActive(item.path) }"
|
||||
@click="handleNavigate"
|
||||
|
|
@ -105,12 +138,11 @@
|
|||
<div class="sidebar-meta">
|
||||
<ClientOnly>
|
||||
Part of
|
||||
<a href="https://babyghosts.fund" target="_blank">Baby Ghosts</a><br />
|
||||
<a href="https://babyghosts.org" target="_blank">Baby Ghosts</a><br />
|
||||
A Canadian nonprofit
|
||||
<template #fallback>
|
||||
Part of
|
||||
<a href="https://babyghosts.fund" target="_blank">Baby Ghosts</a
|
||||
><br />
|
||||
<a href="https://babyghosts.org" target="_blank">Baby Ghosts</a><br />
|
||||
A Canadian nonprofit
|
||||
</template>
|
||||
</ClientOnly>
|
||||
|
|
@ -136,8 +168,8 @@ const route = useRoute();
|
|||
const { isAuthenticated, memberData, logout } = useAuth();
|
||||
const isDev = import.meta.dev;
|
||||
|
||||
const showOnboardingDot = computed(() =>
|
||||
isAuthenticated.value && !memberData.value?.onboarding?.completedAt
|
||||
const showOnboardingDot = computed(
|
||||
() => isAuthenticated.value && !memberData.value?.onboarding?.completedAt,
|
||||
);
|
||||
|
||||
const handleNavigate = () => {
|
||||
|
|
@ -162,14 +194,10 @@ const publicItems = [
|
|||
{ label: "Home", path: "/" },
|
||||
{ label: "About", path: "/about" },
|
||||
{ label: "Events", path: "/events" },
|
||||
{ label: "Members", path: "/members" },
|
||||
{ label: "Wiki", path: "https://wiki.ghostguild.org" },
|
||||
{ label: "Wiki", path: "https://wiki.ghostguild.org", external: true },
|
||||
];
|
||||
|
||||
const joinItems = [
|
||||
{ label: "Become a member", path: "/join" },
|
||||
{ label: "Propose an event", path: "/events" },
|
||||
];
|
||||
const joinItems = [{ label: "Become a member", path: "/join" }];
|
||||
|
||||
// Logged-in nav items
|
||||
const youItems = [
|
||||
|
|
@ -182,8 +210,7 @@ const youItems = [
|
|||
const exploreItems = [
|
||||
{ label: "Events", path: "/events" },
|
||||
{ label: "Members", path: "/members" },
|
||||
{ label: "Ecology", path: "/ecology" },
|
||||
{ label: "Wiki", path: "https://wiki.ghostguild.org" },
|
||||
{ label: "Wiki", path: "https://wiki.ghostguild.org", external: true },
|
||||
{ label: "About", path: "/about" },
|
||||
];
|
||||
</script>
|
||||
|
|
@ -289,6 +316,20 @@ const exploreItems = [
|
|||
color: var(--candle-dim);
|
||||
}
|
||||
|
||||
.external-hint {
|
||||
font-size: 10px;
|
||||
letter-spacing: 0.05em;
|
||||
margin-left: 4px;
|
||||
position: relative;
|
||||
top: -0.5px;
|
||||
}
|
||||
.external-hint::before {
|
||||
content: "[";
|
||||
}
|
||||
.external-hint::after {
|
||||
content: "]";
|
||||
}
|
||||
|
||||
.onboarding-dot {
|
||||
display: inline-block;
|
||||
width: 6px;
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue