def oneliner_edit(request, pk): params = _common_params(request) initial = _common_initial(request) params['next_url'] = initial['next_url'] try: oneliner0 = OneLiner.objects.get(pk=pk, user=request.user) except: return render_to_response('main/pages/access_error.html', params) if request.method == 'POST': form = EditOneLinerForm(request.user, request.POST, instance=oneliner0) if form.is_valid(): if form.is_save: oneliner1 = form.save() if oneliner1.is_published: tweet(oneliner1) return redirect(form.cleaned_data.get('next_url')) elif form.is_delete: oneliner0.delete() return redirect(profile) else: params['next_url'] = request.POST.get('next_url') else: form = EditOneLinerForm(request.user, instance=oneliner0, initial=initial) params['form'] = form return render_to_response('main/pages/oneliner_edit.html', params, context_instance=RequestContext(request))
def oneliner_edit(request, pk): params = _common_params(request) params["cancel_url"] = reverse(oneliner, args=(pk,)) try: oneliner0 = OneLiner.objects.get(pk=pk, user=request.user) oneliner0.score = sum([x.value for x in oneliner0.vote_set.all()]) except OneLiner.DoesNotExist: return render_to_response("oneliners/pages/access_error.html", params) if request.method == "POST": form = EditOneLinerForm(request.user, request.POST, instance=oneliner0) if form.is_valid(): if form.is_save: oneliner1 = form.save() if oneliner1.is_published: tweet(oneliner1, format_canonical_url(request)) return redirect(oneliner1) elif form.is_delete: oneliner0.delete() return redirect(profile) else: form = EditOneLinerForm(request.user, instance=oneliner0) params["form"] = form return render_to_response("oneliners/pages/oneliner_edit.html", params, context_instance=RequestContext(request))
def oneliner_edit(request, pk): params = _common_params(request) params['cancel_url'] = reverse(oneliner, args=(pk,)) try: oneliner0 = OneLiner.objects.get(pk=pk, user=request.user) except: return render_to_response('oneliners/pages/access_error.html', params) if request.method == 'POST': form = EditOneLinerForm(request.user, request.POST, instance=oneliner0) if form.is_valid(): if form.is_save: oneliner1 = form.save() if oneliner1.is_published: tweet(oneliner1, format_canonical_url(request)) return redirect(oneliner1) elif form.is_delete: oneliner0.delete() return redirect(profile) else: form = EditOneLinerForm(request.user, instance=oneliner0) params['form'] = form return render_to_response('oneliners/pages/oneliner_edit.html', params, context_instance=RequestContext(request))
def test_save_notown_failure(self): oneliner0 = self.jacks_oneliner data = { 'summary': oneliner0.summary, 'line': oneliner0.line, 'explanation': oneliner0.explanation, 'action': EditOneLinerForm.action_save, } form = EditOneLinerForm(self.frank, data, instance=self.jacks_oneliner) self.assertFalse(form.is_valid()) error_items = form.errors.items() self.assertEquals(len(error_items), 1) self.assertEquals(list(error_items)[0][0], '__all__')
def test_save_own_failure(self): oneliner0 = self.jacks_oneliner data = { 'summary': oneliner0.summary, 'line': oneliner0.line, 'action': EditOneLinerForm.action_save, } new_summary = oneliner0.summary + ' some change' data['summary'] = new_summary form = EditOneLinerForm(self.jack, data, instance=oneliner0) self.assertFalse(form.is_valid()) error_items = form.errors.items() self.assertEquals(len(error_items), 1) self.assertEquals(list(error_items)[0][0], 'explanation')
def test_save_own_success(self): oneliner0 = self.jacks_oneliner data = { 'summary': oneliner0.summary, 'line': oneliner0.line, 'explanation': oneliner0.explanation, 'action': EditOneLinerForm.action_save, } new_summary = oneliner0.summary + ' some change' data['summary'] = new_summary form = EditOneLinerForm(self.jack, data, instance=oneliner0) self.assertTrue(form.is_valid()) oneliner1 = form.save() self.assertEquals(oneliner1.summary, new_summary) self.assertEquals(oneliner1.user, self.jack)
def oneliner_edit(request, pk): params = _common_params(request) params['cancel_url'] = reverse(oneliner, args=(pk, )) try: oneliner0 = OneLiner.objects.get(pk=pk, user=request.user) oneliner0.score = sum([x.value for x in oneliner0.vote_set.all()]) except OneLiner.DoesNotExist: return render_to_response('oneliners/pages/access_error.html', params) if request.method == 'POST': form = EditOneLinerForm(request.user, request.POST, instance=oneliner0) if form.is_valid(): if form.is_save: oneliner1 = form.save() if oneliner1.is_published: tweet(oneliner1, format_canonical_url(request)) return redirect(oneliner1) elif form.is_delete: oneliner0.delete() return redirect(profile) else: form = EditOneLinerForm(request.user, instance=oneliner0) params['form'] = form return render_to_response('oneliners/pages/oneliner_edit.html', params, context_instance=RequestContext(request))
def oneliner_edit(request, pk): params = _common_params(request) params['cancel_url'] = reverse(oneliner, args=(pk, )) try: if request.user.is_staff: oneliner0 = OneLiner.objects.get(pk=pk) else: oneliner0 = OneLiner.objects.get(pk=pk, user=request.user) except OneLiner.DoesNotExist: return render(request, 'oneliners/pages/access_error.html', params) if request.method == 'POST': form = EditOneLinerForm(oneliner0.user, request.POST, instance=oneliner0) if form.is_valid(): if form.is_save: oneliner1 = form.save() return redirect(oneliner1) elif form.is_delete: oneliner0.delete() return redirect(profile) else: form = EditOneLinerForm(request.user, instance=oneliner0) params['form'] = form return render(request, 'oneliners/pages/oneliner_edit.html', params)