Updating timeline API
parent
982d79d8aa
commit
1d701a7cad
|
@ -150,9 +150,11 @@ router.register(r"history/wiki", WikiHistory, base_name="wiki-history")
|
||||||
|
|
||||||
|
|
||||||
# Timelines
|
# Timelines
|
||||||
|
from taiga.timeline.api import ProfileTimeline
|
||||||
from taiga.timeline.api import UserTimeline
|
from taiga.timeline.api import UserTimeline
|
||||||
from taiga.timeline.api import ProjectTimeline
|
from taiga.timeline.api import ProjectTimeline
|
||||||
|
|
||||||
|
router.register(r"timeline/profile", ProfileTimeline, base_name="profile-timeline")
|
||||||
router.register(r"timeline/user", UserTimeline, base_name="user-timeline")
|
router.register(r"timeline/user", UserTimeline, base_name="user-timeline")
|
||||||
router.register(r"timeline/project", ProjectTimeline, base_name="project-timeline")
|
router.register(r"timeline/project", ProjectTimeline, base_name="project-timeline")
|
||||||
|
|
||||||
|
|
|
@ -18,14 +18,14 @@ from django.contrib.contenttypes.models import ContentType
|
||||||
|
|
||||||
from taiga.base import response
|
from taiga.base import response
|
||||||
from taiga.base.api.utils import get_object_or_404
|
from taiga.base.api.utils import get_object_or_404
|
||||||
from taiga.base.api import GenericViewSet
|
from taiga.base.api import ReadOnlyListViewSet
|
||||||
|
|
||||||
from . import serializers
|
from . import serializers
|
||||||
from . import service
|
from . import service
|
||||||
from . import permissions
|
from . import permissions
|
||||||
|
|
||||||
|
|
||||||
class TimelineViewSet(GenericViewSet):
|
class TimelineViewSet(ReadOnlyListViewSet):
|
||||||
serializer_class = serializers.TimelineSerializer
|
serializer_class = serializers.TimelineSerializer
|
||||||
|
|
||||||
content_type = None
|
content_type = None
|
||||||
|
@ -57,19 +57,36 @@ class TimelineViewSet(GenericViewSet):
|
||||||
def list(self, request):
|
def list(self, request):
|
||||||
return response.NotFound()
|
return response.NotFound()
|
||||||
|
|
||||||
|
def get_timeline(self, obj):
|
||||||
|
raise NotImplementedError
|
||||||
|
|
||||||
def retrieve(self, request, pk):
|
def retrieve(self, request, pk):
|
||||||
obj = self.get_object()
|
obj = self.get_object()
|
||||||
self.check_permissions(request, "retrieve", obj)
|
self.check_permissions(request, "retrieve", obj)
|
||||||
|
|
||||||
qs = service.get_timeline(obj)
|
qs = self.get_timeline(obj)
|
||||||
return self.response_for_queryset(qs)
|
return self.response_for_queryset(qs)
|
||||||
|
|
||||||
|
|
||||||
|
class ProfileTimeline(TimelineViewSet):
|
||||||
|
content_type = "users.user"
|
||||||
|
permission_classes = (permissions.UserTimelinePermission,)
|
||||||
|
|
||||||
|
def get_timeline(self, user):
|
||||||
|
return service.get_profile_timeline(user, accessing_user=self.request.user)
|
||||||
|
|
||||||
|
|
||||||
class UserTimeline(TimelineViewSet):
|
class UserTimeline(TimelineViewSet):
|
||||||
content_type = "users.user"
|
content_type = "users.user"
|
||||||
permission_classes = (permissions.UserTimelinePermission,)
|
permission_classes = (permissions.UserTimelinePermission,)
|
||||||
|
|
||||||
|
def get_timeline(self, user):
|
||||||
|
return service.get_user_timeline(user, accessing_user=self.request.user)
|
||||||
|
|
||||||
|
|
||||||
class ProjectTimeline(TimelineViewSet):
|
class ProjectTimeline(TimelineViewSet):
|
||||||
content_type = "projects.project"
|
content_type = "projects.project"
|
||||||
permission_classes = (permissions.ProjectTimelinePermission,)
|
permission_classes = (permissions.ProjectTimelinePermission,)
|
||||||
|
|
||||||
|
def get_timeline(self, project):
|
||||||
|
return service.get_project_timeline(project, accessing_user=self.request.user)
|
||||||
|
|
Loading…
Reference in New Issue