Checkpoint: Ajout du bouton "Vérifier maintenant" pour forcer une vérification immédiate des emails sans attendre le prochain cycle automatique.

This commit is contained in:
Manus
2026-02-11 05:52:56 -05:00
parent fcf9e8f7b7
commit 2715c9e0c7
7 changed files with 139 additions and 3 deletions

View File

@@ -442,6 +442,40 @@ export function isEmailImportServiceRunning(userId: number): boolean {
return activeIntervals.has(userId);
}
/**
* Manually trigger an immediate email check for a user
*/
export async function triggerEmailCheck(userId: number): Promise<{ success: boolean; message: string }> {
try {
// Get user's import settings
const settings = await getImportSettingsByUser(userId);
if (!settings || settings.emailImportEnabled !== 1) {
return { success: false, message: "Import par email non activ\u00e9" };
}
if (!settings.emailImportAddress || !settings.emailImportPassword || !settings.emailImportHost) {
return { success: false, message: "Configuration IMAP incompl\u00e8te" };
}
const config: EmailImportConfig = {
userId,
emailAddress: settings.emailImportAddress,
password: settings.emailImportPassword,
host: settings.emailImportHost,
port: settings.emailImportPort || 993,
};
console.log(`[EmailImport] Manual check triggered for user ${userId}`);
await checkEmailsForPDFs(config);
return { success: true, message: "V\u00e9rification termin\u00e9e avec succ\u00e8s" };
} catch (error: any) {
console.error(`[EmailImport] Error during manual check for user ${userId}:`, error);
return { success: false, message: `Erreur: ${error.message}` };
}
}
/**
* Stop all email import services
*/