-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathjsconf.js
71 lines (62 loc) · 1.5 KB
/
jsconf.js
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
var Messages = new Meteor.Collection('messages');
var Tweets = new Meteor.Collection('tweets');
if (Meteor.isClient) {
Template.messages.helpers({
messages: function () {
return Messages.find({}, {sort: {time: -1}});
}
});
Template.tweets.helpers({
tweets: function () {
return Tweets.find({}, {sort: {time: -1}});
}
})
Template.messages.events = {
'keydown input#message' : function (event, template) {
var username, message;
if (event.which == 13) {
if (Meteor.user())
username = Meteor.user().emails[0].address;
else
username = 'Anonymous';
message = template.find("#message");
Messages.insert({
name : username,
message : message.value,
time : Date.now()
});
message.value = '';
}
}
}
}
if (Meteor.isServer) {
var getTweets = function (callback) {
var stream = Twit.get('search/tweets',
{
q : '#jsconfbe',
count : 100
}, function (err, res) {
callback(err, res)
})
}
var addTweets = function (tweets) {
_.each(tweets.statuses, function (tweet) {
Tweets.insert({
message : tweet.text,
time : tweet.created_at,
user : tweet.user.name
})
})
}
Meteor.startup(function () {
var startTwit = Meteor.wrapAsync(getTweets);
try {
var data = startTwit();
addTweets(data);
}
catch (error) {
console.log(error)
}
})
}