diff --git a/bin/addons/base/__openerp__.py b/bin/addons/base/__openerp__.py
index 492c397754d..b0d519e51c3 100644
--- a/bin/addons/base/__openerp__.py
+++ b/bin/addons/base/__openerp__.py
@@ -81,6 +81,7 @@
'base_demo.xml',
'res/partner/partner_demo.xml',
'res/partner/crm_demo.xml',
+ 'res/res_widget_demo.xml',
],
'test': [
'test/base_test.xml',
diff --git a/bin/addons/base/res/res_widget.py b/bin/addons/base/res/res_widget.py
index 14b7338bde0..1d9a688655e 100644
--- a/bin/addons/base/res/res_widget.py
+++ b/bin/addons/base/res/res_widget.py
@@ -35,21 +35,23 @@ class res_widget_user(osv.osv):
_columns = {
'sequence': fields.integer('Sequence'),
'user_id': fields.many2one('res.users','User', select=1),
- 'widget_id': fields.many2one('res.widget','Widget',required=1),
+ 'widget_id': fields.many2one('res.widget','Widget',required=True),
}
res_widget_user()
class res_widget_wizard(osv.osv_memory):
_name = "res.widget.wizard"
- _description = "Add a widget"
+ _description = "Add a widget for User"
_columns = {
- 'widget_id': fields.one2many("res.widget", 'Widget', required=True),
+ 'widget_id': fields.many2many("res.widget",
+ "res_widget_user_rel", "uid", "wid",
+ "Widget"),
}
- def widget_add(self, cr, uid, ids, context=None):
- if context is None:
- context = {}
- wizard = self.read(cr, uid, ids)[0]
- self.pool.get('res.widget.user').create(cr, uid, {'user_id':uid, 'widget_id':wizard['widget_id']})
- return {}
-res_widget_wizard()
+ def res_widget_add(self, cr, uid, ids, context=None):
+ wizard = self.read(cr, uid, ids, context=context)[0]
+ for wiz_id in wizard['widget_id']:
+ self.pool.get('res.widget.user').create(
+ cr, uid, {'user_id':uid, 'widget_id':wiz_id}, context=context)
+ return {'type': 'ir.actions.act_window_close'}
+res_widget_wizard()
diff --git a/bin/addons/base/res/res_widget_data.xml b/bin/addons/base/res/res_widget_data.xml
index a8375651b8a..1e64955da1a 100644
--- a/bin/addons/base/res/res_widget_data.xml
+++ b/bin/addons/base/res/res_widget_data.xml
@@ -1,7 +1,7 @@
-
diff --git a/bin/addons/base/res/res_widget_demo.xml b/bin/addons/base/res/res_widget_demo.xml
new file mode 100644
index 00000000000..6ffe9bfb182
--- /dev/null
+++ b/bin/addons/base/res/res_widget_demo.xml
@@ -0,0 +1,13 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/bin/addons/base/res/res_widget_view.xml b/bin/addons/base/res/res_widget_view.xml
index b139f774f9b..91b108257dc 100644
--- a/bin/addons/base/res/res_widget_view.xml
+++ b/bin/addons/base/res/res_widget_view.xml
@@ -75,20 +75,25 @@
-
+