From 7a1037dc11453ae872667cb3ee0272d2efb68263 Mon Sep 17 00:00:00 2001 From: barisusakli Date: Fri, 21 Mar 2014 17:04:15 -0400 Subject: [PATCH] moved posts and recent to new files --- src/sitemap.js | 33 +++++---- src/topics.js | 173 ++----------------------------------------- src/topics/posts.js | 131 ++++++++++++++++++++++++++++++++ src/topics/recent.js | 36 +++++++++ 4 files changed, 193 insertions(+), 180 deletions(-) create mode 100644 src/topics/posts.js create mode 100644 src/topics/recent.js diff --git a/src/sitemap.js b/src/sitemap.js index 89b3a4b2ba..56db3b1b2c 100644 --- a/src/sitemap.js +++ b/src/sitemap.js @@ -1,3 +1,5 @@ +'use strict'; + var path = require('path'), async = require('async'), sm = require('sitemap'), @@ -28,6 +30,10 @@ var path = require('path'), function(next) { var categoryUrls = []; categories.getAllCategories(0, function(err, data) { + if (err) { + return next(err); + } + data.categories.forEach(function(category) { if (!category.disabled) { categoryUrls.push({ @@ -43,16 +49,17 @@ var path = require('path'), }, function(next) { var topicUrls = []; - topics.getAllTopics(0, -1, function(err, topics) { - topics.forEach(function(topic) { + topics.getTopicsFromSet(0, 'topics:recent', 0, -1, function(err, data) { + if (err) { + return next(err); + } - if (parseInt(topic.deleted, 10) !== 1) { - topicUrls.push({ - url: path.join('/topic', topic.slug), - changefreq: 'daily', - priority: '0.6' - }); - } + data.topics.forEach(function(topic) { + topicUrls.push({ + url: path.join('/topic', topic.slug), + changefreq: 'daily', + priority: '0.6' + }); }); next(null, topicUrls); @@ -63,13 +70,13 @@ var path = require('path'), returnUrls = returnUrls.concat(data[0]).concat(data[1]); } - callback(null, returnUrls); + callback(err, returnUrls); }); }, render: function(callback) { async.parallel([sitemap.getStaticUrls, sitemap.getDynamicUrls], function(err, urls) { - var urls = urls[0].concat(urls[1]), - map = sm.createSitemap({ + urls = urls[0].concat(urls[1]); + var map = sm.createSitemap({ hostname: nconf.get('url'), cacheTime: 600000, urls: urls @@ -79,6 +86,6 @@ var path = require('path'), }); }); } - } + }; module.exports = sitemap; \ No newline at end of file diff --git a/src/topics.js b/src/topics.js index 19bd811b2f..3ec8604685 100644 --- a/src/topics.js +++ b/src/topics.js @@ -2,11 +2,7 @@ var async = require('async'), gravatar = require('gravatar'), - path = require('path'), - nconf = require('nconf'), validator = require('validator'), - S = require('string'), - winston = require('winston'), db = require('./database'), posts = require('./posts'), @@ -15,20 +11,15 @@ var async = require('async'), user = require('./user'), categories = require('./categories'), categoryTools = require('./categoryTools'), - posts = require('./posts'), - threadTools = require('./threadTools'), - postTools = require('./postTools'), - notifications = require('./notifications'), - favourites = require('./favourites'), - meta = require('./meta'), - Plugins = require('./plugins'), - emitter = require('./emitter'); + threadTools = require('./threadTools'); (function(Topics) { require('./topics/create')(Topics); require('./topics/unread')(Topics); + require('./topics/recent')(Topics); require('./topics/fork')(Topics); + require('./topics/posts')(Topics); Topics.getTopicData = function(tid, callback) { @@ -90,62 +81,6 @@ var async = require('async'), }); }; - Topics.getTopicPosts = function(tid, start, end, uid, reverse, callback) { - posts.getPostsByTid(tid, start, end, reverse, function(err, postData) { - if(err) { - return callback(err); - } - - if (Array.isArray(postData) && !postData.length) { - return callback(null, []); - } - - for(var i=0; i