-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathserver.js
More file actions
72 lines (57 loc) · 1.8 KB
/
Copy pathserver.js
File metadata and controls
72 lines (57 loc) · 1.8 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
// Require our dependencies
var express = require('express'),
exphbs = require('express-handlebars'),
http = require('http'),
mongoose = require('mongoose'),
twitter = require('twitter'),
routes = require('./routes'),
config = require('./config'),
streamHandler = require('./utils/streamHandler'),
term = "mufc", bodyParser = require('body-parser');
// Create an express instance and set a port variable
var stream;
var app = express();
var port = process.env.PORT || 8080;
// Set handlebars as the templating engine
app.engine('handlebars', exphbs({ defaultLayout: 'main'}));
app.set('view engine', 'handlebars');
// Disable etag headers on responses
app.disable('etag');
// Connect to our mongo database
mongoose.connect('mongodb://localhost/react-tweets');
// Create a new ntwitter instance
var twit = new twitter(config.twitter);
// Index Route
app.get('/', routes.index);
// Page Route
app.get('/page/:page/:skip', routes.page);
// Term Update
app.use(bodyParser.json()); // support json encoded bodies
app.use(bodyParser.urlencoded({ extended: true })); // support encoded bodies
var a;
app.post('/query', function(request, response) {
if (term === request.body.q) {
return false;
}
term = request.body.q;
try {
steam.destroy();
} catch (error) {
}
twit.stream('statuses/filter', {"track" : term}, function(str){
stream = str;
streamHandler(stream,io);
});
response.write('{}');
response.end();
});
// Set /public as our static content dir
app.use("/", express.static(__dirname + "/public/"));
// Fire this bitch up (start our server)
var server = http.createServer(app).listen(port, function() {
console.log('Express server listening on port ' + port);
});
// Initialize socket.io
var io = require('socket.io').listen(server);
var jobs=require("./jobs/purge");
jobs.start();