Exemple #1
0
function setup(cbSetup) {
    // create express server
    app.server = express();
    // read setting
    app.setting = tool.getDefaultSetting(__dirname);
    var siteSetting = require('./setting').setting;
    //console.log('site setting:', siteSetting);
    app.setting = _.extend(app.setting, siteSetting);
    // setup swig as view engine
    app.server.engine('html', cons.swig);
    app.server.set('views', path.join(__dirname, 'views'));
    app.server.set('view engine', 'html');
    // setup middleware
    app.server.use(favicon(path.join(__dirname, app.setting.public_name, 'image', 'favicon.ico')));
    app.server.use(compression());
    app.server.use(logger('dev'));
    app.server.use(bodyParser.json());
    app.server.use(bodyParser.urlencoded());
    app.server.use(cookieParser());
    app.server.use(express.static(path.join(__dirname, app.setting.public_name)));
    // setup database connection
    if (app.setting.database) {
        var Database = require(app.setting.database.type + '-database');
        app.db = new Database(app, function() {
            setupModules(app, cbSetup);
        });
    } else {
        setupModules(app, cbSetup);
    }
}
Exemple #2
0
function setup(cbSetup) {
    // create express server
    app.server = express();
    // read setting
    app.setting = tool.getDefaultSetting(__dirname);
    var siteSetting = require('./setting').setting;
    //console.log('site setting:', siteSetting);
    app.setting = _.extend(app.setting, siteSetting);
    // setup swig as view engine
    app.server.engine('html', cons.swig);
    app.server.set('views', path.join(__dirname, 'views'));
    app.server.set('view engine', 'html');
    // setup middleware
    app.server.use(favicon(path.join(__dirname, app.setting.public_name, 'image', 'favicon.ico')));
    app.server.use(compression());
    app.server.use(logger('dev'));
    app.server.use(bodyParser.json());
    app.server.use(bodyParser.urlencoded());
    app.server.use(cookieParser());
    app.server.use(session({
        secret:'mykeySproutUp937434',
        saveUninitialized: true,
        resave: true,
        cookie: { maxAge: 120 * 60 * 1000 }  //session expires in 120 minutes   
    }));
    app.server.use(express.static(path.join(__dirname, app.setting.public_name)));
    
    // Multer is a node.js middleware for handling multipart/form-data
    /*
    app.server.use(multer({ dest: './site/public/file/',
        rename: function (fieldname, filename) {
            return filename + Date.now();
        },
        onFileUploadStart: function (file) {
            console.log(file.originalname + ' is starting to upload...')
        },
        onFileUploadComplete: function (file) {
            console.log(file.fieldname + ' is uploaded to ' + file.path)
        }
    }));
    */
    
    app.mailer = null;
    if (app.setting.email) {
        app.mailer = new emailEngine.Engine(app.setting.email);
    } 
    
    // setup database connection
    if (app.setting.database) {
        var Database = require(app.setting.database.type + '-database');
        app.db = new Database(app, function() {
            setupModules(app, cbSetup);
        });
    } else {
        setupModules(app, cbSetup);
    }
}