This commit is contained in:
Nicolas Évrard committed 2011-03-28 13:41:47 +02:00
commit b9a74cfbe7
2 files changed
+31 -6

No files matched your search

+25
View File
@@ -33,6 +33,8 @@ class Group(ModelSQL, ModelView):
name = fields.Char('Name', required=True, select=1, translate=True)
model_access = fields.One2Many('ir.model.access', 'group',
'Access Model')
field_access = fields.One2Many('ir.model.field.access', 'group',
'Access Field')
rule_groups = fields.Many2Many('ir.rule.group-res.group',
'group_id', 'rule_group_id', 'Rules',
domain=[('global_p', '!=', True), ('default_p', '!=', True)])
@@ -45,6 +47,29 @@ class Group(ModelSQL, ModelView):
('name_uniq', 'unique (name)', 'The name of the group must be unique!')
]
def copy(self, ids, default=None):
int_id = isinstance(ids, (int, long))
if int_id:
ids = [ids]
if default is None:
default = {}
default = default.copy()
new_ids = []
for group in self.browse(ids):
i = 1
while True:
name = '%s (%d)' % (group.name, i)
if not self.search([('name', '=', name)], order=[]):
break
i += 1
default['name'] = name
new_ids.append(super(Group, self).copy(group.id, default=default))
if int_id:
return new_ids[0]
return new_ids
def create(self, vals):
res = super(Group, self).create(vals)
# Restart the cache on the domain_get method
+6 -6
View File
@@ -19,13 +19,13 @@ this repository contains the full copyright notices and license terms. -->
<separator name="users" colspan="2"/>
<field name="users" colspan="2"/>
</page>
<page string="Access Permissions" col="1" id="permissions">
<separator name="model_access"/>
<page string="Access Permissions" col="2" id="permissions">
<field name="model_access"/>
<separator name="menu_access"/>
<field name="menu_access"/>
<separator name="rule_groups"/>
<field name="rule_groups"/>
<field name="field_access"/>
<separator name="menu_access" colspan="2"/>
<field name="menu_access" colspan="2"/>
<separator name="rule_groups" colspan="2"/>
<field name="rule_groups" colspan="2"/>
</page>
</notebook>
</form>