This commit is contained in:
barisusakli
2015-03-18 17:50:47 -04:00
parent 41f5afa887
commit 5bc2e7dac2
6 changed files with 88 additions and 47 deletions

View File

@@ -118,4 +118,8 @@ SocketCategories.ignore = function(socket, cid, callback) {
});
};
SocketCategories.isModerator = function(socket, cid, callback) {
user.isModerator(socket.uid, cid, callback);
};
module.exports = SocketCategories;

View File

@@ -50,6 +50,10 @@ SocketPosts.reply = function(socket, data, callback) {
socket.emit('event:new_post', result);
SocketPosts.notifyOnlineUsers(socket.uid, result);
if (data.lock) {
socketTopics.doTopicAction('lock', 'event:topic_locked', socket, {tids: [postData.topic.tid], cid: postData.topic.cid});
}
});
};
@@ -362,9 +366,9 @@ SocketPosts.purge = function(socket, data, callback) {
});
callback();
});
});
}
if (!data || !parseInt(data.pid, 10)) {
return callback(new Error('[[error:invalid-data]]'));
}
@@ -500,7 +504,7 @@ SocketPosts.flag = function(socket, pid, callback) {
}
notifications.push(notification, results.admins.concat(results.moderators), next);
});
}
}
], callback);
};

View File

@@ -41,6 +41,10 @@ SocketTopics.post = function(socket, data, callback) {
return callback(err);
}
if (data.lock) {
SocketTopics.doTopicAction('lock', 'event:topic_locked', socket, {tids: [result.topicData.tid], cid: result.topicData.cid});
}
callback(null, result.topicData);
socket.emit('event:new_post', {posts: [result.postData]});
socket.emit('event:new_topic', result.topicData);
@@ -233,6 +237,7 @@ SocketTopics.unpin = function(socket, data, callback) {
};
SocketTopics.doTopicAction = function(action, event, socket, data, callback) {
callback = callback || function() {};
if (!socket.uid) {
return;
}
@@ -550,4 +555,13 @@ SocketTopics.loadMoreTags = function(socket, data, callback) {
});
};
SocketTopics.isModerator = function(socket, tid, callback) {
topics.getTopicField(tid, 'cid', function(err, cid) {
if (err) {
return callback(err);
}
user.isModerator(socket.uid, cid, callback);
});
};
module.exports = SocketTopics;