0105cbbcf9
The website `default_lang_id` was not required, while the algorithm choosing the website language expects it to be required. This solves the below issue, when your browser language is en_US: - add a second language to the website (e.g. fr_BE or es_VE), - in the website settings, remove English from the languages - in the website settings, unset the default language - try to go on the website You will have a crash: ``` File "/home/odoo/src/odoo/saas-11/addons/website/models/ir_http.py", line 193, in _dispatch resp.set_cookie('website_lang', request.lang) File "/usr/lib/python2.7/dist-packages/werkzeug/wrappers.py", line 992, in set_cookie self.charset)) File "/usr/lib/python2.7/dist-packages/werkzeug/http.py", line 905, in dump_cookie value = to_bytes(value, charset) File "/usr/lib/python2.7/dist-packages/werkzeug/_compat.py", line 106, in to_bytes raise TypeError('Expected bytes') TypeError: Expected bytes ``` This is because the `request.lang` is set to `False` because of the below algorithm in `ir_http.py`: ``` nearest_lang = not func and self.get_nearest_lang(path[1]) url_lang = nearest_lang and path[1] preferred_lang = ((cook_lang if cook_lang in langs else False) or self.get_nearest_lang(request.lang) or request.website.default_lang_code) is_a_bot = self.is_a_bot() request.lang = request.context['lang'] = nearest_lang or preferred_lang ``` `nearest_lang` is `False`, because there is no nearest language available for the browser lang (`en_US`) `cook_lang` is `False` for users who never went on the website `request.website.default_lang_code`, which is the last feedback, is also `False` because you removed the default language in the website settings. opw-695621 |
||
---|---|---|
.tx | ||
addons | ||
debian | ||
doc | ||
openerp | ||
setup | ||
.gitignore | ||
.mailmap | ||
CONTRIBUTING.md | ||
LICENSE | ||
MANIFEST.in | ||
Makefile | ||
README.md | ||
odoo.py | ||
openerp-gevent | ||
openerp-server | ||
openerp-wsgi.py | ||
requirements.txt | ||
setup.cfg | ||
setup.py |
README.md
Odoo
Odoo is a suite of web based open source business apps.
The main Odoo Apps include an Open Source CRM, Website Builder, eCommerce, Project Management, Billing & Accounting, Point of Sale, Human Resources, Marketing, Manufacturing, Purchase Management, ...
Odoo Apps can be used as stand-alone applications, but they also integrate seamlessly so you get a full-featured Open Source ERP when you install several Apps.
Getting started with Odoo
For a standard installation please follow the Setup instructions from the documentation.
If you are a developer you may type the following command at your terminal:
wget -O- https://raw.githubusercontent.com/odoo/odoo/8.0/odoo.py | python
Then follow the developer tutorials
For Odoo employees
To add the odoo-dev remote use this command:
$ ./odoo.py setup_git_dev
To fetch odoo merge pull requests refs use this command:
$ ./odoo.py setup_git_review