![]() Server : Apache/2 System : Linux server-15-235-50-60 5.15.0-164-generic #174-Ubuntu SMP Fri Nov 14 20:25:16 UTC 2025 x86_64 User : gositeme ( 1004) PHP Version : 8.2.29 Disable Function : exec,system,passthru,shell_exec,proc_close,proc_open,dl,popen,show_source,posix_kill,posix_mkfifo,posix_getpwuid,posix_setpgid,posix_setsid,posix_setuid,posix_setgid,posix_seteuid,posix_setegid,posix_uname Directory : /home/gositeme/domains/lavocat.quebec/private_html/scripts/ |
const { PrismaClient } = require('@prisma/client');
const prisma = new PrismaClient();
async function addUsersToPublicRooms() {
try {
console.log('Adding users to public chat rooms...');
// Get all public rooms
const publicRooms = await prisma.chatRoom.findMany({
where: { isPublic: true },
select: { id: true, name: true }
});
console.log(`Found ${publicRooms.length} public rooms:`, publicRooms.map(r => r.name));
// Get all users
const users = await prisma.user.findMany({
select: { id: true, name: true, email: true, role: true }
});
console.log(`Found ${users.length} users`);
let totalAdded = 0;
// Add each user to each public room if they're not already a participant
for (const user of users) {
for (const room of publicRooms) {
const existingParticipant = await prisma.chatParticipant.findUnique({
where: {
userId_chatRoomId: {
userId: user.id,
chatRoomId: room.id
}
}
});
if (!existingParticipant) {
await prisma.chatParticipant.create({
data: {
userId: user.id,
chatRoomId: room.id,
role: user.role === 'ADMIN' ? 'ADMIN' : 'MEMBER'
}
});
console.log(`Added ${user.name} (${user.email}) to room "${room.name}"`);
totalAdded++;
} else {
console.log(`${user.name} already in room "${room.name}"`);
}
}
}
console.log(`\n✅ Successfully added ${totalAdded} user-room associations`);
console.log('All users should now be able to see and participate in public chat rooms!');
} catch (error) {
console.error('Error adding users to public rooms:', error);
} finally {
await prisma.$disconnect();
}
}
addUsersToPublicRooms();