from django.contrib.auth import get_user_model from django.db import models from .schedule import Schedule class Webstream(models.Model): name = models.CharField(max_length=255) description = models.CharField(max_length=255) url = models.CharField(max_length=512) length = models.DurationField() creator_id = models.IntegerField() mtime = models.DateTimeField() utime = models.DateTimeField() lptime = models.DateTimeField(blank=True, null=True) mime = models.CharField(max_length=1024, blank=True, null=True) def get_owner(self): User = get_user_model() return User.objects.get(pk=self.creator_id) class Meta: managed = False db_table = "cc_webstream" permissions = [ ("change_own_webstream", "Change the webstreams where they are the owner"), ("delete_own_webstream", "Delete the webstreams where they are the owner"), ] class WebstreamMetadata(models.Model): instance = models.ForeignKey(Schedule, models.DO_NOTHING) start_time = models.DateTimeField() liquidsoap_data = models.CharField(max_length=1024) def get_owner(self): return self.instance.get_owner() class Meta: managed = False db_table = "cc_webstream_metadata"