You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
74 lines
2.1 KiB
74 lines
2.1 KiB
/*! @file |
|
|
|
@id $Id$ |
|
*/ |
|
// 1 2 3 4 5 6 7 8 |
|
// 45678901234567890123456789012345678901234567890123456789012345678901234567890 |
|
try { |
|
|
|
process.on('uncaughtException', function(e) { |
|
console.log("**** UNCAUGHT EXCEPTION ****"); |
|
console.log(e); |
|
console.log(e.stack); |
|
process.exit(1); |
|
}); |
|
|
|
/** |
|
* Module dependencies. |
|
*/ |
|
|
|
var express = require('express') |
|
, routes = require(__dirname+'/routes'); |
|
|
|
var app = express.createServer(); |
|
var io = require('socket.io').listen(app); |
|
var package = require(__dirname+'/package.json'); |
|
var config = require(package.path.config); |
|
var authentication = require('authentication.js')(config.restrict); |
|
var sockets = require(__dirname+'/sockets')(app, io, authentication); |
|
|
|
// Configuration |
|
process.argv.forEach(function(val, index) { |
|
if (index<2) {return} |
|
if (index!=2 || isNaN(val)) { |
|
console.log("**** ERROR: Unexpected Argument - allowed is only a port number"); |
|
process.exit(1); |
|
} |
|
config.port = parseInt(val); |
|
}); |
|
if (typeof config.port != 'number') { |
|
console.log("**** WARNING: no valid port given, defaults to 8888"); |
|
config.port = 8888; |
|
} |
|
|
|
app.configure(function(){ |
|
app.set('views', __dirname + '/views'); |
|
app.set('view engine', 'ejs'); |
|
app.use(express.bodyParser()); |
|
app.use(express.methodOverride()); |
|
app.use(require('stylus').middleware({ src: __dirname + '/public' })); |
|
app.use(app.router); |
|
app.use(express.static(__dirname + '/public')); |
|
}); |
|
|
|
app.configure('development', function(){ |
|
app.use(express.errorHandler({ dumpExceptions: true, showStack: true })); |
|
}); |
|
|
|
app.configure('production', function(){ |
|
app.use(express.errorHandler()); |
|
}); |
|
|
|
// Routes |
|
app.get('/', routes.index); |
|
|
|
app.listen(config.port, function() { |
|
console.log("Express server listening on port %d in %s mode", |
|
app.address().port, app.settings.env); |
|
}); |
|
} catch (e) { |
|
console.log("**** EXCEPTION ****"); |
|
console.log(e); |
|
console.log(e.stack); |
|
process.exit(1); |
|
}
|
|
|