function(err, consoles) { consoles.forEach(function(platforms) { if (platforms.console_id === 'all') { return; } gameCounter[platforms.console_id] = []; }); games.get_games(req, { send: function(games) { games.forEach(function(game) { if (game.consoles) { game.consoles.forEach(function(platform) { if (gameCounter[platform.trim()]) { gameCounter[platform.trim()].push(game); } else { console.log('no platform', platform); } }); } }); send_response(null, gameCounter); } }, next); });
get_users = function(err, result) { if (err) { return next(err); } delete data.countThreads; data.threads = result; if (!data.featured_games) { return games.get_games(req, { send: function(item) { data.games = item; req.query.featured = 1; games.get_games(req, { send: function(item) { data.featured_games = item; delete req.query.featured; that(null, data); } }); } }, next); return; } that(null, data); }
send: function(item) { data.games = item; req.query.featured = 1; games.get_games(req, { send: function(item) { data.featured_games = item; delete req.query.featured; that(null, data); } }); }
filter_tags = function(err, result) { if (err) { return next(err); } data.games = []; data.games_ids = []; data.featured_games = []; data.featured_games_ids = []; console.log('Filter tags'); for (var i = 0; i < result.length; i++) { result[i].platforms = result[i].platforms && result[i].platforms .split(',').map(function(e) { return e.trim(); }); result[i].tags = result[i].tags && result[i].tags .split(',').map(function(e) { return e.trim(); }); if (~(result[i].platforms.indexOf(req.query.console))) { data.games.push(result[i]); data.games_ids.push(result[i].id); if (result[i].active) { data.featured_games.push(result[i]); data.featured_games_ids.push(result[i].id); } } } return games.get_games(req, { send: function(item) { data.featured_games_tags = []; data.featured_games.forEach(function(item, i) { data.featured_games_tags = data.featured_games_tags.concat(item.tags); }); data.games_tags = []; data.games.forEach(function(item, i) { data.games_tags = data.games_tags.concat(item.tags); }); data.featured_games_final = []; data.games = []; item.forEach(function(item, i) { if (data.games_ids.indexOf(item.id)) { data.games.push(item); if (~data.featured_games_ids.indexOf(item.id)) { data.featured_games_final .push(data.featured_games[data.featured_games_ids.indexOf(item.id)]); } } }); delete data.games_ids; delete data.featured_games_ids; get_featured_videos(); } }, next); },