fix breadcrumbs and home /api route not loading

v1.18.x
Baris Usakli 7 years ago
parent 6a623c30d7
commit 38e52a65be

@ -40,7 +40,7 @@ categoriesController.list = function (req, res, next) {
categories: categoryData,
};
if (req.path.startsWith('/api/categories') || req.path.startsWith('/categories')) {
if (req.originalUrl.startsWith(nconf.get('relative_path') + '/api/categories') || req.originalUrl.startsWith(nconf.get('relative_path') + '/categories')) {
data.breadcrumbs = helpers.buildBreadcrumbs([{ text: data.title }]);
}

@ -109,7 +109,7 @@ categoryController.get = function (req, res, callback) {
return helpers.redirect(res, categoryData.link);
}
buildBreadcrumbs(categoryData, next);
buildBreadcrumbs(req, categoryData, next);
},
function (categoryData, next) {
if (!categoryData.children.length) {
@ -148,7 +148,7 @@ categoryController.get = function (req, res, callback) {
], callback);
};
function buildBreadcrumbs(categoryData, callback) {
function buildBreadcrumbs(req, categoryData, callback) {
var breadcrumbs = [
{
text: categoryData.name,
@ -160,7 +160,9 @@ function buildBreadcrumbs(categoryData, callback) {
helpers.buildCategoryBreadcrumbs(categoryData.parentCid, next);
},
function (crumbs, next) {
if (req.originalUrl.startsWith(nconf.get('relative_path') + '/api/category') || req.originalUrl.startsWith(nconf.get('relative_path') + '/category')) {
categoryData.breadcrumbs = crumbs.concat(breadcrumbs);
}
next(null, categoryData);
},
], callback);

@ -37,7 +37,7 @@ pubsub.on('config:update', configUpdated);
configUpdated();
module.exports = function (req, res, next) {
if (req.path !== '/' && req.path !== '/api/') {
if (req.path !== '/' && req.path !== '/api/' && req.path !== '/api') {
return next();
}
@ -56,7 +56,7 @@ module.exports = function (req, res, next) {
});
}
req.url = req.path + route;
req.url = req.path + (!req.path.endsWith('/') ? '/' : '') + route;
next();
});
};

@ -52,7 +52,7 @@ popularController.get = function (req, res, next) {
term: term,
};
if (req.path.startsWith('/api/popular') || req.path.startsWith('/popular')) {
if (req.originalUrl.startsWith(nconf.get('relative_path') + '/api/popular') || req.originalUrl.startsWith(nconf.get('relative_path') + '/popular')) {
var breadcrumbs = [{ text: termToBreadcrumb[term] }];
if (req.params.term) {

@ -71,7 +71,7 @@ recentController.get = function (req, res, next) {
var pageCount = Math.max(1, Math.ceil(data.topicCount / settings.topicsPerPage));
data.pagination = pagination.create(page, pageCount, req.query);
if (req.path.startsWith('/api/recent') || req.path.startsWith('/recent')) {
if (req.originalUrl.startsWith(nconf.get('relative_path') + '/api/recent') || req.originalUrl.startsWith(nconf.get('relative_path') + '/recent')) {
data.breadcrumbs = helpers.buildBreadcrumbs([{ text: '[[recent:title]]' }]);
}

@ -64,8 +64,7 @@ unreadController.get = function (req, res, next) {
data.categories = results.watchedCategories.categories;
data.selectedCategory = results.watchedCategories.selectedCategory;
data.selectedCids = results.watchedCategories.selectedCids;
if (req.path.startsWith('/api/unread') || req.path.startsWith('/unread')) {
if (req.originalUrl.startsWith(nconf.get('relative_path') + '/api/unread') || req.originalUrl.startsWith(nconf.get('relative_path') + '/unread')) {
data.breadcrumbs = helpers.buildBreadcrumbs([{ text: '[[unread:title]]' }]);
}

Loading…
Cancel
Save