stash
This commit is contained in:
parent
2c09540a1b
commit
125232d1c5
6 changed files with 27 additions and 47 deletions
|
@ -97,7 +97,7 @@ class ItemSerializer(serializers.ModelSerializer):
|
|||
|
||||
@api_view(['GET'])
|
||||
@permission_classes([IsAuthenticated])
|
||||
@permission_required('inventory.view_item', raise_exception=True)
|
||||
@permission_required('view_item', raise_exception=True)
|
||||
def search_items(request, event_slug, query):
|
||||
try:
|
||||
event = Event.objects.get(slug=event_slug)
|
||||
|
@ -117,11 +117,11 @@ def item(request, event_slug):
|
|||
try:
|
||||
event = Event.objects.get(slug=event_slug)
|
||||
if request.method == 'GET':
|
||||
if not request.user.has_event_perm(event, 'inventory.view_item'):
|
||||
if not request.user.has_event_perm(event, 'view_item'):
|
||||
return Response(status=403)
|
||||
return Response(ItemSerializer(Item.objects.filter(event=event), many=True).data)
|
||||
elif request.method == 'POST':
|
||||
if not request.user.has_event_perm(event, 'inventory.add_item'):
|
||||
if not request.user.has_event_perm(event, 'add_item'):
|
||||
return Response(status=403)
|
||||
validated_data = ItemSerializer(data=request.data)
|
||||
if validated_data.is_valid():
|
||||
|
@ -138,18 +138,19 @@ def item_by_id(request, event_slug, id):
|
|||
event = Event.objects.get(slug=event_slug)
|
||||
item = Item.objects.get(event=event, uid=id)
|
||||
if request.method == 'GET':
|
||||
if not request.user.has_event_perm(event, 'inventory.view_item'):
|
||||
if not request.user.has_event_perm(event, 'view_item'):
|
||||
return Response(status=403)
|
||||
return Response(ItemSerializer(item).data)
|
||||
elif request.method == 'PUT':
|
||||
if not request.user.has_event_perm(event, 'inventory.change_item'):
|
||||
if not request.user.has_event_perm(event, 'change_item'):
|
||||
return Response(status=403)
|
||||
validated_data = ItemSerializer(item, data=request.data)
|
||||
if validated_data.is_valid():
|
||||
validated_data.save()
|
||||
return Response(validated_data.data)
|
||||
return Response(validated_data.errors, status=400)
|
||||
elif request.method == 'DELETE':
|
||||
if not request.user.has_event_perm(event, 'inventory.delete_item'):
|
||||
if not request.user.has_event_perm(event, 'delete_item'):
|
||||
return Response(status=403)
|
||||
item.delete()
|
||||
return Response(status=204)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue