X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=main.js;h=88b3c58c985028736d5c244590d6f291d51421c1;hb=460011fa7341a9be7ef510c411d3ed73dfc953fa;hp=dc87c3306b3846f3312b9e820e9f254a91ba6788;hpb=bacedec1d692e640e9ac174b26ac87e50a6d203d;p=webchat%2FWebChat.git diff --git a/main.js b/main.js index dc87c33..88b3c58 100644 --- a/main.js +++ b/main.js @@ -47,10 +47,36 @@ app.configure("production", function(){ app.use(express.errorHandler()); }); -var server = http.createServer(app).listen(config.port); -console.log("Express server listening on port %d in %s mode", config.port, app.settings.env); +var async = require("async"); +var fs = require("fs"); -require("./chat")(app,server,express,sessionStore); - -if(config.enable_profile) - require("./profile")(app); +async.waterfall([ + function(next){ + fs.exists("inited",function(exists){ + next(null,exists); + }); + }, + function(exists,next){ + if(exists) + next(null); + else + fs.open("inited","a",function(err,fd){ + fs.closeSync(fd); + var init = require("./init"); + init(next); + }); + } + ],function(err){ + if(err != null) + { + console.log(err); + process.exit(); + } + var server = http.createServer(app).listen(config.port); + console.log("Express server listening on port %d in %s mode", config.port, app.settings.env); + + require("./chat")(app,server,express,sessionStore); + + if(config.enable_profile) + require("./profile")(app); + });