2016-12-28 14:46:42 +01:00
|
|
|
from django.http import HttpRequest, HttpResponse
|
|
|
|
|
|
|
|
from zerver.models import UserProfile
|
2018-05-04 22:57:36 +02:00
|
|
|
from zerver.lib.actions import notify_attachment_update
|
2016-12-28 14:46:42 +01:00
|
|
|
from zerver.lib.validator import check_int
|
|
|
|
from zerver.lib.response import json_success
|
|
|
|
from zerver.lib.attachments import user_attachments, remove_attachment, \
|
|
|
|
access_attachment_by_id
|
|
|
|
|
|
|
|
|
2017-11-27 09:28:57 +01:00
|
|
|
def list_by_user(request: HttpRequest, user_profile: UserProfile) -> HttpResponse:
|
2016-12-28 14:46:42 +01:00
|
|
|
return json_success({"attachments": user_attachments(user_profile)})
|
|
|
|
|
|
|
|
|
2017-11-27 09:28:57 +01:00
|
|
|
def remove(request: HttpRequest, user_profile: UserProfile, attachment_id: int) -> HttpResponse:
|
2016-12-28 14:46:42 +01:00
|
|
|
attachment = access_attachment_by_id(user_profile, attachment_id,
|
|
|
|
needs_owner=True)
|
2018-05-04 22:57:36 +02:00
|
|
|
notify_attachment_update(user_profile, "remove", {"id": attachment.id})
|
2016-12-28 14:46:42 +01:00
|
|
|
remove_attachment(user_profile, attachment)
|
|
|
|
return json_success()
|