summaryrefslogtreecommitdiff
path: root/addons/website/wizard/base_language_install.py
diff options
context:
space:
mode:
authorRavi Gadhia <rga@odoo.com>2016-07-15 10:30:04 +0200
committerJérome Maes <jem@openerp.com>2016-08-04 12:02:14 +0200
commitfd09ddb6f3c40e9ec5854cc58c7eb791d4498dc0 (patch)
tree58e598da9165b3f78a9d35efcc3c9a2167b82a9b /addons/website/wizard/base_language_install.py
parent7c20b4785bef5bf2fd84b429d42a2f3425801410 (diff)
[MIG] website: migration to new api
Migration of website module to new API. The tricky phase is ir_http.py : we need to use `request.env` only when the authenfication phase is done. Normally by calling `super` of `_dispatch` method, but website module required it to be done before. This is important since `env`is a lazy property of `request` object. Some hack were kept since this commit is a migration ('RequestUID' in ir.http, ...) Some docstrings were added.
Diffstat (limited to 'addons/website/wizard/base_language_install.py')
-rw-r--r--addons/website/wizard/base_language_install.py40
1 files changed, 17 insertions, 23 deletions
diff --git a/addons/website/wizard/base_language_install.py b/addons/website/wizard/base_language_install.py
index cc8cd51ae85..1cb850fa605 100644
--- a/addons/website/wizard/base_language_install.py
+++ b/addons/website/wizard/base_language_install.py
@@ -1,41 +1,35 @@
# -*- encoding: utf-8 -*-
# Part of Odoo. See LICENSE file for full copyright and licensing details.
-import openerp
-from openerp.osv import orm, osv, fields
+from odoo import api, fields, models
-class base_language_install(osv.osv_memory):
+class BaseLanguageInstall(models.TransientModel):
+
_inherit = "base.language.install"
- _columns = {
- 'website_ids': fields.many2many('website', string='Websites to translate'),
- }
- def default_get(self, cr, uid, fields, context=None):
- if context is None:
- context = {}
- defaults = super(base_language_install, self).default_get(cr, uid, fields, context)
- website_id = context.get('params', {}).get('website_id')
+ website_ids = fields.Many2many('website', string='Websites to translate')
+
+ @api.model
+ def default_get(self, fields):
+ defaults = super(BaseLanguageInstall, self).default_get(fields)
+ website_id = self._context.get('params', {}).get('website_id')
if website_id:
if 'website_ids' not in defaults:
defaults['website_ids'] = []
defaults['website_ids'].append(website_id)
return defaults
- def lang_install(self, cr, uid, ids, context=None):
- if context is None:
- context = {}
- action = super(base_language_install, self).lang_install(cr, uid, ids, context)
- language_obj = self.browse(cr, uid, ids)[0]
- website_ids = [website.id for website in language_obj['website_ids']]
- lang_id = self.pool['res.lang'].search(cr, uid, [('code', '=', language_obj['lang'])])
- if website_ids and lang_id:
- data = {'language_ids': [(4, lang_id[0])]}
- self.pool['website'].write(cr, uid, website_ids, data)
- params = context.get('params', {})
+ @api.multi
+ def lang_install(self):
+ action = super(BaseLanguageInstall, self).lang_install()
+ lang = self.env['res.lang'].search([('code', '=', self.lang)], limit=1)
+ if self.website_ids and lang:
+ self.website_ids.write({'language_ids': [(4, lang.id)]})
+ params = self._context.get('params', {})
if 'url_return' in params:
return {
- 'url': params['url_return'].replace('[lang]', language_obj['lang']),
+ 'url': params['url_return'].replace('[lang]', self.lang),
'type': 'ir.actions.act_url',
'target': 'self'
}