diff --git a/addons/base/static/src/js/chrome.js b/addons/base/static/src/js/chrome.js index fcc7f70d973..bd36b534c85 100644 --- a/addons/base/static/src/js/chrome.js +++ b/addons/base/static/src/js/chrome.js @@ -673,7 +673,7 @@ openerp.base.WebClient = openerp.base.Controller.extend({ this.menu.start(); }, on_logged: function() { - this.action = new openerp.base.ActionManager(this.session, "oe_application"); + this.action = new openerp.base.ActionManager(this.session, "oe_app"); this.action.start(); }, on_menu_action: function(action) { diff --git a/addons/base/static/src/js/form.js b/addons/base/static/src/js/form.js index 3091309b8c8..7830f20eb20 100644 --- a/addons/base/static/src/js/form.js +++ b/addons/base/static/src/js/form.js @@ -566,11 +566,22 @@ openerp.base.form.FieldOne2Many = openerp.base.form.Field.extend({ this.template = "FieldOne2Many"; this.viewmanager = null; this.operations = []; - // thise.iewq.on + + }, + start: function() { + this._super.apply(this, arguments); + this.log("o2m.start"); + this.viewmanager = new openerp.base.ViewManager(this.view.session, this.element_id); + var action = { + res_model: this.field.relation, + views: [ [false,"list"], ], + }; + this.viewmanager.do_action_window(action); }, set_value: function(value) { this.value = value; + this.log("o2m.set_value",value); }, get_value: function(value) { return this.operations; diff --git a/addons/base/static/src/js/views.js b/addons/base/static/src/js/views.js index b257c4d0ff0..fd23c39bd57 100644 --- a/addons/base/static/src/js/views.js +++ b/addons/base/static/src/js/views.js @@ -111,15 +111,13 @@ openerp.base.ViewManager = openerp.base.Controller.extend({ if (this.searchview) { this.searchview.stop(); } + var view_id = action.search_view_id ? action.search_view_id[0] || false : false; - var searchview = this.searchview = new openerp.base.SearchView( - this.session, this.element_id + "_search", - this.dataset, action.search_view_id[0] || false, - this.search_defaults()); - searchview.on_search.add(function() { + this.searchview = new openerp.base.SearchView(this.session, this.element_id + "_search", this.dataset, view_id, this.search_defaults()); + this.searchview.on_search.add(function() { self.views[self.active_view].controller.do_search.apply(self, arguments); }); - return searchview.start(); + return this.searchview.start(); }, do_action_window: function(action) { var self = this; diff --git a/addons/base/static/src/xml/base.xml b/addons/base/static/src/xml/base.xml index c7cd88c8c9a..dd43448d67c 100644 --- a/addons/base/static/src/xml/base.xml +++ b/addons/base/static/src/xml/base.xml @@ -20,7 +20,7 @@
-
+
@@ -246,7 +246,7 @@ -
+
One2Many widget