Example #1
0
/**
 * Setup authentication using Passport.
 */
luzAuth(passport);

/**
 * Express starting up.
 */
var app = express();

/**
 * Internal Express middleware setup
 */
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');
app.use(favicon("./public/brackets/images/favicon.png"));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded());
app.use(multer({ dest: './uploads/'}))
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));
app.use(expressLayouts);
app.use(session({secret: 'logos no node!!'}));
app.use(passport.initialize());
app.use(passport.session());


/**
 * Custom middleware setup
 */
Example #2
0
var bodyParser = require('body-parser');

var routes = require('./routes/index');
var users = require('./routes/users');
var form = require('./routes/form');
var user_form = require('./routes/user_form');
var submit_form = require('./routes/submit_form');

var app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
app.engine('.html', require('ejs').__express);

app.use(favicon());
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded());
app.use(cookieParser());
app.use('/public', express.static(path.join(__dirname, 'public')));


//Basic page with email log-in
app.use('/', routes);
app.use('/form', form);
//app.use('/create', form);
app.use('/users', users);

//Page with usher form
app.use('/user_form', user_form);
Example #3
0
  app.use(logger({
    stream: {
      write: function (message, encoding) {
        winston.info(message);
      }
    }
  }));
}

// port to listen on
app.set('port', config.port);

// Favicon - This middleware will come very early in your stack
// (maybe even first) to avoid processing any other middleware
// if we already know the request is for favicon.ico
app.use(favicon(__dirname + '/public/favicon.ico'));

// Setup the view engine (jade)
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');

// Enable If behind nginx!
// app.enable('trust proxy');

// Compress response data with gzip / deflate.
// This middleware should be placed "high" within
// the stack to ensure all responses are compressed.
app.use(compress());

// Body parsing middleware supporting
// JSON, urlencoded, and multipart requests.
Example #4
0
    return options.inverse(this);
  }
});


/**
 * Express configuration.
 */
app.set('port', '3000');
app.engine('hbs', hbs.express3());
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'hbs');

app
  .use(compress())
  .use(favicon())
  .use(logger('dev'))
  .use(bodyParser())
  .use(methodOverride())
  .use(express.static(path.join(__dirname, 'public')))
  .use(routes.indexRouter)
  .use(function (req, res) {
    res.status(404).render('404', {title: 'Not Found :('});
  });

if (app.get('env') === 'development') {
  app.use(errorHandler());
}

app.listen(app.get('port'), function () {
  console.log('Express server listening on port ' + app.get('port'));
Example #5
0
module.exports = function (app, config, passport, routes) {

  app.set('showStackError', true)
  // should be placed before express.static
  
  app.use(compression({
    filter: function (req, res) {
      return /json|text|javascript|css/.test(res.getHeader('Content-Type'));
    },
    level: 9
  }))
  
  app.use(favicon(__dirname + '/../public/img/icons/favicon.ico'))
  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")


  // dynamic helpers
  app.use(helpers(config.app.name))

  // cookieParser should be above session
  app.use(cookieParser())

  // bodyParser should be above methodOverride
  app.use(bodyParser())
  app.use(methodOverride())

  // express/mongo session storage
  app.use(session({
    secret: 'ngFantasyFootball',
    store: new MemoryStore({
      reapInterval: 1000 * 60
    })
  }))

  // connect flash for flash messages
  app.use(flash())

  // use passport session
  app.use(passport.initialize())
  app.use(passport.session())

  // routes should be at the last
  routes();

  // 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' })
  })
}
Example #6
0
var path = require('path');
var favicon = require('static-favicon'); 
var logger = require('morgan');
var cookieParser = require('cookie-parser');
/*post数据获取模块*/
var bodyParser = require('body-parser');
var routes = require('./routes/index');
var users = require('./routes/users');

var app = express();

// 模板引擎安装
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');

app.use(favicon(path.join(__dirname, 'public/images/favicon.ico')));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded());

app.use(cookieParser());

/*静态服务*/
app.use(express.static(path.join(__dirname, 'public')));

/*用户菜单*/
app.locals.nav = [
    {name: '首页', url: '/'},
    {name: '全部课程', url: '/courses'},
    {name: '师资力量', url: '/teachers'},
    {name: '课程安排', url: '/schedule'},
Example #7
0
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var http = require('http');
var mongoose = require('mongoose');

// set routes
var routes = require('./routes/index');
var settings = require('./settings');

var app = express();

// view engine setup
app.set('view engine', 'ejs');
app.set('views', path.join(__dirname, 'views'));
//app.use(favicon());//使用默认的图标
app.use(favicon(__dirname, 'public/img/favicon.ico'));
app.use(logger('dev'));//在终端显示简单的日志
app.use(bodyParser.json());
app.use(bodyParser.urlencoded());
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));

app.use('/', routes);

/// catch 404 and forward to error handler
app.use(function(req, res, next) {
    var err = new Error('Not Found');
    err.status = 404;
    next(err);
});
Example #8
0
var favicon = require('static-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');
var config = require('./config');
var mongoose = require('mongoose');
// Connect to DB
mongoose.connect(config.db.host + ':' + config.db.port + '/' + config.db.name);

var app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');

app.use(favicon(path.join(__dirname, 'public', 'favicon.ico')));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded());
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public')));

// Configuring Passport
var passport = require('passport');
var expressSession = require('express-session');
// TODO - Why Do we need this key ?
app.use(expressSession({secret: 'das33cr3tz'}));
app.use(passport.initialize());
app.use(passport.session());

 // Using the flash middleware provided by connect-flash to store messages in session
module.exports = function (app, config, passport) {

  app.set('showStackError', 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
  // }))

  app.use(favicon());
  app.use(express.static(config.root + '/public'))

  // Logging
  if (env !== 'test') app.use(logger('dev'));

  // set views path, template engine and default layout
  app.set('views', config.root + '/views');
  app.set('view engine', 'ejs');

  // expose package.json to views
  app.use(function (req, res, next) {
    res.locals.pkg = pkg
    next()
  })

  // cookieParser should be above session
  app.use(cookieParser());

  // bodyParser
  app.use(bodyParser.json());
  app.use(bodyParser.urlencoded());
  app.use(multer({ dest: config.root + '/uploads' }));

  // expresssession storage
  app.use(session({ 
    store: new mongoStore({
        url: config.db,
        collection : 'sessions'
      }),
    secret: pkg.name, 
    resave: true, 
    saveUninitialized: true
  }));

  // use passport session
  app.use(passport.initialize());
  app.use(passport.session());

  // connect flash for flash messages - should be declared after sessions
  app.use(flash());

  // should be declared after session and flash
  // app.use(helpers(pkg.name))

  // adds CSRF support
  // if (process.env.NODE_ENV !== 'test') {
  //   app.use(express.csrf())

  //   // This could be moved to view-helpers :-)
  //   app.use(function(req, res, next){
  //     res.locals.csrf_token = req.csrfToken()
  //     next()
  //   })
  // }

  // Add user to all renders
  app.use(function(req, res, next){
    res.locals.user = req.user;
    // res.locals.message = [''];
    res.locals.message = { 
      'info': req.flash('info'),
      'error': req.flash('error')
    };
    next();
  });

  // Bootstrap routes
  require('./routes')(app, passport);

  /// catch 404 and forward to error handler
  app.use(function(req, res, next) {
      var err = new Error('Not Found');
      err.status = 404;
      next(err);
  });

  /// error handlers

  // development error handler
  // will print stacktrace
  if (app.get('env') === 'development') {
      app.use(function(err, req, res, next) {
          res.status(err.status || 500);
          res.render('error', {
              message: err.message,
              error: err,
              user: req.user
          });
      });
  }

  // production error handler
  // no stacktraces leaked to user
  app.use(function(err, req, res, next) {
      res.status(err.status || 500);
      res.render('error', {
          message: err.message,
          error: {},
          user: req.user
      });
  });

  // // 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
  //     && (~err.message.indexOf('not found')
  //     || (~err.message.indexOf('Cast to ObjectId failed')))) {
  //     return next()
  //   }

  //   // log it
  //   // send emails if you want
  //   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'
  //   })
  // })
}
Example #10
0
module.exports = function(app) {
  var env = app.get('env');

  if ('development' === env) {
    app.use(require('connect-livereload')());

    // Disable caching of scripts for easier testing
    app.use(function noCache(req, res, next) {
      if (req.url.indexOf('/scripts/') === 0) {
        res.header('Cache-Control', 'no-cache, no-store, must-revalidate');
        res.header('Pragma', 'no-cache');
        res.header('Expires', 0);
      }
      next();
    });

    app.use(express.static(path.join(config.root, '.tmp')));
    app.use(express.static(path.join(config.root, 'app')));
    app.set('views', config.root + '/app/views');
  }

  if ('production' === env) {
    app.use(compression());
    app.use(favicon(path.join(config.root, 'public', 'favicon.ico')));
    app.use(express.static(path.join(config.root, 'public')));
    app.set('views', config.root + '/views');
  }

  app.engine('html', require('ejs').renderFile);
  app.set('view engine', 'html');
  app.use(morgan('dev'));
  app.use(bodyParser());
  app.use(methodOverride());
  app.use(cookieParser());

  app.use(device.capture());

  app.use(function (req, res, next) {
    var host = req.headers.host
    if (host !== 'strategist.dev') {
      host = 'www.mimejortactica.cl'
    };
    global.host = req.protocol+'://'+host;
    next();
  });

  // Persist sessions with mongoStore
  // key: 'sid', cookie: { secure: true },
  app.use(session({
    secret: 'angular-fullstack secret',
    store: new mongoStore({
      url: config.mongo.uri,
      collection: 'sessions'
    }, function () {
      console.log('db connection open');
    })
  }));

  // Use passport session
  app.use(passport.initialize());
  app.use(passport.session());

  // Error handler - has to be last
  if ('development' === app.get('env')) {
    app.use(errorHandler());
  }
};
Example #11
0
    multer = require('multer');

console.log('***************************');
console.log('time: ', new Date());
console.log('dirname:', __dirname);

var server = express();

server.express = express;


server.set('views', path.join(__dirname, '../views'));
server.set('view engine', 'ejs');


server.use(favicon());
server.use(logger('dev'));
server.use(bodyParser.json());
server.use(bodyParser.urlencoded());
server.use(cookieParser());
server.use(multer({
    dest: './uploads/',
    rename: function(fieldname, filename) {
        return filename.replace(/\W+/g, '-').toLowerCase() + Date.now();
    }
}));

server.use(cors());
server.use(express.static(__dirname + '/../public'));

server.findPort = function getPort() {
Example #12
0
var express = require('express');
var path = require('path');
var favicon = require('static-favicon');
var logger = require('morgan');
var cookieParser = require('cookie-parser');
var bodyParser = require('body-parser');

var routes = require('./routes/index');

var app = express();

// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'ejs');

app.use(favicon(path.join(__dirname, '/public/img/favicon.ico')));
app.use(logger('dev'));
app.use(bodyParser.json());
app.use(bodyParser.urlencoded());
app.use(cookieParser());
app.use(express.static(path.join(__dirname, 'public'), {maxAge : 86400000}));

app.use('/', routes);

/// catch 404 and forward to error handler
app.use(function (req, res, next) {
    var err = new Error('Not Found');
    err.status = 404;
    next(err);
});
Example #13
0
setupMiddleware = function (server) {
    var logging = config.logging,
        subdir = config.paths.subdir,
        corePath = config.paths.corePath,
        oauthServer = oauth2orize.createServer();

    // silence JSHint without disabling unused check for the whole file
    authStrategies = authStrategies;

    // Cache express server instance
    expressServer = server;
    middleware.cacheServer(expressServer);
    middleware.cacheOauthServer(oauthServer);
    oauth.init(oauthServer, middleware.resetSpamCounter);

    // Make sure 'req.secure' is valid for proxied requests
    // (X-Forwarded-Proto header will be checked, if present)
    expressServer.enable('trust proxy');

    // Logging configuration
    if (logging !== false) {
        if (expressServer.get('env') !== 'development') {
            expressServer.use(logger(logging || {}));
        } else {
            expressServer.use(logger(logging || 'dev'));
        }
    }

    // Favicon
    expressServer.use(subdir, favicon(corePath + '/shared/favicon.ico'));

    // Static assets
    expressServer.use(subdir + '/shared', express['static'](path.join(corePath, '/shared'), {maxAge: utils.ONE_HOUR_MS}));
    expressServer.use(subdir + '/content/images', storage.get_storage().serve());
    expressServer.use(subdir + '/ghost/scripts', express['static'](path.join(corePath, '/built/scripts'), {maxAge: utils.ONE_YEAR_MS}));
    expressServer.use(subdir + '/public', express['static'](path.join(corePath, '/built/public'), {maxAge: utils.ONE_YEAR_MS}));

    // First determine whether we're serving admin or theme content
    expressServer.use(updateActiveTheme);
    expressServer.use(decideContext);

    // Admin only config
    expressServer.use(subdir + '/ghost', middleware.whenEnabled('admin', express['static'](path.join(corePath, '/client/assets'), {maxAge: utils.ONE_YEAR_MS})));

    // Force SSL
    // NOTE: Importantly this is _after_ the check above for admin-theme static resources,
    //       which do not need HTTPS. In fact, if HTTPS is forced on them, then 404 page might
    //       not display properly when HTTPS is not available!
    expressServer.use(checkSSL);

    // Theme only config
    expressServer.use(subdir, middleware.staticTheme());

    // Serve robots.txt if not found in theme
    expressServer.use(robots());

    // Add in all trailing slashes
    expressServer.use(slashes(true, {headers: {'Cache-Control': 'public, max-age=' + utils.ONE_YEAR_S}}));

    // Body parsing
    expressServer.use(bodyParser.json());
    expressServer.use(bodyParser.urlencoded());

    expressServer.use(passport.initialize());

    // ### Caching
    expressServer.use(middleware.cacheControl('public'));
    expressServer.use(subdir + '/ghost/', middleware.cacheControl('private'));


    // enable authentication
    expressServer.use(middleware.authenticate);

    // local data
    expressServer.use(ghostLocals);

    // ### Routing
    // Set up API routes
    expressServer.use(subdir + routes.apiBaseUri, routes.api(middleware));

    // Set up Admin routes
    expressServer.use(subdir, routes.admin(middleware));

    // Set up Frontend routes
    expressServer.use(subdir, routes.frontend());

    // ### Error handling
    // 404 Handler
    expressServer.use(errors.error404);

    // 500 Handler
    expressServer.use(errors.error500);
};