def wiki_edit(request, namespace, name): ns = get_object_or_404(Namespace, owner=request.user, name=namespace) if not ns.can_update(request.user): return HttpResponseRedirect(reverse('peach.mobile_views.namespace', kwargs={'namespace':namespace})) page = WikiPage.objects.get_or_create(namespace=ns, name=name)[0] if request.method == 'POST': page_form = WikiPageForm(request.POST, instance=page) if page_form.is_valid(): page = page_form.save() if request.GET.get('next', None): return HttpResponseRedirect(request.GET.get('next')) return HttpResponseRedirect(page.get_mobile_url()) else: page_form = WikiPageForm(instance=page) return render_to_response('peach/mobile/wiki_edit.html', { 'page':page, 'page_form':page_form }, context_instance=RequestContext(request))