Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- var express = require('express');
- const app = require('express')()
- const mongo = require('mongodb').MongoClient;
- const client = require('socket.io').listen(4000).sockets;
- const port = 3000;
- const http = require('http').Server(app);
- var mongoose = require('mongoose');
- var session = require('express-session');
- var MongoStore = require('connect-mongo')(session);
- var cors = require('cors');
- var path = require('path');
- app.use(function(req, res, next) {
- res.header("Access-Control-Allow-Origin", "*");
- res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept");
- next();
- });
- //set app to use ejs
- app.set('view engine', 'ejs')
- // set views dir for ejs
- app.set('views', path.join(__dirname, 'views'));
- app.set('view engine', 'ejs');
- // serve static files from template
- app.use(express.static(__dirname + '/'));
- // include routes
- var routes = require('./routes/router');
- app.use('/', routes);
- // Connect to mongo
- mongoose.connect('mongodb://...', function(err, db) {
- if (err) {
- throw err;
- }
- // Set db log connection was a success
- var db = mongoose.connection;
- console.log('MongoDB connected...');
- ///////////////////////// not sure if needed
- //use sessions for tracking logins
- app.use(session({
- secret: 'work hard',
- resave: false,
- saveUninitialized: true,
- store: new MongoStore({
- mongooseConnection: db
- })
- }));
- ///////////////////////////////
- // Connect to Socket.io
- client.on('connection', function(socket) {
- //Retrieve user model
- var userModel = require('./models/user');
- // Handle user registration
- socket.on('register', function(data) {
- console.log(data.Username);
- //The data that will get sent.
- var newUser = userModel({
- Username: data.Username,
- Password: data.Password
- })
- // Save new user data
- newUser.save(function(err) {
- console.log("New user registered");
- })
- });
- // Handle user login
- socket.on('login', function(data) {
- // console.log(data.Username);
- // ["I'm the data that will get sent."
- usernameFindMe = data.Username;
- passwordFindMe = data.Password;
- userModel.findOne({
- Username: usernameFindMe,
- Password: passwordFindMe
- }, function(err, user) {
- if (err) {
- console.log('err');
- }
- if (!user) {
- console.log('OH NOOOOOOOOOO');
- } else {
- console.log('yay');
- module.exports.yourUserName = usernameFindMe;
- var destination = '/';
- client.emit('redirect', destination);
- }
- })
- });
- });
- });
- //Start the Server
- http.listen(port, function() {
- console.log('listening on *:' + port);
- });
- var express = require('express');
- var router = express.Router();
- //get variables from server
- var sourceFile = require('./../server');
- // Default Variables
- userName = 'Not Logged In';
- // GET route for dashboard
- router.get('/', function(req, res, next) {
- res.render('index.ejs', {
- });
- // set variables
- function setRandom() {
- if (sourceFile.yourUserName == null){
- userName = 'Not Logged In';
- }
- else{
- userName = sourceFile.yourUserName;
- console.log(userName);
- }
- }
- setRandom();
- setInterval(setRandom, 200);
- });
- // GET route for dashboard
- router.get('/register', function(req, res, next) {
- res.render('register.ejs', {
- });
- // set variables
- userName = sourceFile.yourUserName;
- // log username for development
- console.log(userName);
- });
- module.exports = router;
Add Comment
Please, Sign In to add comment