Skip to content

Commit 7d67275

Browse files
[pr, merge, minors, travis] use node v0.10.x
2 parents 4ed0c6e + 3a50979 commit 7d67275

File tree

5 files changed

+28
-20
lines changed

5 files changed

+28
-20
lines changed

.travis.yml

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
language: node_js
22
node_js:
3-
- 0.8
3+
- 0.10
44

55
branches:
66
only:

README.md

+7-3
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
## Installation
77

88
```bash
9-
$ npm install mongoose-paginate
9+
npm install -S mongoose-paginate
1010
```
1111

1212
## Usage
@@ -21,7 +21,9 @@ $ npm install mongoose-paginate
2121
* paginating by second page, 10 items per page (10 results, page 2)
2222
*/
2323

24-
var mongoose = require('mongoose-paginate');
24+
var mongoosePaginate = require('mongoose-paginate');
25+
26+
MyModel.plugin(mongoosePaginate)
2527

2628
MyModel.paginate({}, 2, 10, function(error, pageCount, paginatedResults, itemCount) {
2729
if (error) {
@@ -44,7 +46,9 @@ MyModel.paginate({}, 2, 10, function(error, pageCount, paginatedResults, itemCou
4446
* paginating by second page, 10 items per page (10 results, page 2)
4547
*/
4648

47-
var mongoose = require('mongoose-paginate');
49+
var mongoosePaginate = require('mongoose-paginate');
50+
51+
MyModel.plugin(mongoosePaginate)
4852

4953
MyModel.paginate({}, 2, 10, function(error, pageCount, paginatedResults, itemCount) {
5054
if (error) {

lib/mongoose-paginate.js

+7-6
Original file line numberDiff line numberDiff line change
@@ -3,8 +3,7 @@
33
* @list dependencies
44
*/
55

6-
var async = require('async')
7-
, mongoose = require('mongoose');
6+
var async = require('async');
87

98
/*
109
* @method paginate
@@ -14,8 +13,8 @@ var async = require('async')
1413
* Extend Mongoose Models to paginate queries
1514
*/
1615

17-
mongoose.Model.paginate = function(q, pageNumber, resultsPerPage, callback, options) {
18-
var query, sortBy, skipFrom, columns, populate, model = this;
16+
function paginate(q, pageNumber, resultsPerPage, callback, options) {
17+
var model = this;
1918
options = options || {};
2019
columns = options.columns || null;
2120
sortBy = options.sortBy || {
@@ -47,6 +46,8 @@ mongoose.Model.paginate = function(q, pageNumber, resultsPerPage, callback, opti
4746
}
4847
callback(null, Math.ceil(data.count / resultsPerPage) || 1, data.results, data.count);
4948
});
50-
};
49+
}
5150

52-
module.exports = mongoose;
51+
module.exports = function(schema) {
52+
schema.statics.paginate = paginate;
53+
}

package.json

+5-5
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"author": "Edward Hotchkiss <edward@edwardhotchkiss.com>",
33
"name": "mongoose-paginate",
4-
"description": "Mongoose ORM (NodeJS/MongoDB) Document Query Pagination",
4+
"description": "Mongoose ORM (Node.js/MongoDB) Document Query Pagination",
55
"version": "2.3.0",
66
"contributors": [
77
{
@@ -30,11 +30,11 @@
3030
"populate"
3131
],
3232
"engines": {
33-
"node": ">=0.8.0"
33+
"node": ">=0.10.0"
3434
},
3535
"dependencies": {
36-
"async": ">=0.9.0",
37-
"mongoose": ">=3.8.8"
36+
"async": "^0.9.0",
37+
"mongoose": "^3.8.12"
3838
},
3939
"main": "./lib/mongoose-paginate",
4040
"licenses": [
@@ -47,6 +47,6 @@
4747
"test": "vows test/*.test.js --spec"
4848
},
4949
"devDependencies": {
50-
"vows": ">=0.7.0"
50+
"vows": "^0.7.0"
5151
}
5252
}

test/all.test.js

+8-5
Original file line numberDiff line numberDiff line change
@@ -3,11 +3,10 @@
33
* @list dependencies
44
*/
55

6-
var vows, assert, mongoose;
7-
8-
vows = require('vows');
9-
assert = require('assert');
10-
mongoose = require('../lib/mongoose-paginate');
6+
var vows = require('vows')
7+
, assert = require('assert')
8+
, mongoose = require('mongoose')
9+
, mongoosePaginate = require('../lib/mongoose-paginate');
1110

1211
/*
1312
* connect to MongoDB with Mongoose
@@ -26,6 +25,8 @@ var TestSchema = new mongoose.Schema({
2625
child : { type: mongoose.Schema.ObjectId, ref: 'TestSubEntries' }
2726
});
2827

28+
TestSchema.plugin(mongoosePaginate);
29+
2930
var TestEntry = mongoose.model('TestEntries', TestSchema);
3031

3132
var TestSubSchema = new mongoose.Schema({
@@ -34,6 +35,8 @@ var TestSubSchema = new mongoose.Schema({
3435
date : Date
3536
});
3637

38+
TestSubSchema.plugin(mongoosePaginate);
39+
3740
var TestSubEntry = mongoose.model('TestSubEntries', TestSubSchema);
3841

3942
function setup(callback) {

0 commit comments

Comments
 (0)