diff --git a/partner_revision/__openerp__.py b/partner_revision/__openerp__.py
index 9588a7081..94abbe57d 100644
--- a/partner_revision/__openerp__.py
+++ b/partner_revision/__openerp__.py
@@ -29,7 +29,7 @@
'website': 'http://www.camptocamp.com',
'data': ['views/menu.xml',
'views/res_partner_revision_views.xml',
- 'views/revision_behavior_views.xml',
+ 'views/revision_field_rule_views.xml',
],
'test': [],
'installable': True,
diff --git a/partner_revision/models/__init__.py b/partner_revision/models/__init__.py
index 9a890dbb1..18d75db26 100644
--- a/partner_revision/models/__init__.py
+++ b/partner_revision/models/__init__.py
@@ -2,4 +2,4 @@
from . import res_partner
from . import res_partner_revision
-from . import revision_behavior
+from . import revision_field_rule
diff --git a/partner_revision/models/res_partner_revision.py b/partner_revision/models/res_partner_revision.py
index 4ecb3bfd1..b7632254f 100644
--- a/partner_revision/models/res_partner_revision.py
+++ b/partner_revision/models/res_partner_revision.py
@@ -94,7 +94,7 @@ class ResPartnerRevision(models.Model):
change_model = self.env['res.partner.revision.change']
write_values = values.copy()
changes = []
- rules = self.env['revision.behavior'].get_rules(record._model._name)
+ rules = self.env['revision.field.rule'].get_rules(record._model._name)
for field in values:
rule = rules.get(field)
if not rule:
@@ -349,12 +349,12 @@ class ResPartnerRevisionChange(models.Model):
if not self.env.context.get('__revision_rules'):
# by default always write on partner
change['state'] = 'done'
- elif rule.default_behavior == 'auto':
+ elif rule.action == 'auto':
change['state'] = 'done'
- elif rule.default_behavior == 'validate':
+ elif rule.action == 'validate':
change['state'] = 'draft'
pop_value = True # change to apply manually
- elif rule.default_behavior == 'never':
+ elif rule.action == 'never':
change['state'] = 'cancel'
pop_value = True # change never applied
return change, pop_value
diff --git a/partner_revision/models/revision_behavior.py b/partner_revision/models/revision_field_rule.py
similarity index 82%
rename from partner_revision/models/revision_behavior.py
rename to partner_revision/models/revision_field_rule.py
index ab09278c7..91cff6e9d 100644
--- a/partner_revision/models/revision_behavior.py
+++ b/partner_revision/models/revision_field_rule.py
@@ -23,9 +23,9 @@ from openerp import models, fields, api
from openerp.tools.cache import ormcache
-class RevisionBehavior(models.Model):
- _name = 'revision.behavior'
- _description = 'Revision Behavior'
+class RevisionFieldRule(models.Model):
+ _name = 'revision.field.rule'
+ _description = 'Revision Field Rules'
_rec_name = 'field_id'
model_id = fields.Many2one(comodel_name='ir.model',
@@ -35,9 +35,9 @@ class RevisionBehavior(models.Model):
field_id = fields.Many2one(comodel_name='ir.model.fields',
string='Field',
ondelete='cascade')
- default_behavior = fields.Selection(
- selection='_selection_default_behavior',
- string='Default Behavior',
+ action = fields.Selection(
+ selection='_selection_action',
+ string='Action',
help="Auto: always apply a change.\n"
"Validate: manually applied by an administrator.\n"
"Never: change never applied.",
@@ -48,7 +48,7 @@ class RevisionBehavior(models.Model):
return self.env.ref('base.model_res_partner').id
@api.model
- def _selection_default_behavior(self):
+ def _selection_action(self):
return [('auto', 'Auto'),
('validate', 'Validate'),
('never', 'Never'),
@@ -62,18 +62,18 @@ class RevisionBehavior(models.Model):
@api.model
def create(self, vals):
- record = super(RevisionBehavior, self).create(vals)
+ record = super(RevisionFieldRule, self).create(vals)
self.clear_caches()
return record
@api.multi
def write(self, vals):
- result = super(RevisionBehavior, self).write(vals)
+ result = super(RevisionFieldRule, self).write(vals)
self.clear_caches()
return result
@api.multi
def unlink(self):
- result = super(RevisionBehavior, self).unlink()
+ result = super(RevisionFieldRule, self).unlink()
self.clear_caches()
return result
diff --git a/partner_revision/tests/test_revision_field_type.py b/partner_revision/tests/test_revision_field_type.py
index 1e7d64d17..bda7e9d69 100644
--- a/partner_revision/tests/test_revision_field_type.py
+++ b/partner_revision/tests/test_revision_field_type.py
@@ -30,8 +30,8 @@ class TestRevisionFieldType(RevisionMixin, common.TransactionCase):
but we have to ensure that the general revision flows work as expected.
"""
- def _setup_behavior(self):
- RevisionBehavior = self.env['revision.behavior']
+ def _setup_rules(self):
+ RevisionFieldRule = self.env['revision.field.rule']
partner_model_id = self.env.ref('base.model_res_partner').id
fields = (('char', 'ref'),
('text', 'comment'),
@@ -54,15 +54,15 @@ class TestRevisionFieldType(RevisionMixin, common.TransactionCase):
# set attribute such as 'self.field_char' is a
# ir.model.fields record of the field res_partner.ref
setattr(self, attr_name, field_record)
- RevisionBehavior.create({
+ RevisionFieldRule.create({
'model_id': partner_model_id,
'field_id': field_record.id,
- 'default_behavior': 'validate',
+ 'action': 'validate',
})
def setUp(self):
super(TestRevisionFieldType, self).setUp()
- self._setup_behavior()
+ self._setup_rules()
self.partner = self.env['res.partner'].create({
'name': 'Original Name',
'street': 'Original Street',
diff --git a/partner_revision/tests/test_revision_flow.py b/partner_revision/tests/test_revision_flow.py
index 2fc18d2f6..76b8ec57a 100644
--- a/partner_revision/tests/test_revision_flow.py
+++ b/partner_revision/tests/test_revision_flow.py
@@ -41,31 +41,31 @@ class TestRevisionFlow(RevisionMixin, common.TransactionCase):
* changes in state 'cancel' or 'done' do not write on the partner
"""
- def _setup_behavior(self):
- RevisionBehavior = self.env['revision.behavior']
+ def _setup_rules(self):
+ RevisionFieldRule = self.env['revision.field.rule']
partner_model_id = self.env.ref('base.model_res_partner').id
self.field_name = self.env.ref('base.field_res_partner_name')
self.field_street = self.env.ref('base.field_res_partner_street')
self.field_street2 = self.env.ref('base.field_res_partner_street2')
- RevisionBehavior.create({
+ RevisionFieldRule.create({
'model_id': partner_model_id,
'field_id': self.field_name.id,
- 'default_behavior': 'auto',
+ 'action': 'auto',
})
- RevisionBehavior.create({
+ RevisionFieldRule.create({
'model_id': partner_model_id,
'field_id': self.field_street.id,
- 'default_behavior': 'validate',
+ 'action': 'validate',
})
- RevisionBehavior.create({
+ RevisionFieldRule.create({
'model_id': partner_model_id,
'field_id': self.field_street2.id,
- 'default_behavior': 'never',
+ 'action': 'never',
})
def setUp(self):
super(TestRevisionFlow, self).setUp()
- self._setup_behavior()
+ self._setup_rules()
self.partner = self.env['res.partner'].create({
'name': 'X',
'street': 'street X',
diff --git a/partner_revision/views/revision_behavior_views.xml b/partner_revision/views/revision_behavior_views.xml
deleted file mode 100644
index e9ce1ec76..000000000
--- a/partner_revision/views/revision_behavior_views.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
-
-
- revision.behavior.tree
- revision.behavior
-
-
-
-
-
-
-
-
-
-
- revision.behavior.form
- revision.behavior
-
-
-
-
-
-
- revision.behavior.search
- revision.behavior
-
-
-
-
-
-
-
-
-
-
- Revision Behavior
- ir.actions.act_window
- revision.behavior
- form
- tree,form
-
-
-
-
-
-
diff --git a/partner_revision/views/revision_field_rule_views.xml b/partner_revision/views/revision_field_rule_views.xml
new file mode 100644
index 000000000..f1c2b9b22
--- /dev/null
+++ b/partner_revision/views/revision_field_rule_views.xml
@@ -0,0 +1,61 @@
+
+
+
+
+ revision.field.rule.tree
+ revision.field.rule
+
+
+
+
+
+
+
+
+
+
+ revision.field.rule.form
+ revision.field.rule
+
+
+
+
+
+
+ revision.field.rule.search
+ revision.field.rule
+
+
+
+
+
+
+
+
+
+
+ Revision Fields Rules
+ ir.actions.act_window
+ revision.field.rule
+ form
+ tree,form
+
+
+
+
+
+