From f56df5f4ec74e971274e26aaad02c5ff25b6f6fb Mon Sep 17 00:00:00 2001
From: ced <>
Date: Wed, 30 May 2007 13:19:32 +0000
Subject: [PATCH] KERNEL,BASE: add menu to user
bzr revid: ced-4ba041841f09238f24b0ea7e3b08db41a92ec8ea
---
bin/addons/base/base_data.xml | 2 ++
bin/addons/base/base_demo.xml | 1 +
bin/addons/base/base_update.xml | 15 ++++++++++++++-
bin/addons/base/ir/ir.xml | 13 +++++++++++++
bin/addons/base/res/res_user.py | 1 +
bin/osv/orm.py | 4 +++-
6 files changed, 34 insertions(+), 2 deletions(-)
diff --git a/bin/addons/base/base_data.xml b/bin/addons/base/base_data.xml
index b36e635a8c0..6d4d24b929b 100644
--- a/bin/addons/base/base_data.xml
+++ b/bin/addons/base/base_data.xml
@@ -1298,6 +1298,8 @@
Administrator
Administrator
+
+
diff --git a/bin/addons/base/base_demo.xml b/bin/addons/base/base_demo.xml
index 8ef0ae5f22c..2f8f5d9a83e 100644
--- a/bin/addons/base/base_demo.xml
+++ b/bin/addons/base/base_demo.xml
@@ -7,6 +7,7 @@
Demo User
Fabien Pinckaers
+
diff --git a/bin/addons/base/base_update.xml b/bin/addons/base/base_update.xml
index 3e9dad03140..3dcdf46910e 100644
--- a/bin/addons/base/base_update.xml
+++ b/bin/addons/base/base_update.xml
@@ -116,6 +116,7 @@
+
@@ -181,8 +182,20 @@
res.users
form
tree,form
-
+
+
+ tree
+
+
+
+
+
+ form
+
+
+
+
diff --git a/bin/addons/base/ir/ir.xml b/bin/addons/base/ir/ir.xml
index fe9b4953859..a6c31df1dc2 100644
--- a/bin/addons/base/ir/ir.xml
+++ b/bin/addons/base/ir/ir.xml
@@ -372,6 +372,19 @@
form
+
+
+ tree
+
+
+
+
+
+ form
+
+
+
+
diff --git a/bin/addons/base/res/res_user.py b/bin/addons/base/res/res_user.py
index 45252070252..85285a822ae 100644
--- a/bin/addons/base/res/res_user.py
+++ b/bin/addons/base/res/res_user.py
@@ -89,6 +89,7 @@ class users(osv.osv):
'address_id': fields.many2one('res.partner.address', 'Address'),
'active': fields.boolean('Active'),
'action_id': fields.many2one('ir.actions.actions', 'Action'),
+ 'menu_id': fields.many2one('ir.actions.actions', 'Menu'),
'groups_id': fields.many2many('res.groups', 'res_groups_users_rel', 'uid', 'gid', 'groups'),
'roles_id': fields.many2many('res.roles', 'res_roles_users_rel', 'uid', 'rid', 'Roles'),
'company_id': fields.many2one('res.company', 'Company'),
diff --git a/bin/osv/orm.py b/bin/osv/orm.py
index 2abca003639..c25a54e3cca 100644
--- a/bin/osv/orm.py
+++ b/bin/osv/orm.py
@@ -383,7 +383,9 @@ class orm(object):
ref = self.pool.get(f._obj)._table
except AttributeError:
ref = f._obj.replace('.','_')
- cr.execute("ALTER TABLE %s ADD FOREIGN KEY (%s) REFERENCES %s ON DELETE %s" % (self._table, k, ref, f.ondelete))
+ # ir_actions is inherited so foreign key doesn't work on it
+ if ref <> 'ir_actions':
+ cr.execute("ALTER TABLE %s ADD FOREIGN KEY (%s) REFERENCES %s ON DELETE %s" % (self._table, k, ref, f.ondelete))
if f.select:
cr.execute("CREATE INDEX %s_%s_index ON %s (%s)" % (self._table, k, self._table, k))
if f.required: