summaryrefslogtreecommitdiff
path: root/tablon/views.py
diff options
context:
space:
mode:
Diffstat (limited to 'tablon/views.py')
-rw-r--r--tablon/views.py29
1 files changed, 16 insertions, 13 deletions
diff --git a/tablon/views.py b/tablon/views.py
index 3834113..3e0c851 100644
--- a/tablon/views.py
+++ b/tablon/views.py
@@ -1,12 +1,11 @@
# vim: set fileencoding=utf-8 ts=4 shiftwidth=4 softtabstop=4 expandtab:
-from elgarito.tablon.models import Foro, Tema, Mensaje, MensajeForm, Visita
-from elgarito.tablon.decorators import *
-from django.contrib.auth.models import User
+from tablon.models import Foro, Tema, Mensaje, MensajeForm, Visita
+from tablon.decorators import foro_can, tema_can
from django.shortcuts import render_to_response, get_object_or_404
from django.template import RequestContext
from django.http import HttpResponseRedirect
-from django.contrib.auth.decorators import user_passes_test
-from datetime import datetime
+from django.utils import timezone
+
def index(request):
lista_foros = Foro.objects.all()
@@ -15,6 +14,7 @@ def index(request):
'lista_foros': lista_foros,
}))
+
@foro_can('read')
def foro(request, foro_id):
foro = get_object_or_404(Foro, pk=foro_id)
@@ -25,6 +25,7 @@ def foro(request, foro_id):
'lista_temas': lista_temas,
}))
+
@tema_can('read')
def tema(request, tema_id):
tema = get_object_or_404(Tema, pk=tema_id)
@@ -34,17 +35,17 @@ def tema(request, tema_id):
try:
v = Visita.objects.get(usuario=request.user.id, tema=tema_id)
ult_visita = v.fecha
- v.fecha = datetime.now()
+ v.fecha = timezone.now()
except Visita.DoesNotExist:
v = Visita(usuario=request.user, tema=tema)
- ult_visita = datetime.min
- v.save();
+ ult_visita = timezone.min
+ v.save()
else:
- ult_visita = datetime.now()
+ ult_visita = timezone.now()
visitados = {}
for m in lista_mensajes:
if (m.created_on > ult_visita):
- visitados[m.id] = 1;
+ visitados[m.id] = 1
return render_to_response('tablon/tema.html',
RequestContext(request, {
@@ -55,6 +56,7 @@ def tema(request, tema_id):
'visitados': visitados,
}))
+
@foro_can('write')
def nuevo_tema(request, foro_id):
if request.POST:
@@ -64,14 +66,14 @@ def nuevo_tema(request, foro_id):
titulo=request.POST['titulo'],
foro=foro,
autor=usuario,
- )
+ )
tema.save()
mensaje = Mensaje(id=None,
titulo=request.POST['titulo'],
texto=request.POST['texto'],
tema=tema,
autor=usuario,
- )
+ )
mensaje.save()
return HttpResponseRedirect('/tablon/tema/%s/' % tema.id)
else:
@@ -83,6 +85,7 @@ def nuevo_tema(request, foro_id):
'foro': foro,
}))
+
@tema_can('write')
def responder(request, tema_id):
if request.POST:
@@ -92,7 +95,7 @@ def responder(request, tema_id):
texto=request.POST['texto'],
tema=tema,
autor=request.user,
- )
+ )
mensaje.save()
return HttpResponseRedirect('/tablon/tema/%s/' % tema.id)