Return the invitation data after accept/decline
This commit is contained in:
parent
49946660c3
commit
516bac573a
|
@ -224,7 +224,7 @@ async def delete_invitation(invitation_id: PydanticObjectId, user: CurrentUserDe
|
||||||
|
|
||||||
|
|
||||||
@invitations_router.post("/{invitation_id}/accept")
|
@invitations_router.post("/{invitation_id}/accept")
|
||||||
async def accept_invitation(invitation_id: PydanticObjectId, user: CurrentUserDep) -> Response:
|
async def accept_invitation(invitation_id: PydanticObjectId, user: CurrentUserDep) -> InvitationData:
|
||||||
"""Accept an invitation."""
|
"""Accept an invitation."""
|
||||||
invitation = await Invitation.get(invitation_id, fetch_links=True)
|
invitation = await Invitation.get(invitation_id, fetch_links=True)
|
||||||
if invitation is None:
|
if invitation is None:
|
||||||
|
@ -242,7 +242,7 @@ async def accept_invitation(invitation_id: PydanticObjectId, user: CurrentUserDe
|
||||||
# Mark the invitation as accepted
|
# Mark the invitation as accepted
|
||||||
invitation.status = "accepted"
|
invitation.status = "accepted"
|
||||||
invitation.responded_at = datetime.now(tz=UTC)
|
invitation.responded_at = datetime.now(tz=UTC)
|
||||||
_ = await invitation.save()
|
_ = await invitation.replace()
|
||||||
|
|
||||||
# Add the user to the event
|
# Add the user to the event
|
||||||
event = invitation.event
|
event = invitation.event
|
||||||
|
@ -262,11 +262,11 @@ async def accept_invitation(invitation_id: PydanticObjectId, user: CurrentUserDe
|
||||||
)
|
)
|
||||||
notification = await notification.create()
|
notification = await notification.create()
|
||||||
|
|
||||||
return Response(status_code=status.HTTP_204_NO_CONTENT)
|
return InvitationData.from_invitation(invitation)
|
||||||
|
|
||||||
|
|
||||||
@invitations_router.post("/{invitation_id}/decline")
|
@invitations_router.post("/{invitation_id}/decline")
|
||||||
async def decline_invitation(invitation_id: PydanticObjectId, user: CurrentUserDep) -> Response:
|
async def decline_invitation(invitation_id: PydanticObjectId, user: CurrentUserDep) -> InvitationData:
|
||||||
"""Decline an invitation."""
|
"""Decline an invitation."""
|
||||||
invitation = await Invitation.get(invitation_id, fetch_links=True)
|
invitation = await Invitation.get(invitation_id, fetch_links=True)
|
||||||
if invitation is None:
|
if invitation is None:
|
||||||
|
@ -283,7 +283,7 @@ async def decline_invitation(invitation_id: PydanticObjectId, user: CurrentUserD
|
||||||
|
|
||||||
invitation.status = "declined"
|
invitation.status = "declined"
|
||||||
invitation.responded_at = datetime.now(tz=UTC)
|
invitation.responded_at = datetime.now(tz=UTC)
|
||||||
_ = await invitation.save()
|
_ = await invitation.replace()
|
||||||
|
|
||||||
# Send back a notification to the invitor about the decline
|
# Send back a notification to the invitor about the decline
|
||||||
notification = Notification(
|
notification = Notification(
|
||||||
|
@ -295,7 +295,7 @@ async def decline_invitation(invitation_id: PydanticObjectId, user: CurrentUserD
|
||||||
)
|
)
|
||||||
notification = await notification.create()
|
notification = await notification.create()
|
||||||
|
|
||||||
return Response(status_code=status.HTTP_204_NO_CONTENT)
|
return InvitationData.from_invitation(invitation)
|
||||||
|
|
||||||
|
|
||||||
router = APIRouter()
|
router = APIRouter()
|
||||||
|
|
Loading…
Reference in a new issue