fix(setup): make SMTP optional and adjust setup check

This commit is contained in:
DanielS
2026-08-11 17:27:14 +02:00
parent 1478c61ea8
commit 866c5522f2
2 changed files with 24 additions and 24 deletions

View File

@@ -44,14 +44,13 @@ export function SetupWizard() {
adminForm.firstName.trim().length > 0 &&
adminForm.lastName.trim().length > 0
// Validation checks for SMTP form
// Validation checks for SMTP form (optional step)
const isSmtpFormValid =
smtpForm.host.trim().length > 0 &&
!isNaN(Number(smtpForm.port)) &&
smtpForm.user.trim().length > 0
smtpForm.host.trim().length === 0 ||
(!isNaN(Number(smtpForm.port)) && smtpForm.user.trim().length > 0)
const handleFinishSetup = async () => {
if (!isAdminFormValid || !isSmtpFormValid) return
if (!isAdminFormValid) return
setLoading(true)
setErrorMsg('')

View File

@@ -34,10 +34,10 @@ export async function isSetupNeeded(): Promise<boolean> {
if (authError) {
console.error('Error checking auth users list:', authError)
return false
return true
}
if (authData.users.length > 0) {
if (authData && authData.users && authData.users.length > 0) {
return false
}
@@ -48,13 +48,13 @@ export async function isSetupNeeded(): Promise<boolean> {
if (dbError) {
console.error('Error checking users table status:', dbError)
return false
return true
}
return count === 0
} catch (e) {
console.error('Exception checking setup status:', e)
return false
return true
}
}
@@ -113,22 +113,23 @@ export async function completeSetup(
console.error('Error updating admin profile:', profileError)
}
// 5. Store SMTP configuration in public.settings
const { error: smtpError } = await admin
.from('settings')
.upsert({
id: 'smtp',
host: smtpData.host,
port: smtpData.port,
secure: smtpData.secure,
user: smtpData.user,
pass: smtpData.pass,
updated_at: new Date().toISOString(),
})
// 5. Store SMTP configuration in public.settings (optional)
if (smtpData.host && smtpData.host.trim().length > 0) {
const { error: smtpError } = await admin
.from('settings')
.upsert({
id: 'smtp',
host: smtpData.host,
port: smtpData.port,
secure: smtpData.secure,
user: smtpData.user,
pass: smtpData.pass,
updated_at: new Date().toISOString(),
})
if (smtpError) {
console.error('Error saving SMTP settings:', smtpError)
return { success: false, error: `Fehler beim Speichern der SMTP-Einstellungen: ${smtpError.message}` }
if (smtpError) {
console.error('Error saving SMTP settings:', smtpError)
}
}
revalidatePath('/')