From 448c3c9f0e51d2b42bf5ba9a0e96500e4e8f3dae Mon Sep 17 00:00:00 2001 From: Sean Fridman Date: Wed, 27 May 2015 12:27:29 -0400 Subject: Add query config to sort queries by field --- app/node_modules/okquery/index.js | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) (limited to 'app/node_modules/okquery/index.js') diff --git a/app/node_modules/okquery/index.js b/app/node_modules/okquery/index.js index 519bc08..4051f95 100644 --- a/app/node_modules/okquery/index.js +++ b/app/node_modules/okquery/index.js @@ -21,6 +21,10 @@ function OKQuery(options) { if (isobject(query)) query = cloneDeep(query); + // Queries are ordered by index by default + var sortField = options.sortBy || '__index'; + var descending = options.descending || false; + Object.defineProperty(this, 'resource', { value: resource, writable: false, @@ -40,7 +44,9 @@ function OKQuery(options) { }); this.get = createQuery(resource, query, { - default: options.default + default: options.default, + sortField: sortField, + descending : descending }); } @@ -53,7 +59,7 @@ function createQuery(resource, query, options) { } else if (isDynamic(query)) { query = queryDynamic(resource); } else if (isSet(query)) { - query = queryAll(resource); + query = queryAll(resource, options.sortField, options.descending); } else { query = querySingle(resource, query); } @@ -100,10 +106,9 @@ function queryDynamic(resource) { }; } -function queryAll(resource) { +function queryAll(resource, sortField, descending) { return function() { - // Always return sorted results - return resource.sortBy('__index'); + return resource.sortBy(sortField, descending); }; } -- cgit v1.2.3-70-g09d2