[#34,query][s]: rename offset to from on query object.

* More natural in fact and we may as well go whole hog with ES structure.
This commit is contained in:
Rufus Pollock
2012-02-27 20:54:02 +00:00
parent b4c729b7bb
commit bd6123403e
5 changed files with 12 additions and 12 deletions

View File

@@ -80,7 +80,7 @@ this.recline.Backend = this.recline.Backend || {};
}, },
query: function(model, queryObj) { query: function(model, queryObj) {
var numRows = queryObj.size; var numRows = queryObj.size;
var start = queryObj.offset; var start = queryObj.from;
var dfd = $.Deferred(); var dfd = $.Deferred();
results = this.datasets[model.id].documents; results = this.datasets[model.id].documents;
// not complete sorting! // not complete sorting!

View File

@@ -40,7 +40,7 @@ this.recline.Backend = this.recline.Backend || {};
var base = model.get('webstore_url'); var base = model.get('webstore_url');
var data = { var data = {
_limit: queryObj.size _limit: queryObj.size
, _offset: queryObj.offset , _offset: queryObj.from
}; };
var jqxhr = $.ajax({ var jqxhr = $.ajax({
url: base + '.json', url: base + '.json',

View File

@@ -116,7 +116,7 @@ my.FieldList = Backbone.Collection.extend({
my.Query = Backbone.Model.extend({ my.Query = Backbone.Model.extend({
defaults: { defaults: {
size: 100 size: 100
, offset: 0 , from: 0
} }
}); });

View File

@@ -186,7 +186,7 @@ my.QueryEditor = Backbone.View.extend({
<div class="pagination"> \ <div class="pagination"> \
<ul> \ <ul> \
<li class="prev action-pagination-update"><a>&laquo; back</a></li> \ <li class="prev action-pagination-update"><a>&laquo; back</a></li> \
<li class="active"><a><input name="offset" type="text" value="{{offset}}" /> &ndash; <input name="to" type="text" value="{{to}}" /> </a></li> \ <li class="active"><a><input name="from" type="text" value="{{from}}" /> &ndash; <input name="to" type="text" value="{{to}}" /> </a></li> \
<li class="next action-pagination-update"><a>next &raquo;</a></li> \ <li class="next action-pagination-update"><a>next &raquo;</a></li> \
</ul> \ </ul> \
</div> \ </div> \
@@ -207,24 +207,24 @@ my.QueryEditor = Backbone.View.extend({
}, },
onFormSubmit: function(e) { onFormSubmit: function(e) {
e.preventDefault(); e.preventDefault();
var newOffset = parseInt(this.el.find('input[name="offset"]').val()); var newFrom = parseInt(this.el.find('input[name="from"]').val());
var newSize = parseInt(this.el.find('input[name="to"]').val()) - newOffset; var newSize = parseInt(this.el.find('input[name="to"]').val()) - newFrom;
var query = this.el.find('.text-query').val(); var query = this.el.find('.text-query').val();
this.model.set({size: newSize, offset: newOffset, q: query}); this.model.set({size: newSize, from: newFrom, q: query});
}, },
onPaginationUpdate: function(e) { onPaginationUpdate: function(e) {
e.preventDefault(); e.preventDefault();
var $el = $(e.target); var $el = $(e.target);
if ($el.parent().hasClass('prev')) { if ($el.parent().hasClass('prev')) {
var newOffset = this.model.get('offset') - Math.max(0, this.model.get('size')); var newFrom = this.model.get('from') - Math.max(0, this.model.get('size'));
} else { } else {
var newOffset = this.model.get('offset') + this.model.get('size'); var newFrom = this.model.get('from') + this.model.get('size');
} }
this.model.set({offset: newOffset}); this.model.set({from: newFrom});
}, },
render: function() { render: function() {
var tmplData = this.model.toJSON(); var tmplData = this.model.toJSON();
tmplData.to = this.model.get('offset') + this.model.get('size'); tmplData.to = this.model.get('from') + this.model.get('size');
var templated = $.mustache(this.template, tmplData); var templated = $.mustache(this.template, tmplData);
this.el.html(templated); this.el.html(templated);
} }

View File

@@ -44,7 +44,7 @@ test('Memory Backend: query', function () {
var dataset = makeBackendDataset(); var dataset = makeBackendDataset();
var queryObj = { var queryObj = {
size: 4 size: 4
, offset: 2 , from: 2
}; };
dataset.query(queryObj).then(function(documentList) { dataset.query(queryObj).then(function(documentList) {
deepEqual(data.documents[2], documentList.models[0].toJSON()); deepEqual(data.documents[2], documentList.models[0].toJSON());