require('dotenv').load(); var fs = require('fs') var app, express = require('express'); var http = require('http'); var https = require('https'); var bodyParser = require('body-parser') var cookieParser = require('cookie-parser') var csurf = require('csurf') var path = require('path') var multiparty = require('multiparty') var ejs = require('ejs') var passport = require('passport') var sessionstore = require('sessionstore') var session = require('express-session') var multer = require('multer') var db = require('./db') var auth = require('./auth') var middleware = require('./middleware') var app, server var site = module.exports = {} site.init = function(){ app = express() app.set('port', 5000) app.set('view engine', 'ejs') app.set('views', path.join(__dirname, '../views')) app.use(express.static(path.join(__dirname, '../public'))) app.use(bodyParser.json()) app.use(bodyParser.urlencoded({ extended: false })) app.use( multer({ dest:'./uploads/' }).single("file") ) app.use(session({ key: 'bucky.sid', secret: 'argonauts', cookie: { domain: '.' + process.env.HOST_NAME, maxAge: 43200000000 }, store: sessionstore.createSessionStore(), resave: true, saveUninitialized: false, })) app.use(csurf({ cookie: false })) app.use(express.query()) app.use(passport.initialize()) app.use(passport.session()) app.all('*', middleware.ensureLocals) server = http.createServer(app).listen(5000, function () { console.log('Bucky listening at https://lvh.me:%s', server.address().port) }) site.route() } site.route = function(){ auth.init() app.get("/", middleware.ensureAuthenticated, function(req, res){ res.redirect('/index') }) app.get("/login", function(req, res){ res.render("pages/login", {}) }) app.get("/index", middleware.ensureAuthenticated, function(req, res){ res.render("pages/index", {}) }) app.post("/api/login", auth.loggedInLocal) app.get("/api/index", function(req, res){ }) app.get("/api/thread", function(req, res){ }) app.post("/api/thread", function(req, res){ }) app.post("/api/thread/:id", function(req, res){ }) }