Many an update!

This commit is contained in:
Jennie Robinson Faber 2025-12-01 15:26:42 +00:00
parent 85195d6c7a
commit d588c49946
35 changed files with 3528 additions and 1142 deletions

View file

@ -10,7 +10,7 @@
<section class="py-12 px-4">
<UContainer class="px-4">
<!-- Stats -->
<div v-if="!pending" class="mb-8 flex items-center justify-between">
<div v-if="isAuthenticated && !pending" class="mb-8 flex items-center justify-between">
<div class="text-ghost-300">
<span class="text-2xl font-bold text-ghost-100">{{ total }}</span>
{{ total === 1 ? "update" : "updates" }} posted
@ -31,6 +31,23 @@
</div>
</div>
<!-- Unauthenticated State -->
<div
v-else-if="!isAuthenticated"
class="flex justify-center items-center py-20"
>
<div class="text-center max-w-md">
<div class="w-16 h-16 bg-ghost-800 border border-ghost-600 rounded-full flex items-center justify-center mx-auto mb-4">
<Icon name="heroicons:lock-closed" class="w-8 h-8 text-ghost-400" />
</div>
<h2 class="text-xl font-semibold text-ghost-100 mb-2">Sign in required</h2>
<p class="text-ghost-400 mb-6">Please sign in to view your updates.</p>
<UButton @click="openLoginModal({ title: 'Sign in to view your updates', description: 'Enter your email to access your updates' })">
Sign In
</UButton>
</div>
</div>
<!-- Updates List -->
<div v-else-if="updates.length" class="space-y-6">
<UpdateCard
@ -111,6 +128,7 @@
<script setup>
const { isAuthenticated, checkMemberStatus } = useAuth();
const { openLoginModal } = useLoginModal();
const updates = ref([]);
const pending = ref(false);
@ -127,7 +145,11 @@ onMounted(async () => {
if (!isAuthenticated.value) {
const authenticated = await checkMemberStatus();
if (!authenticated) {
await navigateTo("/login");
// Show login modal instead of redirecting
openLoginModal({
title: "Sign in to view your updates",
description: "Enter your email to access your updates",
});
return;
}
}