From 1c71c6df7a1f26982f2ccf397ff2b06a2126a5d0 Mon Sep 17 00:00:00 2001 From: Suneet Srivastava Date: Wed, 22 Jan 2020 20:03:06 +0530 Subject: [PATCH] fix: filtered deleted entities from user favourite events (#6764) --- app/api/user_favourite_events.py | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) diff --git a/app/api/user_favourite_events.py b/app/api/user_favourite_events.py index 46c5fd6e38..d1340fa574 100644 --- a/app/api/user_favourite_events.py +++ b/app/api/user_favourite_events.py @@ -35,8 +35,7 @@ def before_post(self, args, kwargs, data): raise ForbiddenException({'source': ''}, 'Only Authorized Users can favourite an event') data['user'] = current_user.id - user_favourite_event = UserFavouriteEvent.query.filter_by( - user=current_user, event_id=int(data['event'])).first() + user_favourite_event = find_user_favourite_event_by_id(event_id=data['event']) if user_favourite_event: raise ConflictException({'pointer': '/data/relationships/event'}, "Event already favourited") @@ -86,8 +85,7 @@ def before_get_object(self, view_kwargs): if view_kwargs.get('id') is not None: try: - user_favourite_event = UserFavouriteEvent.query.filter_by( - user=current_user, event_id=view_kwargs['id']).first() + user_favourite_event = find_user_favourite_event_by_id(event_id=view_kwargs['id']) except NoResultFound: raise ObjectNotFound({'source': '/data/relationships/event'}, "Object: not found") else: @@ -113,3 +111,9 @@ class UserFavouriteEventRelationship(ResourceRelationship): methods = ['GET'] data_layer = {'session': db.session, 'model': UserFavouriteEvent} + + +def find_user_favourite_event_by_id(event_id): + return UserFavouriteEvent.query.filter_by(deleted_at=None, + user=current_user, + event_id=event_id).first()