forked from rc/aircox
code quality
This commit is contained in:
@ -1,3 +1,12 @@
|
||||
from .log import *
|
||||
from .sound import *
|
||||
from .admin import *
|
||||
from .admin import TrackSerializer, UserSettingsSerializer
|
||||
from .log import LogInfo, LogInfoSerializer
|
||||
from .sound import PodcastSerializer, SoundSerializer
|
||||
|
||||
__all__ = (
|
||||
"TrackSerializer",
|
||||
"UserSettingsSerializer",
|
||||
"LogInfo",
|
||||
"LogInfoSerializer",
|
||||
"SoundSerializer",
|
||||
"PodcastSerializer",
|
||||
)
|
||||
|
@ -1,10 +1,9 @@
|
||||
from rest_framework import serializers
|
||||
from taggit.serializers import TagListSerializerField, TaggitSerializer
|
||||
from taggit.serializers import TaggitSerializer, TagListSerializerField
|
||||
|
||||
from ..models import Track, UserSettings
|
||||
|
||||
|
||||
__all__ = ('TrackSerializer', 'UserSettingsSerializer')
|
||||
__all__ = ("TrackSerializer", "UserSettingsSerializer")
|
||||
|
||||
|
||||
class TrackSerializer(TaggitSerializer, serializers.ModelSerializer):
|
||||
@ -12,19 +11,29 @@ class TrackSerializer(TaggitSerializer, serializers.ModelSerializer):
|
||||
|
||||
class Meta:
|
||||
model = Track
|
||||
fields = ('pk', 'artist', 'title', 'album', 'year', 'position',
|
||||
'info', 'tags', 'episode', 'sound', 'timestamp')
|
||||
fields = (
|
||||
"pk",
|
||||
"artist",
|
||||
"title",
|
||||
"album",
|
||||
"year",
|
||||
"position",
|
||||
"info",
|
||||
"tags",
|
||||
"episode",
|
||||
"sound",
|
||||
"timestamp",
|
||||
)
|
||||
|
||||
|
||||
class UserSettingsSerializer(serializers.ModelSerializer):
|
||||
# TODO: validate fields values (playlist_editor_columns at least)
|
||||
class Meta:
|
||||
model = UserSettings
|
||||
fields = ('playlist_editor_columns', 'playlist_editor_sep')
|
||||
fields = ("playlist_editor_columns", "playlist_editor_sep")
|
||||
|
||||
def create(self, validated_data):
|
||||
user = self.context.get('user')
|
||||
user = self.context.get("user")
|
||||
if user:
|
||||
validated_data['user_id'] = user.id
|
||||
validated_data["user_id"] = user.id
|
||||
return super().create(validated_data)
|
||||
|
||||
|
@ -2,14 +2,13 @@ from rest_framework import serializers
|
||||
|
||||
from ..models import Diffusion, Log
|
||||
|
||||
|
||||
__all__ = ('LogInfo', 'LogInfoSerializer')
|
||||
__all__ = ("LogInfo", "LogInfoSerializer")
|
||||
|
||||
|
||||
class LogInfo:
|
||||
obj = None
|
||||
start, end = None, None
|
||||
title, artist = '', ''
|
||||
title, artist = "", ""
|
||||
url, cover = None, None
|
||||
info = None
|
||||
|
||||
@ -20,17 +19,17 @@ class LogInfo:
|
||||
elif isinstance(obj, Log):
|
||||
self.from_log(obj)
|
||||
else:
|
||||
raise ValueError('`obj` must be a Diffusion or a Track Log.')
|
||||
raise ValueError("`obj` must be a Diffusion or a Track Log.")
|
||||
|
||||
@property
|
||||
def type(self):
|
||||
return 'track' if isinstance(self.obj, Log) else 'diffusion'
|
||||
return "track" if isinstance(self.obj, Log) else "diffusion"
|
||||
|
||||
def from_diffusion(self, obj):
|
||||
episode = obj.episode
|
||||
self.start, self.end = obj.start, obj.end
|
||||
self.title, self.url = episode.title, episode.get_absolute_url()
|
||||
self.cover = episode.cover and episode.cover.icons['64']
|
||||
self.cover = episode.cover and episode.cover.icons["64"]
|
||||
self.info = episode.category and episode.category.title
|
||||
self.obj = obj
|
||||
|
||||
|
@ -2,14 +2,27 @@ from rest_framework import serializers
|
||||
|
||||
from ..models import Sound
|
||||
|
||||
__all__ = ("SoundSerializer", "PodcastSerializer")
|
||||
|
||||
|
||||
class SoundSerializer(serializers.ModelSerializer):
|
||||
file = serializers.FileField(use_url=False)
|
||||
|
||||
class Meta:
|
||||
model = Sound
|
||||
fields = ['pk', 'name', 'program', 'episode', 'type', 'file',
|
||||
'duration', 'mtime', 'is_good_quality', 'is_public', 'url']
|
||||
fields = [
|
||||
"pk",
|
||||
"name",
|
||||
"program",
|
||||
"episode",
|
||||
"type",
|
||||
"file",
|
||||
"duration",
|
||||
"mtime",
|
||||
"is_good_quality",
|
||||
"is_public",
|
||||
"url",
|
||||
]
|
||||
|
||||
|
||||
class PodcastSerializer(serializers.ModelSerializer):
|
||||
@ -17,5 +30,14 @@ class PodcastSerializer(serializers.ModelSerializer):
|
||||
|
||||
class Meta:
|
||||
model = Sound
|
||||
fields = ['pk', 'name', 'program', 'episode', 'type',
|
||||
'duration', 'mtime', 'url', 'is_downloadable']
|
||||
fields = [
|
||||
"pk",
|
||||
"name",
|
||||
"program",
|
||||
"episode",
|
||||
"type",
|
||||
"duration",
|
||||
"mtime",
|
||||
"url",
|
||||
"is_downloadable",
|
||||
]
|
||||
|
Reference in New Issue
Block a user