def addperf(request): rec = Recording.objects.filter(song__simplifiedTitle=unidecode(request.POST.get('add-song')).lower()).filter(orchestra__ocode = request.POST.get('ocode')).filter(recorded__year=request.POST.get('year')) if not request.user.is_superuser: messages.add_message(request, messages.INFO,"This recording has already been added") return redirect('/addform/') if (not rec): messages.add_message(request, messages.INFO,"Recording Not Found") return redirect('/addform/') couple = getCouple(request.POST.get('add-performer1'), request.POST.get('add-performer2')) if (not couple): messages.add_message(request, messages.INFO,"Couple creation error") return redirect('/addform/') try: p = Performance.objects.get(youtubeId=request.POST.get('youtubeid')) p.couples.remove(p.couples.first()) p.recordings.remove(p.recordings.first()) p.couples.add(couple) p.recordings.add(rec[0]) if (request.POST.get('event')): p.event = DanceEvent.objects.get(pk=request.POST.get('event')) p.save() messages.add_message(request, messages.INFO, 'Video was successfully modified. Thanks!') except Exception as e: performance = Performance(youtubeId=request.POST.get('youtubeid'), performance_type='P') if (request.POST.get('event')): performance.event = DanceEvent.objects.get(pk=request.POST.get('event')) if (request.POST.get('perf-date')): performance.performance_date = request.POST.get('perf-date') performance.save() performance.couples.add(couple) performance.recordings.add(rec[0]) performance.save() messages.add_message(request, messages.INFO, 'Video was successfully added. Thanks!') return redirect('/addform/')
def identifyVideo(video, scanCouple, client): if (not Performance.objects.filter(youtubeId=video[1])): largeSearch = video[0] # try: # for comment in comments_generator(client, video[1]): # if (comment.content.text): # largeSearch += ' ' + comment.content.text # except Exception: # print 'comments unreadable' for orc in Orchestra.objects.all(): if ((unidecode(orc.name).lower() in largeSearch) or (unidecode(orc.leader.lastName).lower() in largeSearch)): for recording in Recording.objects.filter(orchestra=orc): if (unidecode(recording.song.title).lower() in largeSearch and (not unidecode(recording.song.title).lower() in songBlackList) and (len(recording.song.title.split()) > 2)): performance = Performance(youtubeId=video[1], performance_type='P') performance.save() performance.couples.add(scanCouple) performance.recordings.add(recording) performance.save() return str(performance) for recording in Recording.objects.filter(orchestra=orc): if (unidecode(recording.song.title).lower() in largeSearch and (not unidecode(recording.song.title).lower() in songBlackList) and (len(recording.song.title.split()) > 1)): performance = Performance(youtubeId=video[1], performance_type='P') performance.save() performance.couples.add(scanCouple) performance.recordings.add(recording) performance.save() return str(performance) for recording in Recording.objects.filter(orchestra=orc): if (unidecode(recording.song.title).lower() in largeSearch and (not unidecode(recording.song.title).lower() in songBlackList)): performance = Performance(youtubeId=video[1], performance_type='P') performance.save() performance.couples.add(scanCouple) performance.recordings.add(recording) performance.save() return str(performance) performance = Performance(youtubeId=video[1], performance_type='P', active=False) performance.save() performance.couples.add(scanCouple) performance.recordings.add(Recording.objects.get(song__title="Unknown Song")) performance.save() return str(performance) # for song in Song.objects.all(): # simpTitle = unidecode(song.title).lower() # if (len(simpTitle.split()) > 1 and (not simpTitle in songBlackList)): # if (unidecode(song.title).lower() in video[0]): # recs = Recording.objects.filter(song=song) # if (len(recs)==1): # performance = Performance(youtubeId=video[1], performance_type='P') # performance.save() # performance.couples.add(scanCouple) # performance.recordings.add(recs[0]) # performance.save() # return str(performance) return 'performance already added :('