Author: batiste.bieler
Date: Sat Mar 14 08:52:22 2009
New Revision: 403
Modified:
trunk/pages/templatetags/pages_tags.py
trunk/pages/tests.py
trunk/pages/utils.py
trunk/pages/views.py
Log:
Fix issue 65
Modified: trunk/pages/templatetags/pages_tags.py
==============================================================================
--- trunk/pages/templatetags/pages_tags.py (original)
+++ trunk/pages/templatetags/pages_tags.py Sat Mar 14 08:52:22 2009
@@ -86,7 +86,10 @@
return {'content':''}
if lang is None:
- lang = get_language_from_request(context['request'], page)
+ if 'lang' in context:
+ lang = context['lang']
+ else:
+ lang = get_language_from_request(context['request'], page)
c = Content.objects.get_content(page, lang, content_type, True)
if c:
return {'content':c}
@@ -114,7 +117,10 @@
if not request or not page:
return {'content':''}
if lang is None:
- lang = get_language_from_request(context['request'], page)
+ if 'lang' in context:
+ lang = context['lang']
+ else:
+ lang = get_language_from_request(context['request'], page)
url = page.get_absolute_url(language=lang)
if url:
return {'content':url}
@@ -272,10 +278,13 @@
def render(self, context):
if not 'request' in context or not self.page in context:
return ''
-
- language = get_language_from_request(context['request'],
context[self.page])
+
+ if 'lang' in context:
+ lang = context['lang']
+ else:
+ lang = get_language_from_request(context['request'],
context[self.page])
request = context['request']
- content = Content.objects.get_content(context[self.page], language,
+ content = Content.objects.get_content(context[self.page], lang,
self.name, True)
if not content:
return ''
Modified: trunk/pages/tests.py
==============================================================================
--- trunk/pages/tests.py (original)
+++ trunk/pages/tests.py Sat Mar 14 08:52:22 2009
@@ -304,7 +304,6 @@
self.assertRedirects(response, '/admin/pages/page/')
page = Page.objects.all()[0]
- page.invalidate()
response = c.post('/admin/pages/page/add/', page_data)
# we cannot create 2 root page with the same slug
Modified: trunk/pages/utils.py
==============================================================================
--- trunk/pages/utils.py (original)
+++ trunk/pages/utils.py Sat Mar 14 08:52:22 2009
@@ -138,7 +138,7 @@
return False
# TODO: move this in the manager
-def get_page_from_slug(slug, request):
+def get_page_from_slug(slug, request, lang=None):
from pages.models import Content, Page
from django.core.urlresolvers import reverse
lang = get_language_from_request(request)
Modified: trunk/pages/views.py
==============================================================================
--- trunk/pages/views.py (original)
+++ trunk/pages/views.py Sat Mar 14 08:52:22 2009
@@ -6,7 +6,7 @@
from pages.models import Page, Content
from pages.utils import auto_render, get_language_from_request,
get_page_from_slug
-def details(request, slug=None):
+def details(request, slug=None, lang=None):
"""
Example view that get the root pages for navigation,
and the current page if there is any root page.
@@ -17,7 +17,7 @@
if pages:
if slug:
- current_page = get_page_from_slug(slug, request)
+ current_page = get_page_from_slug(slug, request, lang)
else:
current_page = pages[0]
@@ -27,7 +27,9 @@
if not current_page.calculated_status in (Page.PUBLISHED, Page.HIDDEN):
raise Http404
- lang = get_language_from_request(request, current_page)
+ if not lang:
+ lang = get_language_from_request(request, current_page)
+
template_name = current_page.get_template()
return template_name, locals()
details = auto_render(details)
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"pinax-updates" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/pinax-updates?hl=en
-~----------~----~----~----~------~----~------~--~---