summaryrefslogtreecommitdiff
path: root/addons/google_spreadsheet/static
diff options
context:
space:
mode:
Diffstat (limited to 'addons/google_spreadsheet/static')
-rw-r--r--addons/google_spreadsheet/static/src/js/search.js17
1 files changed, 9 insertions, 8 deletions
diff --git a/addons/google_spreadsheet/static/src/js/search.js b/addons/google_spreadsheet/static/src/js/search.js
index a9f8e392d0a..20b7c804f33 100644
--- a/addons/google_spreadsheet/static/src/js/search.js
+++ b/addons/google_spreadsheet/static/src/js/search.js
@@ -7,27 +7,28 @@ var data = require('web.data');
var Domain = require('web.Domain');
var FavoriteMenu = require('web.FavoriteMenu');
var pyeval = require('web.pyeval');
-var ViewManager = require('web.ViewManager');
var QWeb = core.qweb;
FavoriteMenu.include({
start: function () {
this._super();
- var am = this.findAncestor(function (a) {
- return a instanceof ActionManager;
- });
- if (am && am.get_inner_widget() instanceof ViewManager) {
- this.view_manager = am.get_inner_widget();
+ if (this.action.type === 'ir.actions.act_window') {
this.$('.o_favorites_menu').append(QWeb.render('SearchView.addtogooglespreadsheet'));
this.$('.add-to-spreadsheet').click(this.add_to_spreadsheet.bind(this));
}
},
add_to_spreadsheet: function () {
+ // AAB: trigger_up an event that will be intercepted by the controller,
+ // as soon as the controller is the parent of the control panel
+ var am = this.findAncestor(function (a) {
+ return a instanceof ActionManager;
+ });
+ var controller = am.getCurrentController();
var sv_data = this.searchview.build_search_data(),
model = this.searchview.dataset.model,
- list_view = this.view_manager.views.list,
- list_view_id = list_view ? list_view.view_id : false,
+ list_view = _.findWhere(controller.widget.actionViews, {type: 'list'}),
+ list_view_id = list_view ? list_view.viewID : false,
domain = [],
groupbys = pyeval.eval('groupbys', sv_data.groupbys).join(" "),
ds = new data.DataSet(this, 'google.drive.config');