Files
NodeBB/src/controllers/sitemap.js

69 lines
1.4 KiB
JavaScript
Raw Normal View History

2016-08-12 14:11:40 +03:00
'use strict';
var sitemap = require('../sitemap');
var meta = require('../meta');
var sitemapController = {};
sitemapController.render = function (req, res, next) {
sitemap.render(function (err, tplData) {
2016-08-12 14:11:40 +03:00
if (err) {
return next(err);
}
2016-10-07 13:03:46 +03:00
req.app.render('sitemap', tplData, function (err, xml) {
2016-08-12 14:11:40 +03:00
if (err) {
return next(err);
}
res.header('Content-Type', 'application/xml');
res.send(xml);
});
});
};
sitemapController.getPages = function (req, res, next) {
2016-08-12 14:11:40 +03:00
if (parseInt(meta.config['feeds:disableSitemap'], 10) === 1) {
return next();
}
sitemap.getPages(function (err, xml) {
2016-08-12 14:11:40 +03:00
if (err) {
return next(err);
}
res.header('Content-Type', 'application/xml');
res.send(xml);
});
};
sitemapController.getCategories = function (req, res, next) {
2016-08-12 14:11:40 +03:00
if (parseInt(meta.config['feeds:disableSitemap'], 10) === 1) {
return next();
}
sitemap.getCategories(function (err, xml) {
2016-08-12 14:11:40 +03:00
if (err) {
return next(err);
}
res.header('Content-Type', 'application/xml');
res.send(xml);
});
};
sitemapController.getTopicPage = function (req, res, next) {
2016-08-12 14:11:40 +03:00
if (parseInt(meta.config['feeds:disableSitemap'], 10) === 1) {
return next();
}
sitemap.getTopicPage(parseInt(req.params[0], 10), function (err, xml) {
2016-08-12 14:11:40 +03:00
if (err) {
return next(err);
} else if (!xml) {
return next();
}
res.header('Content-Type', 'application/xml');
res.send(xml);
});
};
2017-02-18 02:30:48 -07:00
module.exports = sitemapController;