Socialify

Folder ..

Viewing i18nmiddleware.py
17 lines (14 loc) • 554.0 B

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
from django.utils.translation import activate
from django.utils.deprecation import MiddlewareMixin


class I18NMiddleware(MiddlewareMixin):
    def process_request(self, request):
        language = request.COOKIES.get("site_language")
        if language:
            activate(language)
        else:
            activate("en")
        request.LANGUAGE_CODE = language

    def process_response(self, request, response):
        if not request.COOKIES.get("site_language"):
            response.set_cookie("site_language", "en")
        return response