Mercurial > pumpbridge
comparison src/twitter.coffee @ 17:a52b5b244e51
removed unnecessary underscore and replaced it with async
author | Mathias Gebbe <mgebbe@intevation.de> |
---|---|
date | Fri, 13 Jun 2014 15:18:36 +0200 |
parents | 6fd0a307850f |
children | b90e6df48d2d |
comparison
equal
deleted
inserted
replaced
16:d2208a4ed5c8 | 17:a52b5b244e51 |
---|---|
111 if (user[0]?) | 111 if (user[0]?) |
112 Pump.getUserFeed(user[0],callback) | 112 Pump.getUserFeed(user[0],callback) |
113 else | 113 else |
114 return | 114 return |
115 (feed, callback) -> | 115 (feed, callback) -> |
116 return if not feed? | |
116 ti = new Date().getTime() - interval | 117 ti = new Date().getTime() - interval |
117 async.eachSeries feed.items, ((post, callback) -> | 118 async.eachSeries feed.items, ((post, callback) -> |
118 # do for each post | 119 # do for each post |
119 ts = Date.parse(post.updated) | 120 ts = Date.parse(post.updated) |
120 if (ts >= ti and post.verb is "post" or post.verb is "share") and (post.object.objectType is "note" or post.object.objectType is "image") and (Pump.isPublicActivity(post)) and (typeof post.object.deleted is "undefined") | 121 if (ts >= ti and post.verb is "post" or post.verb is "share") and (post.object.objectType is "note" or post.object.objectType is "image") and (Pump.isPublicActivity(post)) and (typeof post.object.deleted is "undefined") |
121 ToESN.search {uid: post.object.id + "@twitter"}, (err, result) -> | 122 ToESN.search {uid: post.object.id + "@twitter"}, (err, result) -> |
122 if result.length is 0 | 123 if result.length is 0 |
123 # post to twitter | 124 # post to twitter |
124 status = "" | 125 status = "" |
125 text = post.object.content.replace(/<(?:.|\n)*?>/gm, '') | 126 text = post.object.content.replace(/<(?:.|\n)*?>/gm, '') |
127 re = new RegExp(String.fromCharCode(160), "g") | |
128 text = text.replace(re, " ") | |
126 if post.verb is "share" | 129 if post.verb is "share" |
127 status = post.object.author.url + " wrotes: " | 130 status = post.object.author.url + " wrotes: " |
128 if text.length <= 140 | 131 if text.length <= 140 |
129 status += text | 132 status += text |
130 else | 133 else |
149 return | 152 return |
150 callback null, 'done' | 153 callback null, 'done' |
151 ), (err) -> | 154 ), (err) -> |
152 callback null, 'done' | 155 callback null, 'done' |
153 ],(err, result) -> | 156 ],(err, result) -> |
154 | 157 |
155 ###################################### | 158 ###################################### |
156 # get tweets and post them to pump.io# | 159 # get tweets and post them to pump.io# |
157 ###################################### | 160 ###################################### |
158 twit.verifyCredentials((data) -> | 161 twit.verifyCredentials((data) -> |
159 #console.log util.inspect(data) | 162 #console.log util.inspect(data) |
160 return | 163 return |
161 ).getHomeTimeline {include_rts: true, count: 20 }, (data) -> | 164 ).getHomeTimeline {include_rts: true, count: 20 }, (data) -> |
162 #console.log util.inspect(data) | 165 #console.log util.inspect(data) |
163 ti = (new Date().getTime() - interval) | 166 ti = (new Date().getTime() - interval) |
164 _.each data, (tweet) -> | 167 async.each data, ((tweet,cb) -> |
165 async.waterfall [ | 168 async.waterfall [ |
166 (callback) -> | 169 (callback) -> |
167 FromESN.search {uid: tweet.id + "@twitter_to_" + me, recipientUser: me}, callback | 170 FromESN.search {uid: tweet.id + "@twitter_to_" + me, recipientUser: me}, callback |
168 (result, callback) -> | 171 (result, callback) -> |
169 return if result.length isnt 0 or tweet.user.id_str is id | 172 return if result.length isnt 0 or tweet.user.id_str is id |
183 pumpPost: pumppost.object.id | 186 pumpPost: pumppost.object.id |
184 recipientUser: me | 187 recipientUser: me |
185 created: Date.now() | 188 created: Date.now() |
186 , callback | 189 , callback |
187 ], (err, result) -> | 190 ], (err, result) -> |
188 #console.log result | 191 cb() |
189 # end | 192 ), (err) -> |
190 return | 193 return |
191 return | 194 return |
192 | 195 |
193 return | |
194 | |
195 parseTwitterDate : (text) -> | 196 parseTwitterDate : (text) -> |
196 | 197 |
197 getOAuth: (site) -> | 198 getOAuth: (site) -> |
198 new OAuth(request_token_endpoint, access_token_endpoint, client_id, client_secret, "1.0", site.url("/authorized-for-twitter"), "HMAC-SHA1", null, # nonce size; use default | 199 new OAuth(request_token_endpoint, access_token_endpoint, client_id, client_secret, "1.0", site.url("/authorized-for-twitter"), "HMAC-SHA1", null, # nonce size; use default |
199 "User-Agent": site.userAgent() | 200 "User-Agent": site.userAgent() |