From 992b2b6ba72c24d74cc589ac63605330cfbafba7 Mon Sep 17 00:00:00 2001 From: Raul Ochoa Date: Mon, 13 Mar 2017 18:40:29 +0100 Subject: [PATCH] Histogram column type discovery query uses non-filtered query Pass all queries to the dataview and use the no filters one for discovering what is the column type associated to the histogram dataview. --- lib/cartodb/models/dataview/factory.js | 2 +- lib/cartodb/models/dataview/histogram.js | 5 +++-- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/lib/cartodb/models/dataview/factory.js b/lib/cartodb/models/dataview/factory.js index 464a0d44..50814f23 100644 --- a/lib/cartodb/models/dataview/factory.js +++ b/lib/cartodb/models/dataview/factory.js @@ -11,7 +11,7 @@ var DataviewFactory = { if (!this.dataviews[type]) { throw new Error('Invalid dataview type: "' + type + '"'); } - return new this.dataviews[type](query, dataviewDefinition.options); + return new this.dataviews[type](query, dataviewDefinition.options, dataviewDefinition.sql); } }; diff --git a/lib/cartodb/models/dataview/histogram.js b/lib/cartodb/models/dataview/histogram.js index 7b3e29bc..5d102bf5 100644 --- a/lib/cartodb/models/dataview/histogram.js +++ b/lib/cartodb/models/dataview/histogram.js @@ -109,12 +109,13 @@ var TYPE = 'histogram'; } } */ -function Histogram(query, options) { +function Histogram(query, options, queries) { if (!_.isString(options.column)) { throw new Error('Histogram expects `column` in widget options'); } this.query = query; + this.queries = queries; this.column = options.column; this.bins = options.bins; @@ -143,7 +144,7 @@ Histogram.prototype.sql = function(psql, override, callback) { var _column = this.column; var columnTypeQuery = columnTypeQueryTpl({ - column: _column, query: this.query + column: _column, query: this.queries.no_filters }); if (this._columnType === null) {