

@check_user
def load_playlistdays(request):
    channel_id = request.GET.get('channel')
    region_id = request.GET.get('region_id')

    # playlist = Playlists.objects.filter(id_channel=channel_id)
    return render(request,'DAIManagementApp/dropdown_region.html',{'regions': regions})


# def new_playlist(request):
#     if request.method == 'POST':
#         useraccess = Useraccess.objects.get(id_user=request.session['id_user'])
#         channel_id = request.POST.get('channel_id')
#         channeldata = Channels.objects.get(id_channel=channel_id)
#         zonename = request.POST.get('zonename')
#         daydate = request.POST.get('day')
#         number_of_windows = request.POST.get('numofwin')
#         channel_zone = ChannelsZone.objects.get(id_channel=channel_id, zonename=zonename)
#
#         daydate = datetime.datetime.strptime(str(daydate), '%m/%d/%Y')
#         daydate = daydate.strftime('%Y-%m-%d')
#         start_date = str(daydate) + "T00:01:00+00:00"
#         end_date = str(daydate) + "T23:59:00+00:00"
#         now = datetime.datetime.now()
#         Playlist = Playlists(id_channel_id=channel_id ,version="1", broadcastdate=str(daydate), start_date=start_date, end_date=end_date, creation_datetime=now, id_zone_channel_id=channel_zone.id_zone_channel)
#         Playlist.save()
#         traffic = 0
#         record_inserted = 0
#         for i in range(int(number_of_windows)):
#             if request.POST.get('numofavails['+str(i)+']'):
#                 numofavails = request.POST.get('numofavails['+str(i)+']')
#                 window_start = request.POST.get('windowstart['+str(i)+']')
#                 window_start = daydate+' '+window_start+':00'
#                 window_end = request.POST.get('windowend['+str(i)+']')
#                 window_end = daydate+' '+window_end+':00'
#                 FMT = '%Y-%m-%d %H:%M:%S'
#                 window_duration = datetime.datetime.strptime(window_end, FMT) - datetime.datetime.strptime(window_start, FMT)
#                 window_duration = datetime.datetime.strptime(str(window_duration), '%H:%M:%S')
#                 window_duration = window_duration.strftime('%H%M%S00')
#                 Window = Windows(id_playlist_id=Playlist.id_playlist, window_start=window_start, window_end=window_end, window_duration=window_duration )
#                 Window.save()
#
#                 for j in range(int(numofavails)):
#                     if request.POST.get('availstart['+str(i)+']['+str(j)+']'):
#                         av_start = request.POST.get('availstart['+str(i)+']['+str(j)+']')
#                         av_start = daydate+' '+av_start+':00'
#                         number_of_ads = request.POST.get('numofads['+str(i)+']['+str(j)+']')
#                         Avail = Avails(id_window_id=Window.id_window, avail_start=av_start, availinwindow=str(j+1), datetime=now )
#                         Avail.save()
#
#                         for k in range(int(number_of_ads)):
#                             if request.POST.get('ad['+str(i)+']['+str(j)+']['+str(k)+']'):
#                                 adspot = request.POST.get('ad['+str(i)+']['+str(j)+']['+str(k)+']')
#                                 traffic +=1
#                                 AdspotsInAv = AdspotsInAvail(id_avail_id=Avail.id_avail, id_adspot_id=adspot, positioninavail=str(k+1), trafficid=traffic)
#                                 AdspotsInAv.save()
#                                 record_inserted = 1
#
#         xmlfilename = GenerateXMLfromDatabase(daydate, channel_id, channel_zone.id_zone_channel, '1' )
#         path_inftp = channeldata.ftp_channel_name+'/schedules/'+channel_zone.region
#         uploadFTP(useraccess.ftp_server, useraccess.ftp_port, useraccess.ftp_user, useraccess.ftp_password, xmlfilename , path_inftp)
#         channels = Channels.objects.filter(id_user=request.session['id_user'])
#         return render(request, "DAIManagementApp/new_playlist.html",{'data': {'channels': channels},'record_inserted': record_inserted})
#     else:
#         channels = Channels.objects.filter(id_user=request.session['id_user'])
#         return render(request, "DAIManagementApp/new_playlist.html",{'data': {'channels': channels}})


# def realtime_filter(id_channel,start_at,duration):#start_at
#     # realtime=RealTimeAdbreak.objects.filter(id_channel=id_channel,start_at=start_at,duration=duration)
#     if int(duration)<30:
#         window=Windows.objects.filter(window_start=start_at)
#         window_start_day=window.window_start.split()[0]
#         window_start_time=window.window_start.split()[1]
#         window_end_time=window.window_end.split()[1]
#         # print('Window end: ',window_end_time)
#         # print("Windos start: ",window_start_day)
#         realtime_start_day=start_at.split()[0]
#         realtime_start_time=start_at.split()[1]
#         # print('type: ',type(window_start_day))
#         # print(type(realtime_start_day))
#         if realtime_start_day ==window_start_day:
#             if window_start_time < realtime_start_time and window_end_time > realtime_start_time:
#                 print("Yes the adbreal is indsid the window")
#                 # Now we can edite the Playlist
#             else:
#                 print("No the adbreak is out of window")
#         else:
#             print(f"There No window Aailable in {realtime_start_day}")
#             # return JsonResponse({'Error message':f"There No window Aailable in {realtime_start_day}"})
#
#         # 'window start':window.window_start,'start_abreak':realtime.start_at})

# def realtime_filter(id_channel,start_at,duration):#start_at
#     # realtime=RealTimeAdbreak.objects.filter(id_channel=id_channel,start_at=start_at,duration=duration)
#     if int(duration)<30:
#         window=Windows.objects.filter(window_start=start_at)
#         window_start_day=window.window_start.split()[0]
#         window_start_time=window.window_start.split()[1]
#         window_end_time=window.window_end.split()[1]
#         # print('Window end: ',window_end_time)
#         # print("Windos start: ",window_start_day)
#         realtime_start_day=start_at.split()[0]
#         realtime_start_time=start_at.split()[1]
#         # print('type: ',type(window_start_day))
#         # print(type(realtime_start_day))
#         playlist=Playlists.objects.get(id_channel=id_channel).last()
#         window=Windows.objects.filter(id_playlist__in=playlist).get(window_start__lte=start_at, window_end__gte=start_at)
#         if window:
#
#             print("Yes the adbreal is indsid the window")
#             # Now we can edite the Playlist
#             preview_window_end = window.window_end
#
#             window.window_end = start_at
#             window_duration = datetime.datetime.strptime(window.window_end, FMT) - datetime.datetime.strptime(window.window_start, FMT)
#             window_duration = datetime.datetime.strptime(str(window_duration), '%H:%M:%S')
#             window_duration = window_duration.strftime('%H%M%S00')
#             window.window_duration = window_duration
#
#             from datetime import timedelta
#             start_at += timedelta(days=0, hours=0, minutes=2)
#
#             new_window_duration = datetime.datetime.strptime(start_at, FMT) - datetime.datetime.strptime(preview_window_end, FMT)
#             new_window_duration = datetime.datetime.strptime(str(new_window_duration), '%H:%M:%S')
#             new_window_duration = new_window_duration.strftime('%H%M%S00')
#             new_window = Windows(id_playlist_id=playlist.id_playlist, window_start=start_at, window_end=preview_window_end, window_duration=new_window_duration )
#             new_window.save()
#
#             channels = Channels.objects.get(id_channel=playlist.id_channel.id_channel)
#             region = ChannelsZone.objects.get(id_zone_channel=playlist.id_zone_channel.id_zone_channel)
#             zonename = region.zonename
#             networkname = channels.networkname
#             broadcastdate = playlist.broadcastdate.replace("-","")
#
#             verifs_result = Verifs.objects.filter(networkname=networkname,zonename=zonename,broadcastDate=broadcastdate).last()
#
#         else:
#             print(f"There No window Aailable in {realtime_start_day}")
#             # return JsonResponse({'Error message':f"There No window Aailable in {realtime_start_day}"})
#
#         # 'window start':window.window_start,'start_abreak':realtime.start_at})

#
# def realtime_adbreak(request,id_channel,start_at,duration,msg):
#     from django.http import JsonResponse
#     start=str(start_at.replace('_',' '))
#
#     realtime=RealTimeAdbreak(id_channel=id_channel,start_at=start,duration=duration)
#     realtime.save()
#
#     realtime_filter(id_channel=realtime.id_channel,start_at=realtime.start_at,duration=realtime.duration)
#     return JsonResponse({
#         'Message':'Successfully Created',
#         'channel':id_channel,
#         'start_at':start,
#         'duration':duration})

# def realtime_adbreak(request,id_channel,start_at,duration,msg):
#     from django.http import JsonResponse
#     start=str(start_at.replace('_',' '))
#     # realtime=RealTimeAdbreak(id_channel=id_channel,start_at=start,duration=duration)
#     # realtime.save()
#     task(request, "https://videoapi.smartadserver.com/ac?siteid=385419&pgid=1633029&fmtid=92859&ab=1&tgt=&oc=1&out=vast3&ps=1&pb=0&visit=S&vcn=s&vph=%5BplayerHeight%5D&vpw=%5BplayerWidth%5D&vpmt=%5BplaybackMethod%5D&skip=&mabd=%5BmaxAdBreakDuration%5D&ctd=%5BcontentDuration%5D&tmstp=%5Btimestamp%5D&cklb=1",duration,id_channel)
#     # realtime_filter(id_channel, start, duration,msg)
#     return JsonResponse({'channel':id_channel,
#         'start_at':start,
#         'duration':duration})

# def send_msg_telegram(msg):
#     message = """
#     ====================
#      """+msg+"""
#     ====================
#     """
#     telegram_settings = settings.TELEGRAM
#     bot = telegram.Bot(token=telegram_settings['bot_token'])
#     #bot.send_message(chat_id="@%s" % telegram_settings['channel_name'],
#     bot.send_message(chat_id=telegram_settings['chat_id'],
#         text=message, parse_mode=telegram.ParseMode.HTML)


def charts(request):
    pass