Skip to content

Commit

Permalink
removed duplicates from execption.py
Browse files Browse the repository at this point in the history
  • Loading branch information
Satyam52 committed May 16, 2020
1 parent ffa1ab0 commit eb1a214
Show file tree
Hide file tree
Showing 43 changed files with 275 additions and 234 deletions.
15 changes: 9 additions & 6 deletions app/api/access_codes.py
Original file line number Diff line number Diff line change
Expand Up @@ -6,9 +6,12 @@
from app.api.helpers.db import safe_query
from app.api.helpers.exceptions import (
ConflictException,
ForbiddenException,
UnprocessableEntity,
)
from app.api.helpers.errors import (
UnprocessableEntityError ,
ForbiddenError
)

from app.api.helpers.permission_manager import has_access
from app.api.helpers.permissions import jwt_required
from app.api.helpers.query import event_query
Expand Down Expand Up @@ -36,7 +39,7 @@ def before_post(self, args, kwargs, data):
"""
require_relationship(['event', 'user'], data)
if not has_access('is_coorganizer', event_id=data['event']):
raise ForbiddenException({'source': ''}, "Minimum Organizer access required")
raise ForbiddenError({'source': ''}, "Minimum Organizer access required")

def before_create_object(self, data, view_kwargs):
"""
Expand Down Expand Up @@ -93,12 +96,12 @@ def query(self, view_kwargs):
if view_kwargs.get('user_id'):
user = safe_query(User, 'id', view_kwargs['user_id'], 'user_id')
if not has_access('is_user_itself', user_id=user.id):
raise ForbiddenException({'source': ''}, 'Access Forbidden')
raise ForbiddenError({'source': ''}, 'Access Forbidden')
query_ = query_.join(User).filter(User.id == user.id)
if view_kwargs.get('ticket_id'):
ticket = safe_query(Ticket, 'id', view_kwargs['ticket_id'], 'ticket_id')
if not has_access('is_coorganizer', event_id=ticket.event_id):
raise ForbiddenException({'source': ''}, 'Access Forbidden')
raise ForbiddenError({'source': ''}, 'Access Forbidden')
# access_code - ticket :: many-to-many relationship
query_ = AccessCode.query.filter(AccessCode.tickets.any(id=ticket.id))
query_
Expand Down Expand Up @@ -160,7 +163,7 @@ def before_get(self, args, kwargs):
raise ObjectNotFound({'parameter': '{id}'}, "Access Code: not found")

if not has_access('is_coorganizer', event_id=access.event_id):
raise UnprocessableEntity({'source': ''}, "Please verify your permission")
raise UnprocessableEntityError({'source': ''}, "Please verify your permission")

decorators = (
api.has_permission(
Expand Down
39 changes: 21 additions & 18 deletions app/api/attendees.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,11 @@
from app.api.helpers.db import safe_query
from app.api.helpers.exceptions import (
ConflictException,
ForbiddenException,
UnprocessableEntity,

)
from app.api.helpers.errors import (
ForbiddenError,
UnprocessableEntityError
)
from app.api.helpers.permission_manager import has_access
from app.api.helpers.permissions import jwt_required
Expand Down Expand Up @@ -76,11 +79,11 @@ def before_post(self, args, kwargs, data):
.first()
)
if ticket is None:
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'pointer': '/data/relationships/ticket'}, "Invalid Ticket"
)
if ticket.event_id != int(data['event']):
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'pointer': '/data/relationships/ticket'},
"Ticket belongs to a different Event",
)
Expand All @@ -92,19 +95,19 @@ def before_post(self, args, kwargs, data):

if 'device_name_checkin' in data and data['device_name_checkin'] is not None:
if 'is_checked_in' not in data or not data['is_checked_in']:
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'pointer': '/data/attributes/device_name_checkin'},
"Attendee needs to be checked in first",
)
elif 'checkin_times' not in data or data['checkin_times'] is None:
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'pointer': '/data/attributes/device_name_checkin'},
"Check in Times missing",
)
elif len(data['checkin_times'].split(",")) != len(
data['device_name_checkin'].split(",")
):
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'pointer': '/data/attributes/device_name_checkin'},
"Check in Times missing for the corresponding device name",
)
Expand Down Expand Up @@ -139,19 +142,19 @@ def query(self, view_kwargs):
if not has_access('is_registrar', event_id=order.event_id) and not has_access(
'is_user_itself', user_id=order.user_id
):
raise ForbiddenException({'source': ''}, 'Access Forbidden')
raise ForbiddenError({'source': ''}, 'Access Forbidden')
query_ = query_.join(Order).filter(Order.id == order.id)

if view_kwargs.get('ticket_id'):
ticket = safe_query(Ticket, 'id', view_kwargs['ticket_id'], 'ticket_id')
# if not has_access('is_registrar', event_id=ticket.event_id):
# raise ForbiddenException({'source': ''}, 'Access Forbidden')
# raise ForbiddenError({'source': ''}, 'Access Forbidden')
query_ = query_.join(Ticket).filter(Ticket.id == ticket.id)

if view_kwargs.get('user_id'):
user = safe_query(User, 'id', view_kwargs['user_id'], 'user_id')
if not has_access('is_user_itself', user_id=user.id):
raise ForbiddenException({'source': ''}, 'Access Forbidden')
raise ForbiddenError({'source': ''}, 'Access Forbidden')
query_ = query_.join(User, User.email == TicketHolder.email).filter(
User.id == user.id
)
Expand Down Expand Up @@ -188,7 +191,7 @@ def before_get_object(self, view_kwargs):
user_id=current_user.id,
event_id=attendee.event_id,
):
raise ForbiddenException(
raise ForbiddenError(
{'source': 'User'}, 'You are not authorized to access this.'
)

Expand All @@ -200,7 +203,7 @@ def before_delete_object(self, obj, kwargs):
:return:
"""
if not has_access('is_registrar', event_id=obj.event_id):
raise ForbiddenException(
raise ForbiddenError(
{'source': 'User'}, 'You are not authorized to access this.'
)

Expand All @@ -213,7 +216,7 @@ def before_update_object(self, obj, data, kwargs):
:return:
"""
# if not has_access('is_registrar', event_id=obj.event_id):
# raise ForbiddenException({'source': 'User'}, 'You are not authorized to access this.')
# raise ForbiddenError({'source': 'User'}, 'You are not authorized to access this.')

if 'ticket' in data:
ticket = (
Expand All @@ -222,20 +225,20 @@ def before_update_object(self, obj, data, kwargs):
.first()
)
if ticket is None:
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'pointer': '/data/relationships/ticket'}, "Invalid Ticket"
)

if 'device_name_checkin' in data:
if 'checkin_times' not in data or data['checkin_times'] is None:
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'pointer': '/data/attributes/device_name_checkin'},
"Check in Times missing",
)

if 'is_checked_in' in data and data['is_checked_in']:
if 'checkin_times' not in data or data['checkin_times'] is None:
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'pointer': '/data/attributes/checkin_times'},
"Check in time missing while trying to check in attendee",
)
Expand All @@ -249,7 +252,7 @@ def before_update_object(self, obj, data, kwargs):
elif obj.checkin_times and data[
'checkin_times'
] in obj.checkin_times.split(","):
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'pointer': '/data/attributes/checkin_times'},
"Check in time already present",
)
Expand All @@ -266,7 +269,7 @@ def before_update_object(self, obj, data, kwargs):
if len(data['checkin_times'].split(",")) != len(
data['device_name_checkin'].split(",")
):
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'pointer': '/data/attributes/device_name_checkin'},
"Check in Time missing for the corresponding device name",
)
Expand Down
7 changes: 4 additions & 3 deletions app/api/data_layers/ChargesLayer.py
Original file line number Diff line number Diff line change
@@ -1,7 +1,8 @@
from flask_rest_jsonapi.data_layers.base import BaseDataLayer
from flask_rest_jsonapi.exceptions import ObjectNotFound

from app.api.helpers.exceptions import ConflictException, UnprocessableEntity
from app.api.helpers.exceptions import ConflictException
from app.api.helpers.errors import UnprocessableEntityError
from app.api.helpers.ticketing import TicketingManager
from app.models.order import Order

Expand Down Expand Up @@ -51,7 +52,7 @@ def create_object(self, data, view_kwargs):
# charge through stripe
if order.payment_mode == 'stripe':
if not data.get('stripe'):
raise UnprocessableEntity({'source': ''}, "stripe token is missing")
raise UnprocessableEntityError({'source': ''}, "stripe token is missing")
if not order.event.can_pay_by_stripe:
raise ConflictException(
{'': ''}, "This event doesn't accept payments by Stripe"
Expand All @@ -66,7 +67,7 @@ def create_object(self, data, view_kwargs):
# charge through paypal
elif order.payment_mode == 'paypal':
if (not data.get('paypal_payer_id')) or (not data.get('paypal_payment_id')):
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'source': ''}, "paypal_payer_id or paypal_payment_id or both missing"
)
if not order.event.can_pay_by_paypal:
Expand Down
38 changes: 20 additions & 18 deletions app/api/discount_codes.py
Original file line number Diff line number Diff line change
Expand Up @@ -8,9 +8,11 @@
from app.api.helpers.db import safe_query
from app.api.helpers.exceptions import (
ConflictException,
ForbiddenException,
MethodNotAllowed,
UnprocessableEntity,
)
from app.api.helpers.errors import (
ForbiddenError,
UnprocessableEntityError
)
from app.api.helpers.permission_manager import has_access
from app.api.helpers.permissions import jwt_required
Expand Down Expand Up @@ -59,13 +61,13 @@ def before_post(self, args, kwargs, data):
if data['used_for'] == 'ticket':
require_relationship(['event'], data)
if not has_access('is_coorganizer', event_id=data['event']):
raise ForbiddenException({'source': ''}, 'You are not authorized')
raise ForbiddenError({'source': ''}, 'You are not authorized')
elif (
data['used_for'] == 'event'
and not has_access('is_admin')
and 'events' in data
):
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'source': ''}, "Please verify your permission or check your relationship"
)

Expand All @@ -83,11 +85,11 @@ def before_create_object(self, data, view_kwargs):
.one()
)
except NoResultFound:
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'event_id': event}, "Event does not exist"
)
if event_now.discount_code_id:
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'event_id': event},
"A Discount Code already exists for the provided Event ID",
)
Expand All @@ -104,7 +106,7 @@ def before_get(self, args, kwargs):
if has_access('is_admin'):
self.schema = DiscountCodeSchemaEvent
else:
raise UnprocessableEntity({'source': ''}, "You are not authorized")
raise UnprocessableEntityError({'source': ''}, "You are not authorized")

decorators = (jwt_required,)
schema = DiscountCodeSchemaTicket
Expand Down Expand Up @@ -136,7 +138,7 @@ def query(self, view_kwargs):
user = safe_query(User, 'id', view_kwargs['user_id'], 'user_id')
query_ = query_.join(User).filter(User.id == user.id)
else:
raise ForbiddenException({'source': ''}, 'You are not authorized')
raise ForbiddenError({'source': ''}, 'You are not authorized')

if view_kwargs.get('event_identifier'):
event = safe_query(
Expand All @@ -150,7 +152,7 @@ def query(self, view_kwargs):
self.schema = DiscountCodeSchemaTicket
query_ = query_.filter_by(event_id=view_kwargs['event_id'])
else:
raise ForbiddenException(
raise ForbiddenError(
{'source': ''}, 'Event organizer access required'
)

Expand Down Expand Up @@ -217,7 +219,7 @@ def before_get(self, args, kwargs):
else:
kwargs['id'] = None
else:
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'source': ''},
"Please verify your permission. You must have coorganizer "
"privileges to view ticket discount code details",
Expand All @@ -230,7 +232,7 @@ def before_get(self, args, kwargs):
else:
kwargs['id'] = None
else:
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'source': ''},
"Please verify your permission. You must be admin to view event discount code details",
)
Expand Down Expand Up @@ -308,7 +310,7 @@ def before_get(self, args, kwargs):
elif discount.used_for == 'event':
self.schema = DiscountCodeSchemaEvent
else:
raise UnprocessableEntity({'source': ''}, "Please verify your permission")
raise UnprocessableEntityError({'source': ''}, "Please verify your permission")

def before_get_object(self, view_kwargs):
"""
Expand Down Expand Up @@ -372,10 +374,10 @@ def before_get_object(self, view_kwargs):
elif discount.used_for == 'event':
self.schema = DiscountCodeSchemaEvent
else:
raise UnprocessableEntity({'source': ''}, "Please verify your permission")
raise UnprocessableEntityError({'source': ''}, "Please verify your permission")

elif not view_kwargs.get('id') and not has_access('is_admin'):
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'source': ''},
"Please verify your permission. You must be admin to view event\
discount code details",
Expand Down Expand Up @@ -409,7 +411,7 @@ def before_update_object(self, discount, data, view_kwargs):
self.schema = DiscountCodeSchemaEvent
self.resource.schema = DiscountCodeSchemaEvent
else:
raise UnprocessableEntity({'source': ''}, "Please verify your permission")
raise UnprocessableEntityError({'source': ''}, "Please verify your permission")

def before_delete_object(self, discount, view_kwargs):
"""
Expand All @@ -426,7 +428,7 @@ def before_delete_object(self, discount, view_kwargs):
elif discount.used_for == 'event' and has_access('is_admin'):
self.schema = DiscountCodeSchemaEvent
else:
raise UnprocessableEntity({'source': ''}, "Please verify your permission")
raise UnprocessableEntityError({'source': ''}, "Please verify your permission")

# decorators = (jwt_required,)
schema = DiscountCodeSchemaTicket
Expand Down Expand Up @@ -465,7 +467,7 @@ def before_get(self, args, kwargs):
elif discount.used_for == 'event' and has_access('is_admin'):
self.schema = DiscountCodeSchemaEvent
else:
raise UnprocessableEntity({'source': ''}, "Please verify your permission")
raise UnprocessableEntityError({'source': ''}, "Please verify your permission")

methods = ['GET', 'PATCH']
decorators = (jwt_required,)
Expand Down Expand Up @@ -498,7 +500,7 @@ def before_get(self, args, kwargs):
elif discount.used_for == 'event' and has_access('is_admin'):
self.schema = DiscountCodeSchemaEvent
else:
raise UnprocessableEntity({'source': ''}, "Please verify your permission")
raise UnprocessableEntityError({'source': ''}, "Please verify your permission")

schema = DiscountCodeSchemaEvent
data_layer = {'session': db.session, 'model': DiscountCode}
6 changes: 3 additions & 3 deletions app/api/event_copyright.py
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@

from app.api.bootstrap import api
from app.api.helpers.db import safe_query
from app.api.helpers.exceptions import ForbiddenException, UnprocessableEntity
from app.api.helpers.errors import ForbiddenError,UnprocessableEntityError
from app.api.helpers.permission_manager import has_access
from app.api.helpers.utilities import require_relationship
from app.api.schema.event_copyright import EventCopyrightSchema
Expand All @@ -28,7 +28,7 @@ def before_post(self, args, kwargs, data):
"""
require_relationship(['event'], data)
if not has_access('is_coorganizer', event_id=data['event']):
raise ForbiddenException({'source': ''}, 'Co-organizer access is required.')
raise ForbiddenError({'source': ''}, 'Co-organizer access is required.')

def before_create_object(self, data, view_kwargs):
"""
Expand All @@ -44,7 +44,7 @@ def before_create_object(self, data, view_kwargs):
except NoResultFound:
pass
else:
raise UnprocessableEntity(
raise UnprocessableEntityError(
{'parameter': 'event_identifier'},
"Event Copyright already exists for the provided Event ID",
)
Expand Down
Loading

0 comments on commit eb1a214

Please sign in to comment.