30 lines
593 B
JavaScript
30 lines
593 B
JavaScript
"use strict";
|
|
|
|
function getPagination( query ){
|
|
let limit = {
|
|
page : 0,
|
|
elements : 10
|
|
};
|
|
|
|
if( query.page ){
|
|
limit.page = parseInt( query.page ) || 0;
|
|
}
|
|
if( query.elements ){
|
|
limit.elements = parseInt( query.elements ) || 10;
|
|
}
|
|
return limit;
|
|
}
|
|
|
|
async function queryPage( page , elements , model ){
|
|
const skip = elements * page;
|
|
const total = await model.count();
|
|
const list = await model.find( {} , null, { skip : skip } );
|
|
return {
|
|
total : total,
|
|
limit : elements,
|
|
skip : skip,
|
|
data : list
|
|
}
|
|
}
|
|
|
|
module.exports = { getPagination , queryPage }; |