summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDan McGee <dan@archlinux.org>2010-07-05 22:20:28 -0500
committerDan McGee <dan@archlinux.org>2010-07-05 22:20:28 -0500
commitcb9c74eff8f7c3469cc5e84477074c138ed555df (patch)
tree75c9e6960f03f2289fe2324eb03557cc3542e5b7
parent41a5d1d5667dd2fe7cde64323f18252e0b94542e (diff)
downloadarchweb-cb9c74eff8f7c3469cc5e84477074c138ed555df.tar.gz
archweb-cb9c74eff8f7c3469cc5e84477074c138ed555df.zip
Add absolute URL method for todo lists
Signed-off-by: Dan McGee <dan@archlinux.org>
-rw-r--r--main/models.py3
-rw-r--r--templates/devel/index.html2
-rw-r--r--templates/todolists/list.html2
-rw-r--r--todolists/views.py6
4 files changed, 8 insertions, 5 deletions
diff --git a/main/models.py b/main/models.py
index 208ea1a7..b6922680 100644
--- a/main/models.py
+++ b/main/models.py
@@ -367,6 +367,9 @@ class Todolist(models.Model):
class Meta:
db_table = 'todolists'
+ def get_absolute_url(self):
+ return '/todo/%i/' % self.id
+
class TodolistPkg(models.Model):
id = models.AutoField(primary_key=True)
list = models.ForeignKey('Todolist')
diff --git a/templates/devel/index.html b/templates/devel/index.html
index 25429ecf..d2dd155d 100644
--- a/templates/devel/index.html
+++ b/templates/devel/index.html
@@ -24,7 +24,7 @@
<tbody>
{% for todo in todos %}
<tr class="{% cycle 'odd' 'even' %}">
- <td class="key"><a href="/todo/{{ todo.id }}/"
+ <td class="key"><a href="{{ todo.get_absolute_url }}/"
title="View todo list: {{ todo.name }}">{{ todo.name }}</a></td>
<td>{{ todo.date_added }}</td>
<td>{{ todo.description }}</td>
diff --git a/templates/todolists/list.html b/templates/todolists/list.html
index e4b426bb..95eb3ee8 100644
--- a/templates/todolists/list.html
+++ b/templates/todolists/list.html
@@ -25,7 +25,7 @@
<tbody>
{% for list in lists %}
<tr class="{% cycle 'odd' 'even' %}">
- <td><a href="/todo/{{ list.id }}/"
+ <td><a href="{{ list.get_absolute_url }}/"
title="View todo list: {{ list.name }}">{{ list.name }}</a></td>
<td>{{ list.date_added }}</td>
<td>{{ list.creator.get_full_name }}</td>
diff --git a/todolists/views.py b/todolists/views.py
index d60535b1..83dd87d6 100644
--- a/todolists/views.py
+++ b/todolists/views.py
@@ -3,7 +3,7 @@ from django import forms
from django.http import HttpResponse, HttpResponseRedirect
from django.template import RequestContext
from django.core.mail import send_mail
-from django.shortcuts import get_object_or_404, render_to_response
+from django.shortcuts import get_object_or_404, render_to_response, redirect
from django.contrib.auth.decorators import login_required, permission_required
from django.views.decorators.cache import never_cache
from django.views.generic.create_update import delete_object
@@ -42,7 +42,7 @@ def flag(request, listid, pkgid):
return HttpResponse(
simplejson.dumps({'complete': pkg.complete}),
mimetype='application/json')
- return HttpResponseRedirect('/todo/%s/' % (listid))
+ return redirect(list)
@login_required
@never_cache
@@ -113,7 +113,7 @@ def edit(request, list_id):
list = todo_list, pkg = pkg)
send_todolist_email(tpkg)
- return HttpResponseRedirect('/todo/%d/' % todo_list.id)
+ return redirect(todo_list)
else:
form = TodoListForm(initial={
'name': todo_list.name,