build fix
This commit is contained in:
parent
907adf3f87
commit
c334e02da9
@ -78,37 +78,50 @@ export async function GET(request: Request) {
|
||||
console.log(`Created placeholder user ${userId}`);
|
||||
}
|
||||
|
||||
// Upsert credentials in database
|
||||
await prisma.mailCredentials.upsert({
|
||||
where: { userId },
|
||||
update: {
|
||||
email: creds.email,
|
||||
password: creds.encryptedPassword || 'encrypted_placeholder',
|
||||
host: creds.host,
|
||||
port: creds.port,
|
||||
// Optional fields
|
||||
...(creds.secure !== undefined && { secure: creds.secure }),
|
||||
...(creds.smtp_host && { smtp_host: creds.smtp_host }),
|
||||
...(creds.smtp_port && { smtp_port: creds.smtp_port }),
|
||||
...(creds.smtp_secure !== undefined && { smtp_secure: creds.smtp_secure }),
|
||||
...(creds.display_name && { display_name: creds.display_name }),
|
||||
...(creds.color && { color: creds.color })
|
||||
},
|
||||
create: {
|
||||
// Find existing credentials first
|
||||
const existingCredentials = await prisma.mailCredentials.findFirst({
|
||||
where: {
|
||||
userId,
|
||||
email: creds.email,
|
||||
password: creds.encryptedPassword || 'encrypted_placeholder',
|
||||
host: creds.host,
|
||||
port: creds.port,
|
||||
// Optional fields
|
||||
...(creds.secure !== undefined && { secure: creds.secure }),
|
||||
...(creds.smtp_host && { smtp_host: creds.smtp_host }),
|
||||
...(creds.smtp_port && { smtp_port: creds.smtp_port }),
|
||||
...(creds.smtp_secure !== undefined && { smtp_secure: creds.smtp_secure }),
|
||||
...(creds.display_name && { display_name: creds.display_name }),
|
||||
...(creds.color && { color: creds.color })
|
||||
email: creds.email
|
||||
}
|
||||
});
|
||||
|
||||
if (existingCredentials) {
|
||||
// Update existing credentials
|
||||
await prisma.mailCredentials.update({
|
||||
where: { id: existingCredentials.id },
|
||||
data: {
|
||||
password: creds.encryptedPassword || 'encrypted_placeholder',
|
||||
host: creds.host,
|
||||
port: creds.port,
|
||||
// Optional fields
|
||||
...(creds.secure !== undefined && { secure: creds.secure }),
|
||||
...(creds.smtp_host && { smtp_host: creds.smtp_host }),
|
||||
...(creds.smtp_port && { smtp_port: creds.smtp_port }),
|
||||
...(creds.smtp_secure !== undefined && { smtp_secure: creds.smtp_secure }),
|
||||
...(creds.display_name && { display_name: creds.display_name }),
|
||||
...(creds.color && { color: creds.color })
|
||||
}
|
||||
});
|
||||
} else {
|
||||
// Create new credentials
|
||||
await prisma.mailCredentials.create({
|
||||
data: {
|
||||
userId,
|
||||
email: creds.email,
|
||||
password: creds.encryptedPassword || 'encrypted_placeholder',
|
||||
host: creds.host,
|
||||
port: creds.port,
|
||||
// Optional fields
|
||||
...(creds.secure !== undefined && { secure: creds.secure }),
|
||||
...(creds.smtp_host && { smtp_host: creds.smtp_host }),
|
||||
...(creds.smtp_port && { smtp_port: creds.smtp_port }),
|
||||
...(creds.smtp_secure !== undefined && { smtp_secure: creds.smtp_secure }),
|
||||
...(creds.display_name && { display_name: creds.display_name }),
|
||||
...(creds.color && { color: creds.color })
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
results.success++;
|
||||
console.log(`Successfully restored credentials for user ${userId}`);
|
||||
|
||||
Loading…
Reference in New Issue
Block a user