Do not store enabled, code improvements
This commit is contained in:
parent
545ece9bb7
commit
a34b0434a9
|
|
@ -13,33 +13,42 @@ class AuthOAuthProvider(models.Model):
|
||||||
_inherit = 'auth.oauth.provider'
|
_inherit = 'auth.oauth.provider'
|
||||||
|
|
||||||
managed_by_env = fields.Boolean(compute='_compute_server_env')
|
managed_by_env = fields.Boolean(compute='_compute_server_env')
|
||||||
|
provider_simple_name = fields.Char(compute='_compute_simple_name')
|
||||||
client_id = fields.Char(string='Client ID', compute='_compute_server_env')
|
client_id = fields.Char(string='Client ID', compute='_compute_server_env')
|
||||||
enabled = fields.Boolean(string='Allowed', compute='_compute_server_env',
|
enabled = fields.Boolean(string='Allowed', compute='_compute_server_env',
|
||||||
store=True)
|
search='_search_enabled')
|
||||||
|
|
||||||
@api.depends('name')
|
|
||||||
def _compute_server_env(self):
|
def _compute_server_env(self):
|
||||||
|
|
||||||
base_section = 'auth_oauth'
|
|
||||||
|
|
||||||
for provider in self:
|
for provider in self:
|
||||||
|
provider_section_name = provider._get_provider_section_name()
|
||||||
provider_simple_name = provider.name.split(' ')[0].lower()
|
|
||||||
provider_section_name = '.'.join(
|
|
||||||
[base_section, provider_simple_name])
|
|
||||||
|
|
||||||
vals = {}
|
vals = {}
|
||||||
|
|
||||||
if serv_config.has_section(provider_section_name):
|
if serv_config.has_section(provider_section_name):
|
||||||
|
|
||||||
vals.update({'managed_by_env': True})
|
vals.update({'managed_by_env': True})
|
||||||
|
|
||||||
vals.update(serv_config.items(provider_section_name))
|
vals.update(serv_config.items(provider_section_name))
|
||||||
else:
|
else:
|
||||||
vals.update({'managed_by_env': False, 'enabled': False})
|
vals.update({'managed_by_env': False, 'enabled': False})
|
||||||
|
|
||||||
provider.update(vals)
|
provider.update(vals)
|
||||||
|
|
||||||
|
def _search_enabled(self, operator, value):
|
||||||
|
enabled_provider_ids = []
|
||||||
|
for provider in self.search([]):
|
||||||
|
provider_section_name = provider._get_provider_section_name()
|
||||||
|
if serv_config.has_option(provider_section_name, 'enabled') \
|
||||||
|
and serv_config.get(provider_section_name, 'enabled'):
|
||||||
|
enabled_provider_ids.append(provider.id)
|
||||||
|
return [('id', 'in', enabled_provider_ids)]
|
||||||
|
|
||||||
|
@api.multi
|
||||||
|
def _compute_simple_name(self):
|
||||||
|
for provider in self:
|
||||||
|
provider.provider_simple_name = provider.name.split(' ')[0].lower()
|
||||||
|
|
||||||
|
@api.one
|
||||||
|
def _get_provider_section_name(self):
|
||||||
|
return '.'.join(['auth_oauth', self.provider_simple_name])
|
||||||
|
|
||||||
@api.model
|
@api.model
|
||||||
def fields_view_get(self, view_id=None, view_type='form', toolbar=False,
|
def fields_view_get(self, view_id=None, view_type='form', toolbar=False,
|
||||||
submenu=False):
|
submenu=False):
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue