Compare commits

..

2 Commits

Author SHA1 Message Date
a8b79fb5ca Merge branch 'main' into additiona-status-changes
Some checks failed
Playwright Tests / test (pull_request) Has been cancelled
Check usage of free licenses / build-static-assets (pull_request) Has been cancelled
Build Nginx-based docker image / build-static-assets (pull_request) Has been cancelled
2024-10-27 18:29:13 +00:00
a4178038ad Merge pull request 'Feature: Mark guests as invited' (#60) from guest-status-changes into main
Some checks failed
Build Nginx-based docker image / build-static-assets (push) Failing after 41s
Check usage of free licenses / build-static-assets (push) Successful in 2m22s
Playwright Tests / test (push) Has been cancelled
Reviewed-on: #60
2024-10-27 18:28:22 +00:00
2 changed files with 7 additions and 10 deletions

View File

@ -21,7 +21,7 @@ export type Guest = {
name: string;
email: string;
group_name: string;
status: 'Considered' | 'Invited' | 'Confirmed' | 'Declined' | 'Tentative';
status: 'Considered' | 'Invited' | 'Confirmed' | 'Declined';
}
export type Group = {

View File

@ -29,7 +29,6 @@ export default function guestsTable() {
const handleInviteGuest = (e: React.MouseEvent<HTMLElement>) => handleGuestChange(e, 'invited');
const handleConfirmGuest = (e: React.MouseEvent<HTMLElement>) => handleGuestChange(e, 'confirmed');
const handleDeclineGuest = (e: React.MouseEvent<HTMLElement>) => handleGuestChange(e, 'declined');
const handleTentativeGuest = (e: React.MouseEvent<HTMLElement>) => handleGuestChange(e, 'tentative');
const handleGuestChange = (e: React.MouseEvent<HTMLElement>, status:string) => {
fetch("/api/guests/bulk_update.json",
@ -95,7 +94,6 @@ export default function guestsTable() {
'bg-blue-400': guest.status === 'Invited',
'bg-green-600': guest.status === 'Confirmed',
'bg-red-400': guest.status === 'Declined',
'bg-yellow-400': guest.status === 'Tentative',
}
)}>
</span>
@ -106,13 +104,12 @@ export default function guestsTable() {
{guest.status === 'Considered' && (<button data-guest-id={guest.id} onClick={handleInviteGuest} className={`${ctaClassName} bg-blue-400 hover:bg-blue-600`}>
Invite
</button>)}
{guest.status === 'Invited' && (
<>
<button data-guest-id={guest.id} onClick={handleConfirmGuest} className={`${ctaClassName} bg-green-500 hover:bg-green-600`}>Confirm</button>
<button data-guest-id={guest.id} onClick={handleDeclineGuest} className={`${ctaClassName} bg-yellow-500 hover:bg-yellow-700`}>Tentative</button>
<button data-guest-id={guest.id} onClick={handleDeclineGuest} className={`${ctaClassName} bg-red-500 hover:bg-red-600`}>Decline</button>
</>
)}
{guest.status === 'Invited' && (<button data-guest-id={guest.id} onClick={handleConfirmGuest} className={`${ctaClassName} bg-green-500 hover:bg-green-600`}>
Confirm
</button>)}
{guest.status === 'Invited' && (<button data-guest-id={guest.id} onClick={handleDeclineGuest} className={`${ctaClassName} bg-red-500 hover:bg-red-600`}>
Decline
</button>)}
</td>
</tr>
))}