/** * Allow code that lives on the server to resolve paths like * require("plugins/c9.language/language"), * just like on the client. */ var modules = require("module"); var oldResolve = modules._resolveFilename; var extraPaths = [ __dirname + "/../../" ]; modules._resolveFilename = function(request, paths) { // Ensure client extensions can be loaded request = request.replace(/^lib\//, "node_modules/"); // Add the extra paths extraPaths.forEach(function(p) { if(paths.paths.indexOf(p) === -1) paths.paths.push(p); }); return oldResolve(request, paths); };