25 lines
939 B
Python
25 lines
939 B
Python
|
# Part of Odoo. See LICENSE file for full copyright and licensing details.
|
||
|
|
||
|
from odoo import models
|
||
|
from odoo.http import request
|
||
|
|
||
|
|
||
|
class IrHttp(models.AbstractModel):
|
||
|
_inherit = 'ir.http'
|
||
|
|
||
|
@classmethod
|
||
|
def _get_translation_frontend_modules_name(cls):
|
||
|
mods = super(IrHttp, cls)._get_translation_frontend_modules_name()
|
||
|
return mods + ['portal']
|
||
|
|
||
|
@classmethod
|
||
|
def _get_frontend_langs(cls):
|
||
|
# _get_frontend_langs() is used by @http_routing:IrHttp._match
|
||
|
# where is_frontend is not yet set and when no backend endpoint
|
||
|
# matched. We have to assume we are going to match a frontend
|
||
|
# route, hence the default True. Elsewhere, request.is_frontend
|
||
|
# is set.
|
||
|
if request and getattr(request, 'is_frontend', True):
|
||
|
return [lang[0] for lang in filter(lambda l: l[3], request.env['res.lang'].get_available())]
|
||
|
return super()._get_frontend_langs()
|