summaryrefslogtreecommitdiff
path: root/addons/web/static/src/js
diff options
context:
space:
mode:
authorDavid Monjoie <dmo@odoo.com>2017-06-29 08:52:43 +0200
committerDavid Monjoie <dmo@odoo.com>2017-07-03 08:15:28 +0200
commit2e2ab4e954cd5da8c0c06d393b334cefc7627315 (patch)
tree433ca500463b6a19329dac2e3707f8c8e035604c /addons/web/static/src/js
parent537181d4e3baad55db1fb83ea3c9e1ad9104e3fb (diff)
[FIX] web: don't read events if no filter is enabled
Previously, enabling some filters created a domain of which events to display, but disabling all filters resulted in a domain of [] which, instead of showing no events at all, actually showed all events.
Diffstat (limited to 'addons/web/static/src/js')
-rw-r--r--addons/web/static/src/js/views/calendar/calendar_model.js13
1 files changed, 8 insertions, 5 deletions
diff --git a/addons/web/static/src/js/views/calendar/calendar_model.js b/addons/web/static/src/js/views/calendar/calendar_model.js
index cb371bfe6f9..ded7938605f 100644
--- a/addons/web/static/src/js/views/calendar/calendar_model.js
+++ b/addons/web/static/src/js/views/calendar/calendar_model.js
@@ -393,16 +393,19 @@ return AbstractModel.extend({
this.data.fc_options = this._getFullCalendarOptions();
var defs = _.map(this.data.filters, this._loadFilter.bind(this));
-
return $.when.apply($, defs).then(function () {
- return self._rpc({
+ var eventsDef = $.Deferred().resolve([]);
+ var filterDomain = self._getFilterDomain();
+ if (filterDomain.length || _.isEmpty(self.data.filters)) {
+ eventsDef = self._rpc({
model: self.modelName,
method: 'search_read',
context: self.data.context,
fields: self.fieldNames,
- domain: self.data.domain.concat(self._getRangeDomain()).concat(self._getFilterDomain())
- })
- .then(function (events) {
+ domain: self.data.domain.concat(self._getRangeDomain()).concat(filterDomain)
+ });
+ }
+ return eventsDef.then(function (events) {
self.data.data = _.map(events, self._recordToCalendarEvent.bind(self));
return $.when(
self._loadColors(self.data, self.data.data),