mirror of
https://github.com/lucaspalomodevelop/eventcally.git
synced 2026-03-13 08:09:37 +00:00
39 lines
1.2 KiB
Python
39 lines
1.2 KiB
Python
from flask import make_response
|
|
from flask_apispec import doc, marshal_with
|
|
|
|
from project import db
|
|
from project.access import access_or_401, login_api_user_or_401
|
|
from project.api import add_api_resource
|
|
from project.api.event_reference.schemas import EventReferenceSchema
|
|
from project.api.resources import BaseResource, require_api_access
|
|
from project.models import EventReference
|
|
|
|
|
|
class EventReferenceResource(BaseResource):
|
|
@doc(summary="Get event reference", tags=["Event References"])
|
|
@marshal_with(EventReferenceSchema)
|
|
@require_api_access()
|
|
def get(self, id):
|
|
return EventReference.query.get_or_404(id)
|
|
|
|
@doc(
|
|
summary="Delete reference",
|
|
tags=["Event References"],
|
|
)
|
|
@marshal_with(None, 204)
|
|
@require_api_access("eventreference:write")
|
|
def delete(self, id):
|
|
login_api_user_or_401()
|
|
reference = EventReference.query.get_or_404(id)
|
|
access_or_401(reference.admin_unit, "event:reference")
|
|
|
|
db.session.delete(reference)
|
|
db.session.commit()
|
|
|
|
return make_response("", 204)
|
|
|
|
|
|
add_api_resource(
|
|
EventReferenceResource, "/event-references/<int:id>", "api_v1_event_reference"
|
|
)
|