fixed favouriting

v1.18.x
Baris Soner Usakli 11 years ago
parent 746119bd45
commit 5f86e31d1e

@ -108,7 +108,9 @@
module.searchRemove = function(key, id) { module.searchRemove = function(key, id) {
db.collection('search').remove({id:id, key:key}, function(err, result) { db.collection('search').remove({id:id, key:key}, function(err, result) {
callback(err, result); if(err) {
winston.error('Error removing search ' + err.message);
}
}); });
} }

@ -8,6 +8,7 @@ var db = require('./database'),
"use strict"; "use strict";
Favourites.favourite = function (pid, room_id, uid, socket) { Favourites.favourite = function (pid, room_id, uid, socket) {
if (uid === 0) { if (uid === 0) {
translator.mget(['topic:favourites.not_logged_in.message', 'topic:favourites.not_logged_in.title'], function(err, results) { translator.mget(['topic:favourites.not_logged_in.message', 'topic:favourites.not_logged_in.title'], function(err, results) {
@ -25,7 +26,8 @@ var db = require('./database'),
posts.getPostFields(pid, ['uid', 'timestamp'], function (err, postData) { posts.getPostFields(pid, ['uid', 'timestamp'], function (err, postData) {
Favourites.hasFavourited(pid, uid, function (hasFavourited) { Favourites.hasFavourited(pid, uid, function (hasFavourited) {
if (hasFavourited === 0) {
if (!hasFavourited) {
db.setAdd('pid:' + pid + ':users_favourited', uid); db.setAdd('pid:' + pid + ':users_favourited', uid);
db.sortedSetAdd('uid:' + uid + ':favourites', postData.timestamp, pid); db.sortedSetAdd('uid:' + uid + ':favourites', postData.timestamp, pid);
@ -60,7 +62,7 @@ var db = require('./database'),
posts.getPostField(pid, 'uid', function (err, uid_of_poster) { posts.getPostField(pid, 'uid', function (err, uid_of_poster) {
Favourites.hasFavourited(pid, uid, function (hasFavourited) { Favourites.hasFavourited(pid, uid, function (hasFavourited) {
if (hasFavourited === 1) { if (hasFavourited) {
db.setRemove('pid:' + pid + ':users_favourited', uid); db.setRemove('pid:' + pid + ':users_favourited', uid);
db.sortedSetRemove('uid:' + uid + ':favourites', pid); db.sortedSetRemove('uid:' + uid + ':favourites', pid);

@ -207,7 +207,7 @@ var async = require('async'),
privileges = results[2]; privileges = results[2];
for (var i = 0; i < postData.length; ++i) { for (var i = 0; i < postData.length; ++i) {
postData[i].favourited = fav_data[postData[i].pid] === 1; postData[i].favourited = fav_data[postData[i].pid];
postData[i].display_moderator_tools = ((current_user != 0) && (postData[i].uid == current_user || privileges.editable)); postData[i].display_moderator_tools = ((current_user != 0) && (postData[i].uid == current_user || privileges.editable));
} }

@ -504,6 +504,7 @@ websockets.init = function(io) {
}); });
socket.on('api:posts.favourite', function(data) { socket.on('api:posts.favourite', function(data) {
console.log('fave');
favourites.favourite(data.pid, data.room_id, uid, socket); favourites.favourite(data.pid, data.room_id, uid, socket);
}); });

Loading…
Cancel
Save