96 lines
3.3 KiB
Python
96 lines
3.3 KiB
Python
from django.db import models
|
|
|
|
from .files import File
|
|
from .playlists import Playlist
|
|
|
|
|
|
class Show(models.Model):
|
|
name = models.CharField(max_length=255)
|
|
url = models.CharField(max_length=255, blank=True, null=True)
|
|
genre = models.CharField(max_length=255, blank=True, null=True)
|
|
description = models.CharField(max_length=8192, blank=True, null=True)
|
|
color = models.CharField(max_length=6, blank=True, null=True)
|
|
background_color = models.CharField(max_length=6, blank=True, null=True)
|
|
live_stream_using_airtime_auth = models.BooleanField(blank=True, null=True)
|
|
live_stream_using_custom_auth = models.BooleanField(blank=True, null=True)
|
|
live_stream_user = models.CharField(max_length=255, blank=True, null=True)
|
|
live_stream_pass = models.CharField(max_length=255, blank=True, null=True)
|
|
linked = models.BooleanField()
|
|
is_linkable = models.BooleanField()
|
|
image_path = models.CharField(max_length=255, blank=True, null=True)
|
|
has_autoplaylist = models.BooleanField()
|
|
autoplaylist = models.ForeignKey(Playlist, models.DO_NOTHING, blank=True, null=True)
|
|
autoplaylist_repeat = models.BooleanField()
|
|
|
|
def get_owner(self):
|
|
return self.showhost_set.all()
|
|
|
|
class Meta:
|
|
managed = False
|
|
db_table = "cc_show"
|
|
|
|
|
|
class ShowDays(models.Model):
|
|
first_show = models.DateField()
|
|
last_show = models.DateField(blank=True, null=True)
|
|
start_time = models.TimeField()
|
|
timezone = models.CharField(max_length=1024)
|
|
duration = models.CharField(max_length=1024)
|
|
day = models.SmallIntegerField(blank=True, null=True)
|
|
repeat_type = models.SmallIntegerField()
|
|
next_pop_date = models.DateField(blank=True, null=True)
|
|
show = models.ForeignKey(Show, models.DO_NOTHING)
|
|
record = models.SmallIntegerField(blank=True, null=True)
|
|
|
|
def get_owner(self):
|
|
return self.show.get_owner()
|
|
|
|
class Meta:
|
|
managed = False
|
|
db_table = "cc_show_days"
|
|
|
|
|
|
class ShowHost(models.Model):
|
|
show = models.ForeignKey(Show, models.DO_NOTHING)
|
|
subjs = models.ForeignKey("User", models.DO_NOTHING)
|
|
|
|
class Meta:
|
|
managed = False
|
|
db_table = "cc_show_hosts"
|
|
|
|
|
|
class ShowInstance(models.Model):
|
|
description = models.CharField(max_length=8192, blank=True, null=True)
|
|
starts = models.DateTimeField()
|
|
ends = models.DateTimeField()
|
|
show = models.ForeignKey(Show, models.DO_NOTHING)
|
|
record = models.SmallIntegerField(blank=True, null=True)
|
|
rebroadcast = models.SmallIntegerField(blank=True, null=True)
|
|
instance = models.ForeignKey("self", models.DO_NOTHING, blank=True, null=True)
|
|
file = models.ForeignKey(File, models.DO_NOTHING, blank=True, null=True)
|
|
time_filled = models.DurationField(blank=True, null=True)
|
|
created = models.DateTimeField()
|
|
last_scheduled = models.DateTimeField(blank=True, null=True)
|
|
modified_instance = models.BooleanField()
|
|
autoplaylist_built = models.BooleanField()
|
|
|
|
def get_owner(self):
|
|
return show.get_owner()
|
|
|
|
class Meta:
|
|
managed = False
|
|
db_table = "cc_show_instances"
|
|
|
|
|
|
class ShowRebroadcast(models.Model):
|
|
day_offset = models.CharField(max_length=1024)
|
|
start_time = models.TimeField()
|
|
show = models.ForeignKey(Show, models.DO_NOTHING)
|
|
|
|
def get_owner(self):
|
|
return show.get_owner()
|
|
|
|
class Meta:
|
|
managed = False
|
|
db_table = "cc_show_rebroadcast"
|