build fix
This commit is contained in:
parent
907adf3f87
commit
c334e02da9
@ -78,38 +78,51 @@ export async function GET(request: Request) {
|
|||||||
console.log(`Created placeholder user ${userId}`);
|
console.log(`Created placeholder user ${userId}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Upsert credentials in database
|
// Find existing credentials first
|
||||||
await prisma.mailCredentials.upsert({
|
const existingCredentials = await prisma.mailCredentials.findFirst({
|
||||||
where: { userId },
|
where: {
|
||||||
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: {
|
|
||||||
userId,
|
userId,
|
||||||
email: creds.email,
|
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 })
|
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
|
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++;
|
results.success++;
|
||||||
console.log(`Successfully restored credentials for user ${userId}`);
|
console.log(`Successfully restored credentials for user ${userId}`);
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user