def songs(request): if request.method== 'POST': form=SongForm(request.POST) if form.is_valid(): form.save() return redirect('songs') else: form=SongForm() songs=Song.objects.all().order_by('-added_on') return render_to_response('songs.html' , locals(), context_instance=RequestContext(request))
def new_song_submit(req): if req.method == 'POST': form = SongForm(req.POST, req.FILES) print req if form.is_valid(): handle_uploaded_mp3(req.FILES['mp3_file']) form.save() return index(req) else: print 'form is not valid' return render_to_response('tabcollection/new_song.html', { 'form': form }, context_instance=RequestContext(req))
def addsong(request): if request.user.is_authenticated(): if request.is_ajax(): form = request.POST.dict() response_data = {} if form['artist'] and form['song_name']: response_data = serializers.serialize( "json", Song.objects.filter(artist__contains=form['artist'], song_name__contains=form['song_name'])) elif form['artist']: response_data = serializers.serialize( "json", Song.objects.filter(artist__contains=form['artist'])) elif form['song_name']: response_data = serializers.serialize( "json", Song.objects.filter(song_name__contains=form['song_name'])) return HttpResponse(json.dumps(response_data), content_type="application/json") elif request.method == 'POST': if u'vote' in request.POST.dict(): form = request.POST.dict() votesong(request.user.id, int(form['song_id'])) return redirect('mysong') else: form = SongForm(request.POST) if form.is_valid(): song = form.save(commit=False) song.user = request.user song.code = get_song_link(song.artist, song.song_name) song.save() SongVoted(user=request.user, song=song).save() return redirect('mysong') else: form = SongForm() return render(request, "addsong.html", {'form': form}) else: return redirect('index')
def new_song(request): if request.method == "POST": form = SongForm(request.POST) if form.is_valid(): data = analyze(form.cleaned_data['lyrics']) try : artist = Artist.objects.all().filter(name=form.cleaned_data['artist-name']) except: artist = Artist(name=form.cleaned_data['artist_name']) artist.save() song = Song(name=form.cleaned_data['song_name'], lyrics = form.cleaned_data['lyrics'], artist=artist, number_of_words= data['total_words'], number_unique_words=data['unique_words'], unique_word_percent=data['percentage'], repeated_rhymes=data['repeated_rhymes'], bad_words=data['bad_words'], thug_rating=data['thug_rating'], avg_syllables=data['thug_rating']) song.save() return redirect("/") form = SongForm() return render(request, 'lyrics/new_song.html', { 'form': form })
def song_create(request): if request.method == 'POST': form = SongForm(request.POST) unit_id = request.POST.get('album') print 'unit_id ', unit_id if form.is_valid( ): # coming from save button click, after running clean_title() q = Song() ar = '' for each in form: if type( each.field ) is forms.ModelChoiceField: # get the value from 'select' value_needed = form.cleaned_data[each.name] if each.name == 'artist': ar = Artist.objects.get( name=value_needed) # Artist instance from select setattr(q, each.name, ar) else: alb = ar.album_set.all() # all albums for this artist title = alb[int(unit_id) - 1] al = Album.objects.get( title=title) # album instance from select setattr(q, each.name, al) else: value_needed = form.cleaned_data[ each.name] # other fields - title field setattr(q, each.name, value_needed) q.save() print 'valid ' return redirect('songs') # you won't see 'form' in url else: # when getting to page at first - Stay, or with 'GET' method form = SongForm() # empty form print 'Initial song_create page ' return render( request, 'mymusic/song_create.html', { 'form': form # show empty form in initial state or filled form in case the user started to type and submitted })
def addsong(request): if request.user.is_authenticated(): if request.is_ajax(): form = request.POST.dict() response_data = {} if form['artist'] and form['song_name']: response_data = serializers.serialize("json", Song.objects.filter( artist__contains=form['artist'], song_name__contains=form['song_name'])) elif form['artist']: response_data = serializers.serialize( "json", Song.objects.filter(artist__contains=form['artist'])) elif form['song_name']: response_data = serializers.serialize( "json", Song.objects.filter(song_name__contains=form['song_name'])) return HttpResponse(json.dumps(response_data), content_type="application/json") elif request.method == 'POST': if u'vote' in request.POST.dict(): form = request.POST.dict() votesong(request.user.id, int(form['song_id'])) return redirect('mysong') else: form = SongForm(request.POST) if form.is_valid(): song = form.save(commit=False) song.user = request.user song.code = get_song_link(song.artist, song.song_name) song.save() SongVoted(user=request.user, song=song).save() return redirect('mysong') else: form = SongForm() return render(request, "addsong.html", {'form': form}) else: return redirect('index')
def create(request): if request.method == 'POST': url = request.POST.get('playlist_location', '') # #regexp here!!!!!!!!! # result = urlfetch.fetch(url + "code/xspf.php") if result.status_code == 200: # xml = minidom.parseString(unicode(result.content, "utf-8" )) try: xml = minidom.parseString(result.content.replace("&", "&")) except: return render_to_response('create.html', {'flash' : "Ops. Something went wrong!!!..."}) tracks = xml.getElementsByTagName('track') playlist = Playlist(title="lorem ipsum dolor", location=url) playlist.save() for song in tracks: loc = song.getElementsByTagName('location')[0] me = song.getElementsByTagName('meta')[0] ti = song.getElementsByTagName('title')[0] fo = song.getElementsByTagName('info')[0] s = SongForm({ 'location': getText(loc.childNodes), 'meta': getText(me.childNodes), 'title': getText(ti.childNodes), 'info': getText(fo.childNodes), }) if s.is_valid(): s.playlist = playlist s.save() return render_to_response('create.html', {'flash' : "Playlist added! <a href=\"/\">Go back to home page.</a>"}) return render_to_response('create.html')