From 45a3a2380fc8c71f44b0ae24e022c8bbaa4857ca Mon Sep 17 00:00:00 2001
From: Jean-Paul Smets <jp@nexedi.com>
Date: Thu, 11 Sep 2008 12:14:39 +0000
Subject: [PATCH] Added a switch in order to be able to use static vs. dynamic
 language selection in web sites.

git-svn-id: https://svn.erp5.org/repos/public/erp5/trunk@23563 20353a03-c40f-0410-a6d1-a30d3c3de9de
---
 product/ERP5/Document/WebSite.py      | 4 ++--
 product/ERP5/PropertySheet/WebSite.py | 6 ++++++
 2 files changed, 8 insertions(+), 2 deletions(-)

diff --git a/product/ERP5/Document/WebSite.py b/product/ERP5/Document/WebSite.py
index 8dd8fa6bec..ea273dda2b 100644
--- a/product/ERP5/Document/WebSite.py
+++ b/product/ERP5/Document/WebSite.py
@@ -115,7 +115,7 @@ class WebSiteTraversalHook(Persistent):
 
     # Set default language if any
     default_language = container.getDefaultAvailableLanguage()
-    if default_language:
+    if default_language and container.isStaticLanguageSelection():
       if request.get('AcceptLanguage') is not None:
         request['AcceptLanguage'].set(default_language, 80)
 
@@ -156,7 +156,7 @@ class WebSite(WebSection):
     # Static Language Selection support
     def _getExtensibleContent(self, request, name):
       language_list = self.getAvailableLanguageList()
-      if language_list:
+      if language_list and self.isStaticLanguageSelection():
         # Interprete names which could be a language
         # as a language selection only if language_list
         # was defined or set default language
diff --git a/product/ERP5/PropertySheet/WebSite.py b/product/ERP5/PropertySheet/WebSite.py
index 4d961c0d2f..9a21f395e8 100644
--- a/product/ERP5/PropertySheet/WebSite.py
+++ b/product/ERP5/PropertySheet/WebSite.py
@@ -36,5 +36,11 @@ class WebSite:
             'type'        : 'string',
             'default'     : None,
             'mode'        : 'rw' },
+        {   'id'          : 'static_language_selection',
+            'description' : 'If set to True, the language selection is based on the URL rather than '
+                            'on cookie. This property impacts the behaviour of Base_doLanguage',
+            'type'        : 'boolean',
+            'default'     : 0,
+            'mode'        : 'rw' },
     )
 
-- 
2.30.9