}, function(err, reply) { var tweets = []; _.each(reply, function(raw_tweet) { var tweet = {}, hashtag_regexp = /#([a-zA-Z0-9]+)/g, username_regexp = /@([a-zA-Z0-9]+)/g; if (raw_tweet.retweeted_status) { tweet.img = raw_tweet.retweeted_status.user.profile_image_url; tweet.username = raw_tweet.retweeted_status.user.screen_name; tweet.tweet = raw_tweet.retweeted_status.text; tweet.retweeted = true; } else { tweet.username = raw_tweet.user.screen_name; tweet.img = raw_tweet.user.profile_image_url; tweet.tweet = raw_tweet.text; tweet.retweeted = false; } tweet.time_distance = moment(raw_tweet.created_at, 'ddd MMM DD HH:mm:ss Z YYYY').calendar(); tweet.tweet = tweet.tweet.replace(hashtag_regexp, '<span class="hashtag">#$1</span>'); tweet.tweet = tweet.tweet.replace(username_regexp, '<span class="at-name">@$1</span>'); tweets.push(tweet); }); response.tweets = tweets; var blog = new Tumblr(config.tumblr.blog, config.tumblr.consumer_key); blog.text({ limit: 1 }, function(error, tumblr_response) { post = _.first(tumblr_response.posts); response.post_title = post.title; response.post = S(post.body).truncate(500, '...<a href="' + post.post_url + '" class="read_more">[read more]</a>').s; skills.prepare(['blue', 'red', 'green'], database.skills); response.columns = skills.columns; response.projects = database.projects; response.projectCount = response.projects.length; res.render('index', response); }); });
app.get('/food', function(req, res) { blog.posts({tag: "about"}, function(error, response) { if (error) { throw new Error(error); } //console.log(response.posts); fetchBlogPost(res, "food", response.posts[0]); }); });
app.get('/blog', function(req, res) { var blog = new Tumblr( config.tumblr.blog, config.tumblr.consumer_key ); blog.text({ limit: 1 }, function(error, response) { post = _.first(response.posts); if (req.xhr) { res.send(post); } else { res.render('blog', post); } }); });
function fetchBlogPost(res, tag, extra) { blog.posts({tag: tag}, function(error, response) { if (error) { throw new Error(error); } console.log(response.posts.length); // console.log(response.posts); for (var i in response.posts) { console.log(response.posts[i].title); } res.render(tag, { title: 'HKSN', posts: response.posts, about: extra }); }); }
app.get('/', function(req, res) { blog.posts({limit: 3}, function(error, response) { var newArray = []; if (error) { throw new Error(error); } for (var i=0; i < response.posts.length; i++) { if (response.posts[i].tags != "about") { newArray.push(response.posts[i]); } } // console.log(newArray); res.render('index', { title: 'HKSN', posts: newArray }); }); });