first attempt for ps api
This commit is contained in:
@@ -11,7 +11,7 @@ from django.views.decorators.csrf import csrf_exempt
|
||||
from django.utils.decorators import method_decorator
|
||||
from rowers.models import (
|
||||
Workout,Rower,FavoriteChart,VirtualRaceResult,
|
||||
VirtualRace,StandardCollection,CourseStandard,GeoCourse,
|
||||
VirtualRace,StandardCollection,CourseStandard,GeoCourse,PlannedSession,
|
||||
)
|
||||
|
||||
from rest_framework import routers, serializers, viewsets,permissions
|
||||
@@ -24,7 +24,8 @@ from django.utils.decorators import method_decorator
|
||||
|
||||
from rowers.permissions import (
|
||||
IsOwnerOrNot,IsOwnerOrReadOnly,
|
||||
IsCompetitorOrNot,
|
||||
IsCompetitorOrNot,IsRowerOrNot,
|
||||
IsPlanOrHigher,
|
||||
)
|
||||
from rowers.serializers import (
|
||||
WorkoutSerializer,
|
||||
@@ -38,6 +39,7 @@ from rowers.serializers import (
|
||||
GeoCourseSerializer,
|
||||
GeoPolygonSerializer,
|
||||
GeoPointSerializer,
|
||||
PlannedSessionSerializer,
|
||||
)
|
||||
|
||||
from oauth2_provider.views import (
|
||||
@@ -49,6 +51,25 @@ from oauth2_provider.views.base import (
|
||||
RevokeTokenView
|
||||
)
|
||||
|
||||
class PlannedSessionViewSet(viewsets.ModelViewSet):
|
||||
model = PlannedSession
|
||||
serializer_class = PlannedSessionSerializer
|
||||
|
||||
def get_queryset(self):
|
||||
try:
|
||||
r = Rower.objects.get(user=self.request.user)
|
||||
if r.rowerplan not in ['basic','pro']:
|
||||
return PlannedSession.objects.filter(rower=r).order_by("-preferreddate")
|
||||
else:
|
||||
return []
|
||||
except TypeError:
|
||||
return []
|
||||
|
||||
permission_classes = (
|
||||
IsRowerOrNot,
|
||||
IsPlanOrHigher,
|
||||
)
|
||||
|
||||
class WorkoutViewSet(viewsets.ModelViewSet):
|
||||
model = Workout
|
||||
#queryset = Workout.objects.all().order_by("-date", "-starttime")
|
||||
@@ -175,6 +196,7 @@ class StrokeDataViewSet(viewsets.ModelViewSet):
|
||||
# Routers provide an easy way of automatically determining the URL conf.
|
||||
router = routers.DefaultRouter()
|
||||
router.register(r'api/workouts',WorkoutViewSet, 'workout')
|
||||
router.register(r'api/plannedsessions',PlannedSessionViewSet,'plannedsession')
|
||||
router.register(r'api/me',RowerViewSet, 'rower')
|
||||
router.register(r'api/charts',FavoriteChartViewSet, 'charts')
|
||||
router.register(r'api/entries',EntryViewSet,'entries')
|
||||
|
||||
Reference in New Issue
Block a user