Added some admin endpoints & ssl, and cleaned up config

This commit is contained in:
Johnathon Slightham
2021-05-25 15:50:56 -04:00
parent cafb324ddb
commit fdb447a9ee
4 changed files with 104 additions and 10 deletions

View File

@@ -6,17 +6,20 @@ const cors = require('cors');
const mongoose = require('mongoose');
const utils = require ('./utils/utils');
const CronJob = require('cron').CronJob;
const config = require('./DB.js');
const config = require('./config.js');
const adminRoutes = require('./routes/admin.route');
const userRoutes = require('./routes/user.route');
const postRoutes = require('./routes/post.route');
const categoryRoutes = require('./routes/category.route');
const mongoSanitize = require('express-mongo-sanitize');
const fs = require("fs");
const { Http2ServerRequest } = require('http2');
console.log("Starting Kno-Logic Backend Server");
// Handle MongoDB connection
mongoose.Promise = global.Promise;
mongoose.connect(config.DB, { useNewUrlParser: true, useUnifiedTopology: true }).then(
mongoose.connect(config.db.connection, { useNewUrlParser: true, useUnifiedTopology: true }).then(
() => {
console.log('Connected to dabase');
utils.mail.loadDefaultTemplates();
@@ -37,14 +40,24 @@ app.use(express.json());
app.use(mongoSanitize());
// Express routes
app.use('/admin', adminRoutes);
app.use('/user', userRoutes);
app.use('/post', postRoutes);
app.use('/category', categoryRoutes);
app.listen(PORT, () => {
app.listen(config.http.port, () => {
console.log('Express server running on port:', PORT);
});
if (config.ssl.use) {
const options = {
key: fs.readFileSync(config.ssl.key),
cert: fs.readFileSync(config.ssl.cert)
}
https.createServer(options, app).listen(config.ssl.port);
}
// Cron jobs
var purge = new CronJob('*/5 * * * *', utils.cron.purgeSessions);
purge.start();