sintonia/api/libretimeapi/serializers.py

310 lines
7.5 KiB
Python
Raw Normal View History

2020-01-30 14:47:36 +01:00
from django.contrib.auth import get_user_model
from rest_framework import serializers
2020-01-30 14:47:36 +01:00
from .models import *
2021-05-27 16:23:02 +02:00
2020-01-30 14:47:36 +01:00
class UserSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = get_user_model()
fields = [
2021-05-27 16:23:02 +02:00
"item_url",
"username",
"type",
"first_name",
"last_name",
"lastfail",
"skype_contact",
"jabber_contact",
"email",
"cell_phone",
"login_attempts",
2020-01-30 14:47:36 +01:00
]
2021-05-27 16:23:02 +02:00
2020-01-30 14:47:36 +01:00
class SmartBlockSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = SmartBlock
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class SmartBlockContentSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = SmartBlockContent
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class SmartBlockCriteriaSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = SmartBlockCriteria
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class CountrySerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Country
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class FileSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = File
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class ListenerCountSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = ListenerCount
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class LiveLogSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = LiveLog
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class LoginAttemptSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = LoginAttempt
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class MountNameSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = MountName
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class MusicDirSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = MusicDir
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class PlaylistSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Playlist
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class PlaylistContentSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = PlaylistContent
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class PlayoutHistorySerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = PlayoutHistory
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class PlayoutHistoryMetadataSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = PlayoutHistoryMetadata
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class PlayoutHistoryTemplateSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = PlayoutHistoryTemplate
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class PlayoutHistoryTemplateFieldSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = PlayoutHistoryTemplateField
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class PreferenceSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Preference
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class ScheduleSerializer(serializers.HyperlinkedModelSerializer):
2021-05-27 16:23:02 +02:00
file_id = serializers.IntegerField(source="file.id", read_only=True)
stream_id = serializers.IntegerField(source="stream.id", read_only=True)
instance_id = serializers.IntegerField(source="instance.id", read_only=True)
cue_out = serializers.DurationField(source="get_cueout", read_only=True)
ends = serializers.DateTimeField(source="get_ends", read_only=True)
2021-05-27 16:23:02 +02:00
2020-01-30 14:47:36 +01:00
class Meta:
model = Schedule
fields = [
2021-05-27 16:23:02 +02:00
"item_url",
"id",
"starts",
"ends",
"clip_length",
"fade_in",
"fade_out",
"cue_in",
"cue_out",
"media_item_played",
"file",
"file_id",
"stream",
"stream_id",
"instance",
"instance_id",
2020-01-30 14:47:36 +01:00
]
2021-05-27 16:23:02 +02:00
2020-01-30 14:47:36 +01:00
class ServiceRegisterSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = ServiceRegister
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class SessionSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Session
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class ShowSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Show
fields = [
2021-05-27 16:23:02 +02:00
"item_url",
"id",
"name",
"url",
"genre",
"description",
"color",
"background_color",
"linked",
"is_linkable",
"image_path",
"has_autoplaylist",
"autoplaylist_repeat",
"autoplaylist",
2020-01-30 14:47:36 +01:00
]
2021-05-27 16:23:02 +02:00
2020-01-30 14:47:36 +01:00
class ShowDaysSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = ShowDays
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class ShowHostSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = ShowHost
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class ShowInstanceSerializer(serializers.HyperlinkedModelSerializer):
2021-05-27 16:23:02 +02:00
show_id = serializers.IntegerField(source="show.id", read_only=True)
file_id = serializers.IntegerField(source="file.id", read_only=True)
2020-01-30 14:47:36 +01:00
class Meta:
model = ShowInstance
fields = [
2021-05-27 16:23:02 +02:00
"item_url",
"id",
"description",
"starts",
"ends",
"record",
"rebroadcast",
"time_filled",
"created",
"last_scheduled",
"modified_instance",
"autoplaylist_built",
"show",
"show_id",
"instance",
"file",
"file_id",
2020-01-30 14:47:36 +01:00
]
2021-05-27 16:23:02 +02:00
2020-01-30 14:47:36 +01:00
class ShowRebroadcastSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = ShowRebroadcast
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class StreamSettingSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = StreamSetting
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class UserTokenSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = UserToken
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class TimestampSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Timestamp
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class WebstreamSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Webstream
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class WebstreamMetadataSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = WebstreamMetadata
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class CeleryTaskSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = CeleryTask
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class CloudFileSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = CloudFile
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class ImportedPodcastSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = ImportedPodcast
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class PodcastSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = Podcast
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class PodcastEpisodeSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = PodcastEpisode
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class StationPodcastSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = StationPodcast
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class ThirdPartyTrackReferenceSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = ThirdPartyTrackReference
2021-05-27 16:23:02 +02:00
fields = "__all__"
2020-01-30 14:47:36 +01:00
class TrackTypeSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = TrackType
2021-05-27 16:23:02 +02:00
fields = "__all__"