[#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:
parent
b4c729b7bb
commit
bd6123403e
@ -80,7 +80,7 @@ this.recline.Backend = this.recline.Backend || {};
|
||||
},
|
||||
query: function(model, queryObj) {
|
||||
var numRows = queryObj.size;
|
||||
var start = queryObj.offset;
|
||||
var start = queryObj.from;
|
||||
var dfd = $.Deferred();
|
||||
results = this.datasets[model.id].documents;
|
||||
// not complete sorting!
|
||||
|
||||
@ -40,7 +40,7 @@ this.recline.Backend = this.recline.Backend || {};
|
||||
var base = model.get('webstore_url');
|
||||
var data = {
|
||||
_limit: queryObj.size
|
||||
, _offset: queryObj.offset
|
||||
, _offset: queryObj.from
|
||||
};
|
||||
var jqxhr = $.ajax({
|
||||
url: base + '.json',
|
||||
|
||||
@ -116,7 +116,7 @@ my.FieldList = Backbone.Collection.extend({
|
||||
my.Query = Backbone.Model.extend({
|
||||
defaults: {
|
||||
size: 100
|
||||
, offset: 0
|
||||
, from: 0
|
||||
}
|
||||
});
|
||||
|
||||
|
||||
16
src/view.js
16
src/view.js
@ -186,7 +186,7 @@ my.QueryEditor = Backbone.View.extend({
|
||||
<div class="pagination"> \
|
||||
<ul> \
|
||||
<li class="prev action-pagination-update"><a>« back</a></li> \
|
||||
<li class="active"><a><input name="offset" type="text" value="{{offset}}" /> – <input name="to" type="text" value="{{to}}" /> </a></li> \
|
||||
<li class="active"><a><input name="from" type="text" value="{{from}}" /> – <input name="to" type="text" value="{{to}}" /> </a></li> \
|
||||
<li class="next action-pagination-update"><a>next »</a></li> \
|
||||
</ul> \
|
||||
</div> \
|
||||
@ -207,24 +207,24 @@ my.QueryEditor = Backbone.View.extend({
|
||||
},
|
||||
onFormSubmit: function(e) {
|
||||
e.preventDefault();
|
||||
var newOffset = parseInt(this.el.find('input[name="offset"]').val());
|
||||
var newSize = parseInt(this.el.find('input[name="to"]').val()) - newOffset;
|
||||
var newFrom = parseInt(this.el.find('input[name="from"]').val());
|
||||
var newSize = parseInt(this.el.find('input[name="to"]').val()) - newFrom;
|
||||
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) {
|
||||
e.preventDefault();
|
||||
var $el = $(e.target);
|
||||
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 {
|
||||
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() {
|
||||
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);
|
||||
this.el.html(templated);
|
||||
}
|
||||
|
||||
@ -44,7 +44,7 @@ test('Memory Backend: query', function () {
|
||||
var dataset = makeBackendDataset();
|
||||
var queryObj = {
|
||||
size: 4
|
||||
, offset: 2
|
||||
, from: 2
|
||||
};
|
||||
dataset.query(queryObj).then(function(documentList) {
|
||||
deepEqual(data.documents[2], documentList.models[0].toJSON());
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user