diff --git a/config/express.js b/config/express.js index 9a81a7e2b9..e69de29bb2 100755 --- a/config/express.js +++ b/config/express.js @@ -1,93 +0,0 @@ -/** - * Module dependencies. - */ -var express = require('express'), - mongoStore = require('connect-mongo')(express), - flash = require('connect-flash'), - helpers = require('view-helpers'), - config = require('./config'); - -module.exports = function(app, passport, db) { - app.set('showStackError', true); - - //Prettify HTML - app.locals.pretty = true; - - //Should be placed before express.static - app.use(express.compress({ - filter: function(req, res) { - return (/json|text|javascript|css/).test(res.getHeader('Content-Type')); - }, - level: 9 - })); - - //Setting the fav icon and static folder - app.use(express.favicon()); - app.use(express.static(config.root + '/public')); - - //Don't use logger for test env - if (process.env.NODE_ENV !== 'test') { - app.use(express.logger('dev')); - } - - //Set views path, template engine and default layout - app.set('views', config.root + '/app/views'); - app.set('view engine', 'jade'); - - //Enable jsonp - app.enable("jsonp callback"); - - app.configure(function() { - //cookieParser should be above session - app.use(express.cookieParser()); - - //bodyParser should be above methodOverride - app.use(express.bodyParser()); - app.use(express.methodOverride()); - - //express/mongo session storage - app.use(express.session({ - secret: 'MEAN', - store: new mongoStore({ - db: db.connection.db, - collection: 'sessions' - }) - })); - - //connect flash for flash messages - app.use(flash()); - - //dynamic helpers - app.use(helpers(config.app.name)); - - //use passport session - app.use(passport.initialize()); - app.use(passport.session()); - - //routes should be at the last - app.use(app.router); - - //Assume "not found" in the error msgs is a 404. this is somewhat silly, but valid, you can do whatever you like, set properties, use instanceof etc. - app.use(function(err, req, res, next) { - //Treat as 404 - if (~err.message.indexOf('not found')) return next(); - - //Log it - console.error(err.stack); - - //Error page - res.status(500).render('500', { - error: err.stack - }); - }); - - //Assume 404 since no middleware responded - app.use(function(req, res, next) { - res.status(404).render('404', { - url: req.originalUrl, - error: 'Not found' - }); - }); - - }); -}; diff --git a/gruntfile.js b/gruntfile.js index 2c41e8d626..8298976339 100755 --- a/gruntfile.js +++ b/gruntfile.js @@ -1,4 +1,4 @@ -module.exports = function(grunt) { +exports.exports = function(grunt) { // Project Configuration grunt.initConfig({ pkg: grunt.file.readJSON('package.json'), @@ -6,21 +6,21 @@ module.exports = function(grunt) { jade: { files: ['app/views/**'], options: { - livereload: true, - }, + livereload: true + } }, js: { files: ['public/js/**', 'app/**/*.js'], tasks: ['jshint'], options: { - livereload: true, - }, + livereload: true + } }, html: { files: ['public/views/**'], options: { - livereload: true, - }, + livereload: true + } }, css: { files: ['public/css/**'], diff --git a/server.js b/server.js index f1fb60e37b..bbb031acf6 100755 --- a/server.js +++ b/server.js @@ -1,8 +1,9 @@ -/** - * Module dependencies. - */ var express = require('express'), + mongoStore = require('connect-mongo')(express), fs = require('fs'), + flash = require('connect-flash'), + helpers = require('view-helpers'), + config = require('./config'), passport = require('passport'), logger = require('mean-logger'); @@ -43,8 +44,58 @@ require('./config/passport')(passport); var app = express(); -//express settings -require('./config/express')(app, passport, db); +/** + * Express Settings + */ +app.set('showStackError', true); +app.locals.pretty = true; +app.use(express.compress({ + filter: function(req, res) { + return (/json|text|javascript|css/).test(res.getHeader('Content-Type')); + }, + level: 9 +})); +app.use(express.favicon()); +app.use(express.static(config.root + '/public')); +app.set('views', config.root + '/app/views'); +app.set('view engine', 'jade'); +app.enable("jsonp callback"); +app.use(express.cookieParser()); +app.use(express.bodyParser()); +app.use(express.methodOverride()); +app.use(express.session({ + secret: '1337', + store: new mongoStore({ + db: db.connection.db, + collection: 'sessions' + }) +})); +app.use(flash()); +app.use(helpers(config.app.name)); +app.use(passport.initialize()); +app.use(passport.session()); +app.use(app.router); + +app.use(function(err, req, res, next) { + //Treat as 404 + if (~err.message.indexOf('not found')) return next(); + + //Log it + console.error(err.stack); + + //Error page + res.status(500).render('500', { + error: err.stack + }); +}); + +app.use(function(req, res, next) { + res.status(404).render('404', { + url: req.originalUrl, + error: 'Not found' + }); +}); + //Bootstrap routes require('./config/routes')(app, passport, auth);