cubicweb/web/request.py
changeset 11794 d8830e2bd2e0
parent 11767 432f87a63057
child 11799 1bdfe9d4ab83
--- a/cubicweb/web/request.py	Wed Nov 02 15:59:39 2016 +0100
+++ b/cubicweb/web/request.py	Thu Nov 03 15:00:01 2016 +0100
@@ -915,25 +915,25 @@
     def html_content_type(self):
         return 'text/html'
 
+    def negotiated_language(self):
+        self.headers_out.addHeader('Vary', 'Accept-Language')
+        for lang in self.header_accept_language():
+            if lang in self.translations:
+                return lang
+        return None
+
     def set_user_language(self, user):
         vreg = self.vreg
         if user is not None:
             try:
-                # 1. user-specified language
                 lang = vreg.typed_value('ui.language', user.properties['ui.language'])
                 self.set_language(lang)
                 return
             except KeyError:
                 pass
-        if vreg.config.get('language-negociation', False):
-            # 2. http accept-language
-            self.headers_out.addHeader('Vary', 'Accept-Language')
-            for lang in self.header_accept_language():
-                if lang in self.translations:
-                    self.set_language(lang)
-                    return
-        # 3. site's default language
-        self.set_default_language(vreg)
+        # site's default language
+        if self.lang is None:
+            self.set_default_language(vreg)
 
 
 def _cnx_func(name):