From ae587506f3e8cddb9cb263145c244400b675d794 Mon Sep 17 00:00:00 2001 From: Rufus Pollock Date: Tue, 28 Feb 2012 16:43:37 +0000 Subject: [PATCH] [#34,query][s]: switch to proper ES style sort structure. --- src/backend/memory.js | 7 ++++--- src/view-grid.js | 8 +++----- test/backend.test.js | 2 +- 3 files changed, 8 insertions(+), 9 deletions(-) diff --git a/src/backend/memory.js b/src/backend/memory.js index 688c9194..d5a43acd 100644 --- a/src/backend/memory.js +++ b/src/backend/memory.js @@ -84,10 +84,11 @@ this.recline.Backend = this.recline.Backend || {}; var dfd = $.Deferred(); results = this.datasets[model.id].documents; // not complete sorting! - _.each(queryObj.sort, function(item) { + _.each(queryObj.sort, function(sortObj) { + var fieldName = _.keys(sortObj)[0]; results = _.sortBy(results, function(doc) { - var _out = doc[item[0]]; - return (item[1] == 'asc') ? _out : -1*_out; + var _out = doc[fieldName]; + return (sortObj[fieldName].order == 'asc') ? _out : -1*_out; }); }); var results = results.slice(start, start+numRows); diff --git a/src/view-grid.js b/src/view-grid.js index feb02b85..3ab4b6fe 100644 --- a/src/view-grid.js +++ b/src/view-grid.js @@ -140,11 +140,9 @@ my.DataGrid = Backbone.View.extend({ }, setColumnSort: function(order) { - this.model.query({ - sort: [ - [this.state.currentColumn, order] - ] - }); + var sort = [{}]; + sort[0][this.state.currentColumn] = {order: order}; + this.model.query({sort: sort}); }, hideColumn: function() { diff --git a/test/backend.test.js b/test/backend.test.js index f071085f..7ba2e913 100644 --- a/test/backend.test.js +++ b/test/backend.test.js @@ -57,7 +57,7 @@ test('Memory Backend: query sort', function () { var data = dataset.backend.datasets[memoryData.metadata.id]; var queryObj = { sort: [ - ['y', 'desc'] + {'y': {order: 'desc'}} ] }; dataset.query(queryObj).then(function(docs) {