29 lines
835 B
JavaScript
29 lines
835 B
JavaScript
'use strict';
|
|
|
|
module.exports = function setLayerStats (pgConnection, statsBackend) {
|
|
return function setLayerStatsMiddleware(req, res, next) {
|
|
const { user, mapConfig } = res.locals;
|
|
const layergroup = res.body;
|
|
|
|
pgConnection.getConnection(user, (err, connection) => {
|
|
if (err) {
|
|
return next(err);
|
|
}
|
|
|
|
statsBackend.getStats(mapConfig, connection, function(err, layersStats) {
|
|
if (err) {
|
|
return next(err);
|
|
}
|
|
|
|
if (layersStats.length > 0) {
|
|
layergroup.metadata.layers.forEach(function (layer, index) {
|
|
layer.meta.stats = layersStats[index];
|
|
});
|
|
}
|
|
|
|
next();
|
|
});
|
|
});
|
|
};
|
|
};
|