Advertisement
zamotivator

Untitled

Jun 15th, 2013
67
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 1.18 KB | None | 0 0
  1. def build_url(request):
  2.     if request.is_secure():
  3.         protocol = 'https'
  4.     else:
  5.         protocol ='http'
  6.  
  7.     host = request.META['HTTP_HOST']
  8.     if host.startswith('www.'):
  9.         host = host[4:]
  10.     code = host[:2]
  11.     if code in LANGUAGES:
  12.         host = host[3:]
  13.     else:
  14.         code = None
  15.     return (code, '%s://%%s.%s%s' % (protocol, host, request.path))
  16.  
  17. class SubDomainMiddleware(object):
  18.     def process_request(self, request):
  19.         (active, url) = build_url(request)
  20.         if active is None:
  21.             print url % request.LANGUAGE_CODE
  22.             return HttpResponsePermanentRedirect(url % request.LANGUAGE_CODE)
  23.         else:
  24.             translation.activate(active)
  25.             request.LANGUAGE_CODE=active
  26.  
  27.  
  28. def subdomain_context_processor(request):
  29.     (active, url) = build_url(request)
  30.     return dict(language=dict(
  31.         active=dict(code=active,
  32.                     name=dict(settings.LANGUAGES).get(active)),
  33.         other=[dict(code=code,
  34.                     name=name,
  35.                     url=(url % code))
  36.                for (code, name)
  37.                in settings.LANGUAGES
  38.                if active != code]
  39.     ))
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement