def post(self, request, slug): """ post request handles update from PictureForm """ picture = get_object_or_404(models.Picture, slug__iexact=slug) playit = utility.object_path(picture) bound_form = self.form_class(request.POST, instance=picture, initial=query.my_preference_dict( picture, request.user)) if 'UpdateObject' in request.POST: if bound_form.is_valid(): new_picture = bound_form.save() picture.title = new_picture.title picture.year = new_picture.year #### this was not such a great idea -- too slow # cast = bound_form.cleaned_data['cast'] # if len(cast): # #print('cast %s' % cast) # try: # message = u'success' # #print('view calls cast_picture') # chromecast.cast_picture(cast,picture) # except rutils.MyException as ex: # message = ex.message # #print('Caught %s' % ex.message) ######################################################### # tag tq = bound_form.cleaned_data['tag'] if len(tq): tqSlug = slugify(str(tq)) new_tag = collection.add_tag(tq, tqSlug) picture.tags.add(new_tag) pref = bound_form.cleaned_data['pref'] # user selected a preference if len(pref): query.handle_pref(picture, pref, request.user) picture.save() bound_form = self.form_class(instance=picture, initial=query.my_preference_dict( picture, request.user)) formContext = { 'picture': picture, 'playit': playit, 'objectForm': bound_form } return render(request, self.template_name, formContext) pictureContext = { 'picture': picture, 'playit': playit, 'objectForm': bound_form } return render(request, self.template_name, pictureContext)
def get(self, request, slug): """ setup picture form """ picture = get_object_or_404(models.Picture, slug__iexact=slug) playit = utility.object_path(picture) myform = self.form_class(instance=picture, initial=query.my_preference_dict( picture, request.user)) context = {'picture': picture, 'playit': playit, 'objectForm': myform} return render(request, self.template_name, context)
def get(self, request, slug): """ display form with initial values """ song = get_object_or_404(models.Song, slug__iexact=slug) playit = utility.object_path(song) myform = self.form_class(instance=song, initial=query.my_preference_dict( song, request.user)) context = {'song': song, 'playit': playit, 'objectForm': myform} return render(request, self.template_name, context)
def post(self, request, slug): """ Post handles updates from the SongForm as well as requests from kodi playback """ song = get_object_or_404(models.Song, slug__iexact=slug) playit = utility.object_path(song) bound_form = self.form_class(request.POST, instance=song) if 'UpdateObject' in request.POST: if bound_form.is_valid(): new_song = bound_form.save() song.title = new_song.title song.year = new_song.year # tag tq = bound_form.cleaned_data['tag'] if len(tq): tqSlug = slugify(str(tq)) new_tag = collection.add_tag(tq, tqSlug) song.tags.add(new_tag) # new musician mus = bound_form.cleaned_data['musician'] if len(mus): mSlug = slugify(str(mus + '-mus')) new_mus = collection.add_musician(mus, mSlug) new_mus.songs.add(song) pref = bound_form.cleaned_data['pref'] # user selected a preference if len(pref): query.handle_pref(song, pref, request.user) song.save() bound_form = self.form_class(instance=song, initial=query.my_preference_dict( song, request.user)) formContext = { 'song': song, 'playit': playit, 'objectForm': bound_form } return render(request, self.template_name, formContext) _ = kodi.playback_requests(song, request) songContext = { 'song': song, 'playit': playit, 'objectForm': bound_form } return render(request, self.template_name, songContext)
def get(self, request, slug): """ get responds to tags (actor, director, tag, musician,preferences) """ movie = get_object_or_404(models.Movie, slug__iexact=slug) # real path required for playback playit = utility.object_path(movie) myform = self.form_class(instance=movie, initial=query.my_preference_dict( movie, request.user)) context = {'movie': movie, 'playit': playit, 'objectForm': myform} return render(request, self.template_name, context)
def post(self, request, slug): """ post handles object update from the MovieForm """ movie = get_object_or_404(models.Movie, slug__iexact=slug) #print ("MovieDetail POST for slug %s movie %s " % (slug,movie.title)) playit = utility.object_path(movie) bound_form = self.form_class(request.POST, instance=movie, initial=query.my_preference_dict( movie, request.user)) if 'UpdateObject' in request.POST: if bound_form.is_valid(): new_movie = bound_form.save() movie.title = new_movie.title movie.year = new_movie.year # tag tq = bound_form.cleaned_data['tag'] if len(tq): tqSlug = slugify(str(tq)) new_tag = collection.add_tag(tq, tqSlug) movie.tags.add(new_tag) # new actor act = bound_form.cleaned_data['actor'] if len(act): actSlug = slugify(str(act + '-act')) new_actor = collection.add_actor(act, actSlug) new_actor.movies.add(movie) # new director dtr = bound_form.cleaned_data['director'] if len(dtr): dtrSlug = slugify(str(dtr + '-dtr')) new_dtr = collection.add_director(dtr, dtrSlug) new_dtr.movies.add(movie) # new musician - for concerts mus = bound_form.cleaned_data['musician'] if len(mus): mSlug = slugify(str(mus + '-mus')) new_mus = collection.add_musician(mus, mSlug) new_mus.concerts.add(movie) pref = bound_form.cleaned_data['pref'] # user selected a preference if len(pref): query.handle_pref(movie, pref, request.user) movie.save() bound_form = self.form_class(instance=movie, initial=query.my_preference_dict( movie, request.user)) formContext = { 'movie': movie, 'playit': playit, 'objectForm': bound_form } return render(request, self.template_name, formContext) message = '' try: message = u'success' vlcPlugin = kodi.playback_requests(movie, request) except rutils.MyException as ex: message = ex.message print('Caught %s' % ex.message) vlcPlugin = False movieContext = { 'movie': movie, 'playit': playit, 'objectForm': self.form_class(instance=movie), 'vlcPlugin': vlcPlugin, 'message': message } #print('render with message %s' % message) return render(request, self.template_name, movieContext)