Test
This commit is contained in:
24
scripts/setPlayerUsernames.js
Normal file
24
scripts/setPlayerUsernames.js
Normal file
@@ -0,0 +1,24 @@
|
||||
const { PrismaClient } = require('../generated/prisma');
|
||||
|
||||
async function main() {
|
||||
const prisma = new PrismaClient();
|
||||
const players = await prisma.player.findMany();
|
||||
const usedUsernames = new Set();
|
||||
|
||||
for (const player of players) {
|
||||
let base = player.email.split('@')[0];
|
||||
let username = base;
|
||||
let i = 1;
|
||||
// Ensure uniqueness
|
||||
while (usedUsernames.has(username) || await prisma.player.findUnique({ where: { username } })) {
|
||||
username = `${base}${i}`;
|
||||
i++;
|
||||
}
|
||||
usedUsernames.add(username);
|
||||
await prisma.player.update({ where: { id: player.id }, data: { username } });
|
||||
console.log(`Set username for ${player.email}: ${username}`);
|
||||
}
|
||||
await prisma.$disconnect();
|
||||
}
|
||||
|
||||
main().catch(e => { console.error(e); process.exit(1); });
|
||||
Reference in New Issue
Block a user