diff options
Diffstat (limited to 'wiki/views.py')
-rw-r--r-- | wiki/views.py | 23 |
1 files changed, 14 insertions, 9 deletions
diff --git a/wiki/views.py b/wiki/views.py index 9d5ac78..a214690 100644 --- a/wiki/views.py +++ b/wiki/views.py @@ -1,13 +1,15 @@ # vim: set fileencoding=utf-8 ts=4 shiftwidth=4 softtabstop=4 expandtab: -from elgarito.wiki.models import Pagina, PaginaForm -from django.shortcuts import render_to_response, get_object_or_404 +from wiki.models import Pagina, PaginaForm +from django.shortcuts import render_to_response from django.template import RequestContext from django.http import HttpResponseRedirect from django.contrib.auth.decorators import user_passes_test + def index(request): return HttpResponseRedirect('/wiki/Portada/') + def lista(request): lista_paginas = Pagina.objects.all() return render_to_response('wiki/lista.html', @@ -15,6 +17,7 @@ def lista(request): 'lista_paginas': lista_paginas })) + def pagina(request, titulo, static=None): try: pagina = Pagina.objects.get(titulo__exact=titulo) @@ -24,9 +27,10 @@ def pagina(request, titulo, static=None): 'static': static, })) except Pagina.DoesNotExist: - pagina = Pagina(titulo = titulo) + pagina = Pagina(titulo=titulo) return HttpResponseRedirect('/wiki/' + pagina.titulo + '/editar/') + @user_passes_test(lambda u: u.has_perm('wiki.can_editar_pagina'), login_url='/usuarios/login/') def editar(request, titulo, static=None): @@ -39,7 +43,7 @@ def editar(request, titulo, static=None): pagina.texto = request.POST['texto'] pagina.autor_id = request.user.id pagina.save() - return HttpResponseRedirect('/wiki/' + pagina.titulo +'/') + return HttpResponseRedirect('/wiki/' + pagina.titulo + '/') else: try: pagina = Pagina.objects.get(titulo__exact=titulo) @@ -48,20 +52,21 @@ def editar(request, titulo, static=None): form = PaginaForm(instance=pagina) return render_to_response('wiki/editar.html', RequestContext(request, { - 'form' : form, + 'form': form, 'pagina': pagina, 'static': static, })) + @user_passes_test(lambda u: u.has_perm('wiki.can_add_pagina'), login_url='/usuarios/login/') def nueva(request): if request.POST: pagina = Pagina(id=None, - titulo = request.POST['titulo'], - texto = request.POST['texto'], - autor = request.user, - ) + titulo=request.POST['titulo'], + texto=request.POST['texto'], + autor=request.user, + ) pagina.save() return HttpResponseRedirect('/wiki/%s/' % pagina.titulo) else: |