forked from ThuyNT13/meetup-crosspost
-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathserver.js
More file actions
83 lines (65 loc) · 2.2 KB
/
server.js
File metadata and controls
83 lines (65 loc) · 2.2 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
var express = require('express');
var bodyParser = require('body-parser');
var EVENT_GROUP = require('./config.js');
var exphbs = require('express-handlebars');
var app = express();
var meetup = require('meetup-api')({
key: process.env.API_KEY
});
app.engine('handlebars', exphbs({defaultLayout: 'main'}));
app.set('view engine', 'handlebars');
app.use(express.static('public'));
app.use(bodyParser.urlencoded({ extended: true }));
app.post("/", function (request, response) {
var EVENT_TO_COPY = request.body.event.id;
const original = EVENT_GROUP.filter(event => event.label == request.body.original);
const copy = EVENT_GROUP.filter(event => event.label == request.body.copy);
var FROM_MEETUP = original[0];
var TO_MEETUP = copy[0];
meetup.getEvent({
'urlname': FROM_MEETUP.name,
'id': EVENT_TO_COPY
}, function(err, meetupResponse) {
if (err) {
console.log(err);
} else {
console.log('got meetup info!');
console.log(meetupResponse);
}
var newEventParams = {
'name': meetupResponse.name,
'description': meetupResponse.description,
'group_id': TO_MEETUP.id,
'group_urlname': TO_MEETUP.name,
'time': meetupResponse.time,
'venue_id': meetupResponse.venue.id,
'announce': false,
'publish_status': 'draft'
};
meetup.postEvent(newEventParams, function(creationError, creationResponse) {
if (creationError) {
console.log(creationError);
} else {
// TODO return URL of event object just created and providing link to event in Meetup.com
console.log(creationResponse);
}
});
});
response.render('home', {
eventGroup: EVENT_GROUP,
title: 'Meetup Crosspost API',
message: 'We did it!'
});
});
// // http://expressjs.com/en/starter/basic-routing.html
app.get("/", function (request, response) {
// response.sendFile(__dirname + '/views/index.html');
response.render('home', {
eventGroup: EVENT_GROUP,
title: 'Meetup Crosspost API'
});
});
// listen for requests :)
var listener = app.listen(process.env.PORT, function () {
console.log('Your app is listening on port ' + listener.address().port);
});