From 28efa115adb65d0a8c025f00d523343f9eb5be61 Mon Sep 17 00:00:00 2001
From: briannelson95 <71141646+briannelson95@users.noreply.github.com>
Date: Sat, 28 Jun 2025 20:23:22 -0400
Subject: [PATCH] managing rsvps
---
README.md | 12 +-
app/(auth)/dashboard/page.tsx | 51 +---
app/(auth)/events/[eventId]/page.tsx | 5 +-
app/(auth)/events/create/page.tsx | 32 ---
app/(auth)/layout.tsx | 15 +-
app/(public)/setup/page.tsx | 4 +-
app/api/events/[eventId]/guests/add/route.ts | 8 +-
app/api/events/create/route.ts | 24 ++
app/api/events/route.ts | 21 --
app/api/guestbook/search/route.ts | 29 +++
components/AddFirstGuestBookEntryClient.tsx | 24 ++
components/AddGuestFromGuestBook.tsx | 113 +++++++++
components/CreateEventClient.tsx | 23 ++
components/CreateEventModal.tsx | 93 ++++++++
components/DashboardNavbar.tsx | 19 ++
components/EventInfoDisplay.tsx | 234 ++++++++++++-------
lib/helper/addGuest.ts | 26 +++
lib/helper/createEvent.ts | 23 ++
lib/queries.ts | 9 +-
19 files changed, 568 insertions(+), 197 deletions(-)
delete mode 100644 app/(auth)/events/create/page.tsx
create mode 100644 app/api/events/create/route.ts
delete mode 100644 app/api/events/route.ts
create mode 100644 app/api/guestbook/search/route.ts
create mode 100644 components/AddFirstGuestBookEntryClient.tsx
create mode 100644 components/AddGuestFromGuestBook.tsx
create mode 100644 components/CreateEventClient.tsx
create mode 100644 components/CreateEventModal.tsx
create mode 100644 components/DashboardNavbar.tsx
create mode 100644 lib/helper/addGuest.ts
create mode 100644 lib/helper/createEvent.ts
diff --git a/README.md b/README.md
index 4c01563..f172af4 100644
--- a/README.md
+++ b/README.md
@@ -13,17 +13,17 @@ My goal for this project is to be an all-in-one self hosted event planner for ma
- [x] Invite users via email (smtp) users can be COUPLE, PLANNER, GUEST
- [x] Create local accounts (no use of SMTP)
- [x] Creating and Editing custom events
- - [ ] Information about each event
+ - [x] Information about each event
- Date/Time
- Event type
- Details
- Location
- [x] Guest book (contact information)
- [x] Ability to switch between table or card view
- - [ ] Add Guests to events
+ - [x] Add Guests to events
- [ ] Invite guests via email
- [ ] Create local account for guest
-- [ ] Managing RSVP lists
+- [x] Managing RSVP lists
- [ ] Guest accounts
- [ ] Gift Registries
- [ ] Ability for guests to mark an item as purchased
@@ -55,6 +55,12 @@ My goal for this project is to be an all-in-one self hosted event planner for ma
- added ability to add and edit guests to guest book
- save guest infomation (name, email, phone, address, side (which side of the couple), notes)
+#### 6.28.25
+### RSVP List
+- add guests from GuestBook to any event
+- search GuestBook to add guests
+- change status of RSVP
+
## Getting Started
This is very much a work in progress but this `README` will stay up to date on working features and steps to get it running **in its current state**. That being said if you're interested in starting it as is, you can follow these instructions.
diff --git a/app/(auth)/dashboard/page.tsx b/app/(auth)/dashboard/page.tsx
index f1ce5db..428cd63 100644
--- a/app/(auth)/dashboard/page.tsx
+++ b/app/(auth)/dashboard/page.tsx
@@ -1,3 +1,7 @@
+import AddFirstGuestBookEntryClient from '@/components/AddFirstGuestBookEntryClient'
+import AddGuestBookEntryModal from '@/components/AddGuestBookEntryModal'
+import CreateEventClient from '@/components/CreateEventClient'
+import DashboardNavbar from '@/components/DashboardNavbar'
import EventInfoQuickView from '@/components/EventInfoQuickView'
import GuestBookQuickView from '@/components/GuestBookQuickView'
import { prisma } from '@/lib/prisma'
@@ -9,32 +13,21 @@ import React from 'react'
export default async function DashboardPage() {
const events = await queries.fetchEvents();
const guestBookEntries = await queries.fetchGuestBookEntries(5);
- const session = await getServerSession()
+ const session = await getServerSession();
const user = await prisma.user.findUnique({
where: { email: session?.user.email }
})
- // console.log(events)
return (
-
-
-
-
-
Hello, {user?.username}
-
-
Overview
-
-
+
+
Your Events
-
+
+ {!events.length && <>You don't have any events yet. Create your first event.>}
{events.map((item) => (
@@ -45,7 +38,7 @@ export default async function DashboardPage() {
View all