forked from rc/aircox
		
	work on website + page becomes concrete
This commit is contained in:
		@ -57,14 +57,14 @@ class Actions:
 | 
			
		||||
                diffusion.save()
 | 
			
		||||
 | 
			
		||||
    def clean(self):
 | 
			
		||||
        qs = Diffusion.objects.filter(type=Diffusion.Type.unconfirmed,
 | 
			
		||||
        qs = Diffusion.objects.filter(type=Diffusion.TYPE_UNCONFIRMED,
 | 
			
		||||
                                      start__lt=self.date)
 | 
			
		||||
        logger.info('[clean] %d diffusions will be removed', qs.count())
 | 
			
		||||
        qs.delete()
 | 
			
		||||
 | 
			
		||||
    def check(self):
 | 
			
		||||
        # TODO: redo
 | 
			
		||||
        qs = Diffusion.objects.filter(type=Diffusion.Type.unconfirmed,
 | 
			
		||||
        qs = Diffusion.objects.filter(type=Diffusion.TYPE_UNCONFIRMED,
 | 
			
		||||
                                      start__gt=self.date)
 | 
			
		||||
        items = []
 | 
			
		||||
        for diffusion in qs:
 | 
			
		||||
 | 
			
		||||
@ -184,9 +184,9 @@ class MonitorHandler(PatternMatchingEventHandler):
 | 
			
		||||
        """
 | 
			
		||||
        self.subdir = subdir
 | 
			
		||||
        if self.subdir == settings.AIRCOX_SOUND_ARCHIVES_SUBDIR:
 | 
			
		||||
            self.sound_kwargs = {'type': Sound.Type.archive}
 | 
			
		||||
            self.sound_kwargs = {'type': Sound.TYPE_ARCHIVE}
 | 
			
		||||
        else:
 | 
			
		||||
            self.sound_kwargs = {'type': Sound.Type.excerpt}
 | 
			
		||||
            self.sound_kwargs = {'type': Sound.TYPE_EXCERPT}
 | 
			
		||||
 | 
			
		||||
        patterns = ['*/{}/*{}'.format(self.subdir, ext)
 | 
			
		||||
                    for ext in settings.AIRCOX_SOUND_FILE_EXT]
 | 
			
		||||
@ -213,7 +213,7 @@ class MonitorHandler(PatternMatchingEventHandler):
 | 
			
		||||
        sound = Sound.objects.filter(path=event.src_path)
 | 
			
		||||
        if sound:
 | 
			
		||||
            sound = sound[0]
 | 
			
		||||
            sound.type = sound.Type.removed
 | 
			
		||||
            sound.type = sound.TYPE_REMOVED
 | 
			
		||||
            sound.save()
 | 
			
		||||
 | 
			
		||||
    def on_moved(self, event):
 | 
			
		||||
@ -259,11 +259,11 @@ class Command(BaseCommand):
 | 
			
		||||
            logger.info('#%d %s', program.id, program.title)
 | 
			
		||||
            self.scan_for_program(
 | 
			
		||||
                program, settings.AIRCOX_SOUND_ARCHIVES_SUBDIR,
 | 
			
		||||
                type=Sound.Type.archive,
 | 
			
		||||
                type=Sound.TYPE_ARCHIVE,
 | 
			
		||||
            )
 | 
			
		||||
            self.scan_for_program(
 | 
			
		||||
                program, settings.AIRCOX_SOUND_EXCERPTS_SUBDIR,
 | 
			
		||||
                type=Sound.Type.excerpt,
 | 
			
		||||
                type=Sound.TYPE_EXCERPT,
 | 
			
		||||
            )
 | 
			
		||||
            dirs.append(os.path.join(program.path))
 | 
			
		||||
 | 
			
		||||
@ -317,7 +317,7 @@ class Command(BaseCommand):
 | 
			
		||||
 | 
			
		||||
        # get available sound files
 | 
			
		||||
        sounds = Sound.objects.filter(is_good_quality=False) \
 | 
			
		||||
                      .exclude(type=Sound.Type.removed)
 | 
			
		||||
                      .exclude(type=Sound.TYPE_REMOVED)
 | 
			
		||||
        if check:
 | 
			
		||||
            self.check_sounds(sounds)
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
@ -152,7 +152,7 @@ class Monitor:
 | 
			
		||||
                                    .now(air_time).first()
 | 
			
		||||
 | 
			
		||||
        # log sound on air
 | 
			
		||||
        return self.log(type=Log.Type.on_air, date=source.air_time,
 | 
			
		||||
        return self.log(type=Log.TYPE_ON_AIR, date=source.air_time,
 | 
			
		||||
                        source=source.id, sound=sound, diffusion=diff,
 | 
			
		||||
                        comment=air_uri)
 | 
			
		||||
 | 
			
		||||
@ -177,7 +177,7 @@ class Monitor:
 | 
			
		||||
            if pos > now:
 | 
			
		||||
                break
 | 
			
		||||
            # log track on air
 | 
			
		||||
            self.log(type=Log.Type.on_air, date=pos, source=log.source,
 | 
			
		||||
            self.log(type=Log.TYPE_ON_AIR, date=pos, source=log.source,
 | 
			
		||||
                     track=track, comment=track)
 | 
			
		||||
 | 
			
		||||
    def handle_diffusions(self):
 | 
			
		||||
@ -208,7 +208,7 @@ class Monitor:
 | 
			
		||||
        #
 | 
			
		||||
        now = tz.now()
 | 
			
		||||
        diff = Diffusion.objects.station(self.station).on_air().now(now) \
 | 
			
		||||
                        .filter(episode__sound__type=Sound.Type.archive) \
 | 
			
		||||
                        .filter(episode__sound__type=Sound.TYPE_ARCHIVE) \
 | 
			
		||||
                        .first()
 | 
			
		||||
        # Can't use delay: diffusion may start later than its assigned start.
 | 
			
		||||
        log = None if not diff else self.logs.start().filter(diffusion=diff)
 | 
			
		||||
@ -228,13 +228,13 @@ class Monitor:
 | 
			
		||||
    def start_diff(self, source, diff):
 | 
			
		||||
        playlist = Sound.objects.episode(id=diff.episode_id).paths()
 | 
			
		||||
        source.append(*playlist)
 | 
			
		||||
        self.log(type=Log.Type.start, source=source.id, diffusion=diff,
 | 
			
		||||
        self.log(type=Log.TYPE_START, source=source.id, diffusion=diff,
 | 
			
		||||
                 comment=str(diff))
 | 
			
		||||
 | 
			
		||||
    def cancel_diff(self, source, diff):
 | 
			
		||||
        diff.type = Diffusion.Type.cancel
 | 
			
		||||
        diff.type = Diffusion.TYPE_CANCEL
 | 
			
		||||
        diff.save()
 | 
			
		||||
        self.log(type=Log.Type.cancel, source=source.id, diffusion=diff,
 | 
			
		||||
        self.log(type=Log.TYPE_CANCEL, source=source.id, diffusion=diff,
 | 
			
		||||
                 comment=str(diff))
 | 
			
		||||
 | 
			
		||||
    def sync(self):
 | 
			
		||||
 | 
			
		||||
		Reference in New Issue
	
	Block a user