From 01d59a8b6bb33083ef2383372b0867545ae0a87a Mon Sep 17 00:00:00 2001 From: Frederick Ros Date: Thu, 11 Oct 2012 16:24:47 +0200 Subject: [PATCH] Moved to backbone 0.9.2 and underscoe 1.4.2 --- _includes/recline-deps.html | 4 +- dist/recline.dataset.js | 28 +- dist/recline.js | 67 +- docs/src/backend.ckan.html | 7 +- docs/src/backend.couchdb.html | 8 +- docs/src/backend.csv.html | 4 +- docs/src/backend.dataproxy.html | 2 +- docs/src/backend.elasticsearch.html | 8 +- docs/src/backend.gdocs.html | 2 +- docs/src/backend.memory.html | 37 +- docs/src/data.transform.html | 2 +- docs/src/docco.css | 8 +- docs/src/ecma-fixes.html | 66 ++ docs/src/model.html | 64 +- docs/src/view.graph.html | 10 +- docs/src/view.grid.html | 2 +- docs/src/view.map.html | 136 ++- docs/src/view.multiview.html | 5 +- docs/src/view.slickgrid.html | 2 +- docs/src/view.timeline.html | 2 +- docs/src/view.transform.html | 2 +- docs/src/widget.facetviewer.html | 40 +- docs/src/widget.fields.html | 2 +- docs/src/widget.filtereditor.html | 5 +- docs/src/widget.pager.html | 2 +- docs/src/widget.queryeditor.html | 2 +- test/built.html | 4 +- test/index.html | 4 +- vendor/backbone/0.5.1/backbone.js | 1149 -------------------- vendor/backbone/0.9.2/backbone-min.js | 38 + vendor/backbone/0.9.2/backbone.js | 1431 +++++++++++++++++++++++++ vendor/underscore/1.1.6/underscore.js | 807 -------------- vendor/underscore/1.4.2/underscore.js | 1200 +++++++++++++++++++++ 33 files changed, 3006 insertions(+), 2144 deletions(-) create mode 100644 docs/src/ecma-fixes.html delete mode 100644 vendor/backbone/0.5.1/backbone.js create mode 100644 vendor/backbone/0.9.2/backbone-min.js create mode 100644 vendor/backbone/0.9.2/backbone.js delete mode 100755 vendor/underscore/1.1.6/underscore.js create mode 100644 vendor/underscore/1.4.2/underscore.js diff --git a/_includes/recline-deps.html b/_includes/recline-deps.html index 2d0784c0..5b114eb7 100644 --- a/_includes/recline-deps.html +++ b/_includes/recline-deps.html @@ -21,8 +21,8 @@ - - + + diff --git a/dist/recline.dataset.js b/dist/recline.dataset.js index 86359d90..0ac5b397 100644 --- a/dist/recline.dataset.js +++ b/dist/recline.dataset.js @@ -470,16 +470,15 @@ my.Query = Backbone.Model.extend({ } } }, - // ### addFilter + // ### addFilter(filter) // - // Add a new filter (appended to the list of filters) + // Add a new filter specified by the filter hash and append to the list of filters // // @param filter an object specifying the filter - see _filterTemplates for examples. If only type is provided will generate a filter by cloning _filterTemplates addFilter: function(filter) { // crude deep copy var ourfilter = JSON.parse(JSON.stringify(filter)); - // not full specified so use template and over-write - // 3 as for 'type', 'field' and 'fieldType' + // not fully specified so use template and over-write if (_.keys(filter).length <= 3) { ourfilter = _.extend(this._filterTemplates[filter.type], ourfilter); } @@ -595,7 +594,7 @@ this.recline.Backend.Memory = this.recline.Backend.Memory || {}; } else { if (data) { this.fields = _.map(data[0], function(value, key) { - return {id: key}; + return {id: key, type: 'string'}; }); } } @@ -670,10 +669,20 @@ this.recline.Backend.Memory = this.recline.Backend.Memory || {}; geo_distance : geo_distance }; var dataParsers = { - number : function (e) { return parseFloat(e, 10); }, + integer: function (e) { return parseFloat(e, 10); }, + 'float': function (e) { return parseFloat(e, 10); }, string : function (e) { return e.toString() }, - date : function (e) { return new Date(e).valueOf() } + date : function (e) { return new Date(e).valueOf() }, + datetime : function (e) { return new Date(e).valueOf() } }; + var keyedFields = {}; + _.each(self.fields, function(field) { + keyedFields[field.id] = field; + }); + function getDataParser(filter) { + var fieldType = keyedFields[filter.field].type || 'string'; + return dataParsers[fieldType]; + } // filter records return _.filter(results, function (record) { @@ -686,9 +695,8 @@ this.recline.Backend.Memory = this.recline.Backend.Memory || {}; }); // filters definitions - function term(record, filter) { - var parse = dataParsers[filter.fieldType]; + var parse = getDataParser(filter); var value = parse(record[filter.field]); var term = parse(filter.term); @@ -696,7 +704,7 @@ this.recline.Backend.Memory = this.recline.Backend.Memory || {}; } function range(record, filter) { - var parse = dataParsers[filter.fieldType]; + var parse = getDataParser(filter); var value = parse(record[filter.field]); var start = parse(filter.start); var stop = parse(filter.stop); diff --git a/dist/recline.js b/dist/recline.js index a0bbbd77..b9949ece 100644 --- a/dist/recline.js +++ b/dist/recline.js @@ -917,7 +917,7 @@ this.recline.Backend.Memory = this.recline.Backend.Memory || {}; } else { if (data) { this.fields = _.map(data[0], function(value, key) { - return {id: key}; + return {id: key, type: 'string'}; }); } } @@ -992,10 +992,20 @@ this.recline.Backend.Memory = this.recline.Backend.Memory || {}; geo_distance : geo_distance }; var dataParsers = { - number : function (e) { return parseFloat(e, 10); }, + integer: function (e) { return parseFloat(e, 10); }, + 'float': function (e) { return parseFloat(e, 10); }, string : function (e) { return e.toString() }, - date : function (e) { return new Date(e).valueOf() } + date : function (e) { return new Date(e).valueOf() }, + datetime : function (e) { return new Date(e).valueOf() } }; + var keyedFields = {}; + _.each(self.fields, function(field) { + keyedFields[field.id] = field; + }); + function getDataParser(filter) { + var fieldType = keyedFields[filter.field].type || 'string'; + return dataParsers[fieldType]; + } // filter records return _.filter(results, function (record) { @@ -1008,9 +1018,8 @@ this.recline.Backend.Memory = this.recline.Backend.Memory || {}; }); // filters definitions - function term(record, filter) { - var parse = dataParsers[filter.fieldType]; + var parse = getDataParser(filter); var value = parse(record[filter.field]); var term = parse(filter.term); @@ -1018,7 +1027,7 @@ this.recline.Backend.Memory = this.recline.Backend.Memory || {}; } function range(record, filter) { - var parse = dataParsers[filter.fieldType]; + var parse = getDataParser(filter); var value = parse(record[filter.field]); var start = parse(filter.start); var stop = parse(filter.stop); @@ -1718,16 +1727,15 @@ my.Query = Backbone.Model.extend({ } } }, - // ### addFilter + // ### addFilter(filter) // - // Add a new filter (appended to the list of filters) + // Add a new filter specified by the filter hash and append to the list of filters // // @param filter an object specifying the filter - see _filterTemplates for examples. If only type is provided will generate a filter by cloning _filterTemplates addFilter: function(filter) { // crude deep copy var ourfilter = JSON.parse(JSON.stringify(filter)); - // not full specified so use template and over-write - // 3 as for 'type', 'field' and 'fieldType' + // not fully specified so use template and over-write if (_.keys(filter).length <= 3) { ourfilter = _.extend(this._filterTemplates[filter.type], ourfilter); } @@ -4301,20 +4309,27 @@ this.recline.View = this.recline.View || {}; (function($, my) { +// ## FacetViewer +// +// Widget for displaying facets +// +// Usage: +// +// var viewer = new FacetViewer({ +// model: dataset +// }); my.FacetViewer = Backbone.View.extend({ - className: 'recline-facet-viewer well', + className: 'recline-facet-viewer', template: ' \ - × \ -
\ -
\ -

Facets

\ -
\ +
\ {{#facets}} \ -