Browse Source

[FIX] API compatibility of monkeypatched method

[IMP] Make _register_hook idempotent as we have to call it in tests
pull/321/head
Stefan Rijnhart 9 years ago
parent
commit
700fe1e039
  1. 11
      base_technical_features/models/basemodel_monkeypatch.py

11
base_technical_features/models/basemodel_monkeypatch.py

@ -1,18 +1,22 @@
# -*- coding: utf-8 -*-
from openerp import models
from openerp import models, api
class BaseModelMonkeyPatch(models.AbstractModel):
_name = 'basemodel.monkeypatch'
def _register_hook(self, cr):
if not hasattr(
models.BaseModel, 'base_technical_features_user_has_groups'):
models.BaseModel.base_technical_features_user_has_groups = (
models.BaseModel.user_has_groups)
@api.cr_uid_context
def user_has_groups(self, cr, uid, groups, context=None):
""" Return True for users in the technical features group when
membership of the original group is checked, even if debug mode is
not enabled.
membership of the original group is checked, even if debug mode
is not enabled.
"""
if ('base.group_no_one' in groups.split(',') and
self.pool['res.users'].has_group(
@ -23,4 +27,5 @@ class BaseModelMonkeyPatch(models.AbstractModel):
cr, uid, groups, context=context)
models.BaseModel.user_has_groups = user_has_groups
return super(BaseModelMonkeyPatch, self)._register_hook(cr)
Loading…
Cancel
Save