From 33ffda19b1bf793a46a1b7e3e13c33778c7b06f7 Mon Sep 17 00:00:00 2001 From: Azul Date: Thu, 5 Jan 2012 11:24:33 +0100 Subject: [PATCH 1/3] Load the settings even when not starting in node path --- node/utils/Settings.js | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/node/utils/Settings.js b/node/utils/Settings.js index 7ef809c91..fa9deaf25 100644 --- a/node/utils/Settings.js +++ b/node/utils/Settings.js @@ -20,6 +20,7 @@ */ var fs = require("fs"); +var path = require('path'); /** * The IP ep-lite should listen to @@ -74,7 +75,8 @@ exports.loglevel = "INFO"; exports.httpAuth = null; //read the settings sync -var settingsStr = fs.readFileSync("../settings.json").toString(); +var settingsPath = path.normalize(__dirname + "/../../"); +var settingsStr = fs.readFileSync(settingsPath + "settings.json").toString(); //remove all comments settingsStr = settingsStr.replace(/\*([^*]|[\r\n]|(\*+([^*/]|[\r\n])))*\*+/gm,"").replace(/#.*/g,"").replace(/\/\/.*/g,""); From b1faa8e0f815e0882d2865cf30cc5de2d923dfad Mon Sep 17 00:00:00 2001 From: Azul Date: Thu, 5 Jan 2012 11:31:39 +0100 Subject: [PATCH 2/3] Make sure Minify.js finds its files --- node/utils/Minify.js | 20 +++++++++++--------- 1 file changed, 11 insertions(+), 9 deletions(-) diff --git a/node/utils/Minify.js b/node/utils/Minify.js index fd1dd0793..7771fca36 100644 --- a/node/utils/Minify.js +++ b/node/utils/Minify.js @@ -58,7 +58,9 @@ exports.minifyJS = function(req, res, jsFilename) { throw new Error("there is no profile for creating " + name); } - + + var rootPath = path.normalize(__dirname + "/../../" ); + //minifying is enabled if(settings.minify) { @@ -70,7 +72,7 @@ exports.minifyJS = function(req, res, jsFilename) //find out the highest modification date function(callback) { - var folders2check = ["../static/css","../static/js"]; + var folders2check = [rootPath + "static/css", rootPath + "static/js"]; //go trough this two folders async.forEach(folders2check, function(path, callback) @@ -109,7 +111,7 @@ exports.minifyJS = function(req, res, jsFilename) function(callback) { //check the modification time of the minified js - fs.stat("../var/minified_" + jsFilename, function(err, stats) + fs.stat(rootPath + "var/minified_" + jsFilename, function(err, stats) { if(err && err.code != "ENOENT") { @@ -134,7 +136,7 @@ exports.minifyJS = function(req, res, jsFilename) { async.forEach(jsFiles, function (item, callback) { - fs.readFile("../static/js/" + item, "utf-8", function(err, data) + fs.readFile(rootPath + "static/js/" + item, "utf-8", function(err, data) { if(ERR(err, callback)) return; fileValues[item] = data; @@ -228,7 +230,7 @@ exports.minifyJS = function(req, res, jsFilename) //write the results plain in a file function(callback) { - fs.writeFile("../var/minified_" + jsFilename, result, "utf8", callback); + fs.writeFile(rootPath + "var/minified_" + jsFilename, result, "utf8", callback); }, //write the results compressed in a file function(callback) @@ -242,7 +244,7 @@ exports.minifyJS = function(req, res, jsFilename) if(ERR(err, callback)) return; - fs.writeFile("../var/minified_" + jsFilename + ".gz", compressedResult, callback); + fs.writeFile(rootPath + "var/minified_" + jsFilename + ".gz", compressedResult, callback); }); } //skip this step on windows @@ -266,12 +268,12 @@ exports.minifyJS = function(req, res, jsFilename) var pathStr; if(gzipSupport && os.type().indexOf("Windows") == -1) { - pathStr = path.normalize(__dirname + "/../../var/minified_" + jsFilename + ".gz"); + pathStr = path.normalize(rootPath + "var/minified_" + jsFilename + ".gz"); res.header('Content-Encoding', 'gzip'); } else { - pathStr = path.normalize(__dirname + "/../../var/minified_" + jsFilename ); + pathStr = path.normalize(rootPath + "var/minified_" + jsFilename ); } res.sendfile(pathStr, { maxAge: server.maxAge }); @@ -285,7 +287,7 @@ exports.minifyJS = function(req, res, jsFilename) //read all js files async.forEach(jsFiles, function (item, callback) { - fs.readFile("../static/js/" + item, "utf-8", function(err, data) + fs.readFile(rootPath + "static/js/" + item, "utf-8", function(err, data) { if(ERR(err, callback)) return; fileValues[item] = data; From 7dcc7be8e0de5d177faaae6ed7540efca6c015ba Mon Sep 17 00:00:00 2001 From: Azul Date: Thu, 5 Jan 2012 11:35:40 +0100 Subject: [PATCH 3/3] get the proper git revision even when not started from node dir --- node/server.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/node/server.js b/node/server.js index 461e82693..8c70e075d 100644 --- a/node/server.js +++ b/node/server.js @@ -45,8 +45,9 @@ var socketIORouter; var version = ""; try { - var ref = fs.readFileSync("../.git/HEAD", "utf-8"); - var refPath = "../.git/" + ref.substring(5, ref.indexOf("\n")); + var rootPath = path.normalize(__dirname + "/../") + var ref = fs.readFileSync(rootPath + ".git/HEAD", "utf-8"); + var refPath = rootPath + ".git/" + ref.substring(5, ref.indexOf("\n")); version = fs.readFileSync(refPath, "utf-8"); version = version.substring(0, 7); console.log("Your Etherpad Lite git version is " + version);