Use constants and CWD-independent paths for resource directories.
This commit is contained in:
parent
c3acdbe329
commit
53549b7422
|
@ -32,6 +32,10 @@ var gzip = require('gzip');
|
|||
var server = require('../server');
|
||||
var os = require('os');
|
||||
|
||||
var ROOT_DIR = path.normalize(__dirname + "/../" );
|
||||
var JS_DIR = ROOT_DIR + '../static/js/';
|
||||
var CSS_DIR = ROOT_DIR + '../static/css/';
|
||||
var CACHE_DIR = ROOT_DIR + '../var/';
|
||||
var TAR_PATH = path.join(__dirname, 'tar.json');
|
||||
var tar = JSON.parse(fs.readFileSync(TAR_PATH, 'utf8'));
|
||||
|
||||
|
@ -52,8 +56,6 @@ exports.minifyJS = function(req, res, next)
|
|||
return next();
|
||||
}
|
||||
|
||||
var rootPath = path.normalize(__dirname + "/../../" );
|
||||
|
||||
res.header("Content-Type","text/javascript");
|
||||
|
||||
//minifying is enabled
|
||||
|
@ -67,7 +69,7 @@ exports.minifyJS = function(req, res, next)
|
|||
//find out the highest modification date
|
||||
function(callback)
|
||||
{
|
||||
var folders2check = [rootPath + "static/css", rootPath + "static/js"];
|
||||
var folders2check = [CSS_DIR, JS_DIR];
|
||||
|
||||
//go trough this two folders
|
||||
async.forEach(folders2check, function(path, callback)
|
||||
|
@ -106,7 +108,7 @@ exports.minifyJS = function(req, res, next)
|
|||
function(callback)
|
||||
{
|
||||
//check the modification time of the minified js
|
||||
fs.stat(rootPath + "var/minified_" + jsFilename, function(err, stats)
|
||||
fs.stat(CACHE_DIR + "/minified_" + jsFilename, function(err, stats)
|
||||
{
|
||||
if(err && err.code != "ENOENT")
|
||||
{
|
||||
|
@ -131,7 +133,7 @@ exports.minifyJS = function(req, res, next)
|
|||
{
|
||||
async.forEach(jsFiles, function (item, callback)
|
||||
{
|
||||
fs.readFile(rootPath + "static/js/" + item, "utf-8", function(err, data)
|
||||
fs.readFile(JS_DIR + item, "utf-8", function(err, data)
|
||||
{
|
||||
if(ERR(err, callback)) return;
|
||||
fileValues[item] = data;
|
||||
|
@ -160,7 +162,7 @@ exports.minifyJS = function(req, res, next)
|
|||
var type = item.match(/INCLUDE_[A-Z]+/g)[0].substr("INCLUDE_".length);
|
||||
|
||||
//read the included file
|
||||
fs.readFile(filename, "utf-8", function(err, data)
|
||||
fs.readFile(ROOT_DIR + filename, "utf-8", function(err, data)
|
||||
{
|
||||
if(ERR(err, callback)) return;
|
||||
|
||||
|
@ -209,7 +211,7 @@ exports.minifyJS = function(req, res, next)
|
|||
//write the results plain in a file
|
||||
function(callback)
|
||||
{
|
||||
fs.writeFile(rootPath + "var/minified_" + jsFilename, result, "utf8", callback);
|
||||
fs.writeFile(CACHE_DIR + "minified_" + jsFilename, result, "utf8", callback);
|
||||
},
|
||||
//write the results compressed in a file
|
||||
function(callback)
|
||||
|
@ -223,7 +225,7 @@ exports.minifyJS = function(req, res, next)
|
|||
|
||||
if(ERR(err, callback)) return;
|
||||
|
||||
fs.writeFile(rootPath + "var/minified_" + jsFilename + ".gz", compressedResult, callback);
|
||||
fs.writeFile(CACHE_DIR + "minified_" + jsFilename + ".gz", compressedResult, callback);
|
||||
});
|
||||
}
|
||||
//skip this step on windows
|
||||
|
@ -247,12 +249,12 @@ exports.minifyJS = function(req, res, next)
|
|||
var pathStr;
|
||||
if(gzipSupport && os.type().indexOf("Windows") == -1)
|
||||
{
|
||||
pathStr = path.normalize(rootPath + "var/minified_" + jsFilename + ".gz");
|
||||
pathStr = path.normalize(CACHE_DIR + "minified_" + jsFilename + ".gz");
|
||||
res.header('Content-Encoding', 'gzip');
|
||||
}
|
||||
else
|
||||
{
|
||||
pathStr = path.normalize(rootPath + "var/minified_" + jsFilename );
|
||||
pathStr = path.normalize(CACHE_DIR + "minified_" + jsFilename );
|
||||
}
|
||||
|
||||
res.sendfile(pathStr, { maxAge: server.maxAge });
|
||||
|
@ -266,7 +268,7 @@ exports.minifyJS = function(req, res, next)
|
|||
//read all js files
|
||||
async.forEach(jsFiles, function (item, callback)
|
||||
{
|
||||
fs.readFile(rootPath + "static/js/" + item, "utf-8", function(err, data)
|
||||
fs.readFile(JS_DIR + item, "utf-8", function(err, data)
|
||||
{
|
||||
if(ERR(err, callback)) return;
|
||||
fileValues[item] = data;
|
||||
|
|
Loading…
Reference in New Issue