Exemplo n.º 1
0
 def save(self, *args, **kwargs):
     # rearrange episodes
     if self.pk is not None:
         orig = ScheduleBoard.objects.get(pk=self.pk)
         if orig.start_date != self.start_date or orig.end_date != self.end_date:  # Field has changed
             super(ScheduleBoard, self).save(*args, **kwargs)
             Episode.rearrange_episodes(programme=None, after=datetime.datetime.now())
         else:
             super(ScheduleBoard, self).save(*args, **kwargs)
     else:
         super(ScheduleBoard, self).save(*args, **kwargs)
Exemplo n.º 2
0
def create_schedule(request):
    start = int(request.POST.get('start'))
    start = datetime.datetime.fromtimestamp(start / 1000.0)
    emission_type = request.POST.get('type')
    programme_id = int(request.POST.get('programmeId'))
    programme = get_object_or_404(Programme, id=programme_id)
    schedule_board_id = int(request.POST.get('scheduleBoardId'))
    scheduleBoard = get_object_or_404(ScheduleBoard, id=schedule_board_id)

    schedule = Schedule(programme=programme, schedule_board=scheduleBoard, day=start.weekday(), start_hour=start.time(), type=emission_type)
    schedule.clean()
    schedule.save()

    Episode.rearrange_episodes(programme, datetime.datetime.now())
    return {'scheduleId': schedule.id, 'backgroundColor':background_colours[schedule.type], 'textColor':text_colours[schedule.type], 'type':schedule.type}
Exemplo n.º 3
0
def change_event(request):
    start = int(request.POST.get('start'))
    start = datetime.datetime.fromtimestamp(start / 1000.0)
    schedule_id = int(request.POST.get('id'))
    schedule = get_object_or_404(Schedule.objects.select_related('programme'), id=schedule_id)

    '''
    # next episodes from now or when the schedule board starts
    now = datetime.datetime.now()
    dt = datetime.datetime.combine(schedule.schedule_board.start_date, datetime.time(0, 0))
    if now > dt:
        dt = now
    next_episodes = Episode.next_episodes(programme=schedule.programme, hour=schedule.start_hour, after=dt)
    '''
    # change schedule
    schedule.start_hour = start.time()
    schedule.day = start.weekday()
    schedule.clean()
    schedule.save()
    Episode.rearrange_episodes(schedule.programme, datetime.datetime.now())
    '''
Exemplo n.º 4
0
def change_event(request):
    start = int(request.POST.get('start'))
    start = datetime.datetime.fromtimestamp(start / 1000.0)
    schedule_id = int(request.POST.get('id'))
    schedule = get_object_or_404(Schedule.objects.select_related('programme'),
                                 id=schedule_id)
    '''
    # next episodes from now or when the schedule board starts
    now = datetime.datetime.now()
    dt = datetime.datetime.combine(schedule.schedule_board.start_date, datetime.time(0, 0))
    if now > dt:
        dt = now
    next_episodes = Episode.next_episodes(programme=schedule.programme, hour=schedule.start_hour, after=dt)
    '''
    # change schedule
    schedule.start_hour = start.time()
    schedule.day = start.weekday()
    schedule.clean()
    schedule.save()
    Episode.rearrange_episodes(schedule.programme, datetime.datetime.now())
    '''
Exemplo n.º 5
0
def create_schedule(request):
    start = int(request.POST.get('start'))
    start = datetime.datetime.fromtimestamp(start / 1000.0)
    emission_type = request.POST.get('type')
    programme_id = int(request.POST.get('programmeId'))
    programme = get_object_or_404(Programme, id=programme_id)
    schedule_board_id = int(request.POST.get('scheduleBoardId'))
    scheduleBoard = get_object_or_404(ScheduleBoard, id=schedule_board_id)

    schedule = Schedule(programme=programme,
                        schedule_board=scheduleBoard,
                        day=start.weekday(),
                        start_hour=start.time(),
                        type=emission_type)
    schedule.clean()
    schedule.save()

    Episode.rearrange_episodes(programme, datetime.datetime.now())
    return {
        'scheduleId': schedule.id,
        'backgroundColor': background_colours[schedule.type],
        'textColor': text_colours[schedule.type],
        'type': schedule.type
    }
Exemplo n.º 6
0
def delete_schedule(request):
    schedule_id = int(request.POST.get('scheduleId'))
    schedule = get_object_or_404(Schedule.objects.select_related('programme'), id=schedule_id)
    schedule.delete()
    Episode.rearrange_episodes(schedule.programme, datetime.datetime.now())
Exemplo n.º 7
0
def delete_ScheduleBoard_handler(sender, **kwargs):
    Episode.rearrange_episodes(programme=None, after=datetime.datetime.now())
Exemplo n.º 8
0
def delete_schedule(request):
    schedule_id = int(request.POST.get('scheduleId'))
    schedule = get_object_or_404(Schedule.objects.select_related('programme'),
                                 id=schedule_id)
    schedule.delete()
    Episode.rearrange_episodes(schedule.programme, datetime.datetime.now())