From 4050b33d0efb00ac1e5177207bc5f9aff3ce67e1 Mon Sep 17 00:00:00 2001 From: padreug Date: Tue, 21 Oct 2025 22:31:35 +0200 Subject: [PATCH] Enables marking scheduled events as complete Implements a feature to mark scheduled events as complete, replacing the checkbox with a button for improved UX. This commit enhances the Scheduled Events functionality by allowing users to mark events as complete. It also includes: - Replaces the checkbox with a "Mark Complete" button for better usability. - Adds logging for debugging purposes during event completion toggling. - Routes completion events (kind 31925) to the ScheduledEventService. - Optimistically updates the local state after publishing completion events. --- .../nostr-feed/components/NostrFeed.vue | 6 +- .../components/ScheduledEventCard.vue | 117 +++++++++--------- .../composables/useScheduledEvents.ts | 8 +- .../nostr-feed/services/FeedService.ts | 3 + .../services/ScheduledEventService.ts | 17 ++- 5 files changed, 91 insertions(+), 60 deletions(-) diff --git a/src/modules/nostr-feed/components/NostrFeed.vue b/src/modules/nostr-feed/components/NostrFeed.vue index 6031a0e..614eb90 100644 --- a/src/modules/nostr-feed/components/NostrFeed.vue +++ b/src/modules/nostr-feed/components/NostrFeed.vue @@ -169,10 +169,12 @@ async function onToggleLike(note: FeedPost) { // Handle scheduled event completion toggle async function onToggleComplete(event: ScheduledEvent) { + console.log('🎯 NostrFeed: onToggleComplete called for event:', event.title) try { await toggleComplete(event) + console.log('✅ NostrFeed: toggleComplete succeeded') } catch (error) { - console.error('Failed to toggle event completion:', error) + console.error('❌ NostrFeed: Failed to toggle event completion:', error) } } @@ -397,8 +399,8 @@ function cancelDelete() { v-for="event in todaysScheduledEvents" :key="`${event.pubkey}:${event.dTag}`" :event="event" - :completion="getCompletion(`31922:${event.pubkey}:${event.dTag}`)" :get-display-name="getDisplayName" + :get-completion="getCompletion" :admin-pubkeys="adminPubkeys" @toggle-complete="onToggleComplete" /> diff --git a/src/modules/nostr-feed/components/ScheduledEventCard.vue b/src/modules/nostr-feed/components/ScheduledEventCard.vue index 4480974..7ea3d65 100644 --- a/src/modules/nostr-feed/components/ScheduledEventCard.vue +++ b/src/modules/nostr-feed/components/ScheduledEventCard.vue @@ -1,14 +1,14 @@ @@ -88,63 +92,64 @@ function handleToggleComplete() {