[IMP] Viewmanager sets dataset's domain & context on_search

bzr revid: fme@openerp.com-20111003135203-d3p18cfdh5jko976
This commit is contained in:
Fabien Meghazi 2011-10-03 15:52:03 +02:00
parent 59e70f4544
commit 3e1b007478
5 changed files with 7 additions and 26 deletions

View File

@ -281,12 +281,13 @@ db.web.ViewManager = db.web.Widget.extend(/** @lends db.web.ViewManager# */{
var self = this,
controller = this.views[this.active_view].controller;
if (domains || contexts) {
//if ((!domains || !domains.length) && (!contexts || !contexts.length) && (!groupbys || !groupbys.length) { }
this.rpc('/web/session/eval_domain_and_context', {
domains: [this.dataset.get_domain()].concat(domains || []),
contexts: [this.dataset.get_context()].concat(contexts || []),
domains: [this.action.domain || []].concat(domains || []),
contexts: [this.action.context || {}].concat(contexts || []),
group_by_seq: groupbys || []
}, function (results) {
self.dataset.context = results.context;
self.dataset.domain = results.domain;
controller.do_search(results.domain, results.context, results.group_by);
self.last_search = [results.domain, results.context, results.group_by];
});

View File

@ -15,8 +15,6 @@ openerp.web_calendar.CalendarView = openerp.web.View.extend({
this.model = dataset.model;
this.fields_view = {};
this.view_id = view_id;
this.domain = this.dataset.domain || [];
this.context = this.dataset.context || {};
this.has_been_loaded = $.Deferred();
this.creating_event_id = null;
this.dataset_events = [];
@ -296,12 +294,8 @@ openerp.web_calendar.CalendarView = openerp.web.View.extend({
scheduler.clearAll();
$.when(this.has_been_loaded).then(function() {
// TODO: handle non-empty results.group_by with read_group
self.context = context;
self.domain = domain;
self.dataset.read_slice(_.keys(self.fields), {
offset: 0,
context: context,
domain: domain,
limit: self.limit
}, function(events) {
self.dataset_events = events;

View File

@ -509,15 +509,7 @@ init: function(parent, dataset, view_id) {
do_search: function (domains, contexts, groupbys) {
var self = this;
this.grp = groupbys;
return this.rpc('/web/session/eval_domain_and_context', {
domains: domains,
contexts: contexts,
group_by_seq: groupbys
}, function (results) {
self.dataset.context = results.context;
self.dataset.domain = results.domain;
self.reload_gantt();
});
self.reload_gantt();
}
});

View File

@ -369,10 +369,7 @@ openerp.web_graph.GraphView = openerp.web.View.extend({
} else {
this.abscissa = this.first_field;
}
this.dataset.read_slice(this.list_fields(), {
context: context,
domain: domain
}, $.proxy(this, 'schedule_chart'));
this.dataset.read_slice(this.list_fields(), {}, $.proxy(this, 'schedule_chart'));
}
});
};

View File

@ -446,10 +446,7 @@ openerp.web_kanban.KanbanView = openerp.web.View.extend({
},
function (dataset) {
self.groups = [];
self.dataset.read_slice([], {
domain: domain,
context: context
}, function(records) {
self.dataset.read_slice([], {}, function(records) {
if (records.length) {
self.all_display_data = [{'records': records, 'value':false, 'header' : false, 'ids': self.dataset.ids}];
} else {