build fix
This commit is contained in:
parent
4d66c6f21e
commit
6783e9700b
@ -1379,4 +1379,50 @@ export async function testEmailConnection(credentials: EmailCredentials): Promis
|
|||||||
error: `IMAP connection failed: ${error instanceof Error ? error.message : 'Unknown error'}`
|
error: `IMAP connection failed: ${error instanceof Error ? error.message : 'Unknown error'}`
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Force recaching of user credentials
|
||||||
|
* This function is used to refresh credentials in Redis cache
|
||||||
|
*/
|
||||||
|
export async function forceRecacheUserCredentials(userId: string): Promise<boolean> {
|
||||||
|
try {
|
||||||
|
// Get credentials from database
|
||||||
|
const accounts = await prisma.mailCredentials.findMany({
|
||||||
|
where: { userId }
|
||||||
|
});
|
||||||
|
|
||||||
|
if (!accounts || accounts.length === 0) {
|
||||||
|
console.log(`No email accounts found for user ${userId}`);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Recache each account's credentials
|
||||||
|
for (const account of accounts) {
|
||||||
|
const credentials: EmailCredentials = {
|
||||||
|
host: account.host,
|
||||||
|
port: account.port,
|
||||||
|
email: account.email,
|
||||||
|
password: account.password,
|
||||||
|
secure: account.secure,
|
||||||
|
smtp_host: account.smtp_host || undefined,
|
||||||
|
smtp_port: account.smtp_port || undefined,
|
||||||
|
smtp_secure: account.smtp_secure || undefined,
|
||||||
|
display_name: account.display_name || undefined,
|
||||||
|
color: account.color || undefined
|
||||||
|
};
|
||||||
|
|
||||||
|
await cacheEmailCredentials(userId, account.id, credentials);
|
||||||
|
console.log(`Recached credentials for user ${userId}, account ${account.id}`);
|
||||||
|
|
||||||
|
// Invalidate other caches related to this account
|
||||||
|
await invalidateFolderCache(userId, account.id, '*');
|
||||||
|
await invalidateEmailContentCache(userId, account.id, '*');
|
||||||
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
|
} catch (error) {
|
||||||
|
console.error(`Error recaching credentials for user ${userId}:`, error);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
Loading…
Reference in New Issue
Block a user