'use strict'; var async = require('async'), db = require('../database'), user = require('../user'), emitter = require('../emitter'), favourites = require('../favourites'), posts = require('../posts'), privileges = require('../privileges'); module.exports = function(Topics) { Topics.onNewPostMade = function(postData) { Topics.increasePostCount(postData.tid); Topics.updateTimestamp(postData.tid, postData.timestamp); Topics.addPostToTopic(postData.tid, postData.pid, postData.timestamp, 0); }; emitter.on('event:newpost', Topics.onNewPostMade); Topics.getTopicPosts = function(tid, set, start, end, uid, reverse, callback) { callback = callback || function() {}; posts.getPostsByTid(tid, set, start, end, reverse, function(err, postData) { if(err) { return callback(err); } if (Array.isArray(postData) && !postData.length) { return callback(null, []); } start = parseInt(start, 10); for(var i=0; i