build fix

This commit is contained in:
alma 2025-05-05 12:20:41 +02:00
parent be51107b1b
commit 80697b4e13
3 changed files with 64 additions and 6 deletions

View File

@ -10,13 +10,11 @@ const menuItems = {
missions: "https://example.com/missions"
}
type PageProps = {
params: {
section: string;
};
};
interface SectionParams {
section: string;
}
export default async function SectionPage({ params }: PageProps) {
export default async function SectionPage({ params }: { params: SectionParams }) {
const section = params?.section ? String(params.section) : '';
const iframeUrl = menuItems[section as keyof typeof menuItems];

View File

@ -20,6 +20,20 @@ services:
- "6379:6379"
volumes:
- redis_data:/data
app:
build:
context: .
dockerfile: Dockerfile
restart: always
ports:
- "3000:3000"
depends_on:
- db
- redis
environment:
- DATABASE_URL=postgresql://postgres:postgres@db:5432/calendar_db
- REDIS_URL=redis://:mySecretPassword@redis:6379
volumes:
db:

View File

@ -1379,4 +1379,50 @@ export async function testEmailConnection(credentials: EmailCredentials): Promis
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;
}
}