relative path fix
parent
3b1c1d2cfd
commit
bec688cea0
@ -1,41 +1,31 @@
|
||||
"use strict";
|
||||
|
||||
var _ = require('underscore'),
|
||||
nconf = require('nconf'),
|
||||
path = require('path'),
|
||||
fs = require('fs'),
|
||||
validator = require('validator'),
|
||||
async = require('async'),
|
||||
winston = require('winston'),
|
||||
|
||||
plugins = require('../plugins'),
|
||||
helpers = require('../controllers/helpers');
|
||||
var _ = require('underscore');
|
||||
var path = require('path');
|
||||
|
||||
var plugins = require('../plugins');
|
||||
|
||||
module.exports = function(app, middleware, controllers) {
|
||||
// Static Assets
|
||||
app.get('/plugins/:id/*', middleware.addExpiresHeaders, function(req, res, next) {
|
||||
var relPath = req._parsedUrl.pathname.replace('/plugins/', ''),
|
||||
matches = _.map(plugins.staticDirs, function(realPath, mappedPath) {
|
||||
if (relPath.match(mappedPath)) {
|
||||
return mappedPath;
|
||||
} else {
|
||||
return null;
|
||||
|
||||
var relPath = req._parsedUrl.pathname.replace('/plugins/', '');
|
||||
|
||||
var matches = _.map(plugins.staticDirs, function(realPath, mappedPath) {
|
||||
if (relPath.match(mappedPath)) {
|
||||
var pathToFile = path.join(plugins.staticDirs[mappedPath], decodeURIComponent(relPath.slice(mappedPath.length)));
|
||||
if (pathToFile.startsWith(plugins.staticDirs[mappedPath])) {
|
||||
return pathToFile;
|
||||
}
|
||||
}).filter(Boolean);
|
||||
}
|
||||
|
||||
if (!matches) {
|
||||
return null;
|
||||
}).filter(Boolean);
|
||||
|
||||
if (!matches || !matches.length) {
|
||||
return next();
|
||||
}
|
||||
|
||||
matches = matches.map(function(mappedPath) {
|
||||
return path.join(plugins.staticDirs[mappedPath], decodeURIComponent(relPath.slice(mappedPath.length)));
|
||||
});
|
||||
|
||||
if (matches.length) {
|
||||
res.sendFile(matches[0]);
|
||||
} else {
|
||||
next();
|
||||
}
|
||||
res.sendFile(matches[0]);
|
||||
});
|
||||
};
|
||||
};
|
Loading…
Reference in New Issue