search newer/older than and better pagination

This commit is contained in:
barisusakli
2015-02-06 19:47:27 -05:00
parent 722b629572
commit 38dd3d4281
9 changed files with 229 additions and 60 deletions

View File

@@ -260,8 +260,7 @@ categoriesController.get = function(req, res, next) {
data.currentPage = page;
data['feeds:disableRSS'] = parseInt(meta.config['feeds:disableRSS'], 10) === 1;
data['rssFeedUrl'] = nconf.get('relative_path') + '/category/' + data.cid + '.rss';
pagination.create(data.currentPage, data.pageCount, data);
data.pagination = pagination.create(data.currentPage, data.pageCount);
data.pagination.rel.forEach(function(rel) {
res.locals.linkTags.push(rel);

View File

@@ -37,6 +37,7 @@ searchController.search = function(req, res, next) {
}
req.params.term = validator.escape(req.params.term);
var page = Math.max(1, parseInt(req.query.page, 10)) || 1;
search.search({
query: req.params.term,
@@ -46,18 +47,17 @@ searchController.search = function(req, res, next) {
searchChildren: req.query.searchChildren,
replies: req.query.replies,
repliesFilter: req.query.repliesFilter,
timeRange: req.query.timeRange,
timeFilter: req.query.timeFilter,
page: page,
uid: uid
}, function(err, results) {
if (err) {
return next(err);
}
var currentPage = Math.max(1, parseInt(req.query.page, 10)) || 1;
var pageCount = Math.max(1, Math.ceil(results.matchCount / 10));
var searchIn = req.query.in || 'posts';
var start = Math.max(0, (currentPage - 1)) * 10;
results[searchIn] = results[searchIn].slice(start, start + 10);
pagination.create(currentPage, pageCount, results, req.query);
var pageCount = Math.max(1, Math.ceil(results.matchCount / 10));
results.pagination = pagination.create(page, pageCount, req.query);
results.breadcrumbs = breadcrumbs;
results.categories = categories;

View File

@@ -256,15 +256,12 @@ topicsController.get = function(req, res, next) {
data['downvote:disabled'] = parseInt(meta.config['downvote:disabled'], 10) === 1;
data['feeds:disableRSS'] = parseInt(meta.config['feeds:disableRSS'], 10) === 1;
data['rssFeedUrl'] = nconf.get('relative_path') + '/topic/' + data.tid + '.rss';
topics.increaseViewCount(tid);
pagination.create(data.currentPage, data.pageCount, data);
data.pagination = pagination.create(data.currentPage, data.pageCount);
data.pagination.rel.forEach(function(rel) {
res.locals.linkTags.push(rel);
});
topics.increaseViewCount(tid);
res.render('topic', data);
});
};