1
0
Fork 0
satnogs-network/network/api/views.py

55 lines
1.6 KiB
Python
Raw Normal View History

2015-02-14 14:47:31 -07:00
from django.utils.timezone import now
2014-12-13 10:49:15 -07:00
from rest_framework import viewsets, mixins
2014-10-15 13:20:46 -06:00
from network.api.perms import StationOwnerCanViewPermission, StationOwnerCanEditPermission
from network.api import serializers, filters
2014-12-19 06:06:58 -07:00
from network.base.models import (Antenna, Data, Observation, Satellite,
Station, Transponder)
2014-10-15 13:20:46 -06:00
class AntennaView(viewsets.ReadOnlyModelViewSet):
2014-10-15 13:20:46 -06:00
queryset = Antenna.objects.all()
serializer_class = serializers.AntennaSerializer
class StationView(viewsets.ReadOnlyModelViewSet):
2014-10-15 13:20:46 -06:00
queryset = Station.objects.all()
serializer_class = serializers.StationSerializer
class SatelliteView(viewsets.ReadOnlyModelViewSet):
2014-10-15 13:20:46 -06:00
queryset = Satellite.objects.all()
serializer_class = serializers.SatelliteSerializer
class TransponderView(viewsets.ReadOnlyModelViewSet):
2014-10-15 13:20:46 -06:00
queryset = Transponder.objects.all()
serializer_class = serializers.TransponderSerializer
class ObservationView(viewsets.ReadOnlyModelViewSet):
2014-10-15 13:20:46 -06:00
queryset = Observation.objects.all()
serializer_class = serializers.ObservationSerializer
class DataView(viewsets.ModelViewSet, mixins.UpdateModelMixin):
2014-10-15 13:20:46 -06:00
queryset = Data.objects.all()
serializer_class = serializers.DataSerializer
2014-12-13 10:49:15 -07:00
permission_classes = [
StationOwnerCanEditPermission
]
2015-02-14 07:15:26 -07:00
2015-02-14 12:58:11 -07:00
class JobView(viewsets.ReadOnlyModelViewSet):
queryset = Data.objects.filter(payload='')
serializer_class = serializers.JobSerializer
filter_class = filters.DataViewFilter
2015-02-14 12:58:11 -07:00
filter_fields = ('ground_station')
permission_classes = [
StationOwnerCanViewPermission
]
2015-02-14 14:47:31 -07:00
def get_queryset(self):
return self.queryset.filter(start__gte=now())