-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathindex.js
More file actions
91 lines (73 loc) · 2.27 KB
/
index.js
File metadata and controls
91 lines (73 loc) · 2.27 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
// Set up the app
var express = require('express');
var app = express();
var http = require('http').Server(app);
var io = require('socket.io')(http);
// Other imports
var mongoose = require('mongoose');
var config = require('config');
var jsonfile = require('jsonfile');
var bodyParser = require("body-parser");
// Establish socket io connection
io.on('connection', function(socket){
console.log('a user connected');
socket.on('new comment', function(data){
console.log("user " + data.user + " has posted")
io.sockets.emit('add comment', {user: data.user});
})
});
// models
var Comment = require('./models/comment');
var Book = require('./models/Book');
var Store = require('./models/Store');
// Post data support
app.use(bodyParser.urlencoded({
extended: false
}));
app.use(bodyParser.json());
// Use jade engine
app.set('view engine', 'jade');
// Routing
app.use('/', express.static('public'));
app.use('/app', express.static('app'));
// Book
var books = require('./controllers/book');
app.use('/book', books);
// Comment
var comments = require('./controllers/comment');
app.use('/comment', comments);
// Store
var stores = require('./controllers/store');
app.use('/store', stores);
//connect to our database
var dbConfig = config.get('RottenAvocados.dbConfig');
var connectionString = 'mongodb://' + dbConfig.host + ':' + dbConfig.port + '/' + dbConfig.dbName;
mongoose.connect(connectionString, function (err, db) {
if (err != null) {
throw "Error connecting to mongo database: " + JSON.stringify(err);
}
Comment.remove({}, function (err) {
});
Book.remove({}, function (err) {
});
Store.remove({}, function (err) {
});
// read data file
var file = jsonfile.readFile("Data/books.json", function (err, data) {
Book.insertMany(data.books, function (err, result) {
if (err)
console.log(err);
})
});
// read data file
var storesFile = jsonfile.readFile("Data/stores.json", function (err, data) {
Store.insertMany(data.stores, function (err, result) {
if (err)
console.log(err);
})
});
// Start the app
http.listen(8080, function () {
console.log('Rotten Avocados listening on port 8080!');
});
});