Files
habitica/website/server/server.js
2024-04-01 18:04:38 -05:00

52 lines
1.1 KiB
JavaScript

import nconf from 'nconf';
import express from 'express';
import http from 'http';
import logger from './libs/logger';
import sinon from 'sinon';
// Setup translations
// Must come before attach middlewares so Mongoose validations can use translations
import './libs/i18n';
import attachMiddlewares from './middlewares/index';
// Load config files
import './libs/setupMongoose';
import './libs/setupPassport';
// Load some schemas & models
import './models/challenge';
import './models/group';
import './models/user';
const server = http.createServer();
const app = express();
app.set('port', nconf.get('PORT'));
attachMiddlewares(app, server);
const time = new Date(2024, 2, 18);
const clock = sinon.useFakeTimers({
now: time,
shouldAdvanceTime: true,
});
var jumped = false;
setInterval(() => {
if (jumped) {
jumped = false;
return;
}
jumped = true;
console.log('Jumping time');
clock.jump(36000);
}, 1000);
server.on('request', app);
server.listen(app.get('port'), () => {
logger.info(`Express server listening on port ${app.get('port')}`);
});
export default server;