import functools
from inspect import getargspec
import warnings
+from django.conf import settings
+from django.http import Http404
from django.template.base import parse_bits
from django.utils.translation import get_language, activate
from .cache import cache_include, DEFAULT_TIMEOUT
lang = kwargs.pop('lang')
except KeyError:
raise exceptions.NoLangFieldError(request)
+ if lang not in [language[0] for language in settings.LANGUAGES]:
+ raise Http404
current_lang = get_language()
activate(lang)
request.LANGUAGE_CODE = lang
request._cache_update_cache = False
def _check_included_vars(response):
- used_vars = request.ssi_vars_needed
+ used_vars = getattr(request, 'ssi_vars_needed', {})
if get_ssi_vars:
# Remove the ssi vars that should be provided
# by the including view.