Fix playlist bug

This commit is contained in:
2025-03-01 16:39:13 +01:00
parent a1193ea87f
commit 195980032c
5 changed files with 80 additions and 35 deletions

View File

@ -166,4 +166,34 @@ module.exports.voteForPlaylist = (roomId, userId, playlistId) => {
module.exports.getPlaylistVotes = (roomId) => {
return rooms[roomId]?.playlistVotes || {};
};
module.exports.getWinningPlaylist = (roomId) => {
const room = rooms[roomId];
if (!room || !room.playlistVotes) {
console.log(`No votes found for room ${roomId}, using default playlist`);
return Object.values(require('../services/youtubeService').PLAYLISTS)[0];
}
let maxVotes = 0;
let winningPlaylist = null;
console.log(`Calculating winning playlist for room ${roomId}`);
console.log('Current votes:', room.playlistVotes);
Object.entries(room.playlistVotes).forEach(([playlistId, voters]) => {
console.log(`Playlist ${playlistId} has ${voters.length} votes`);
if (voters.length > maxVotes) {
maxVotes = voters.length;
winningPlaylist = playlistId;
}
});
if (!winningPlaylist) {
console.log('No winning playlist found, using default');
winningPlaylist = Object.values(require('../services/youtubeService').PLAYLISTS)[0];
}
console.log(`Selected winning playlist: ${winningPlaylist}`);
return winningPlaylist;
};