diff --git a/pages/admin.vue b/pages/admin.vue index e8c2c18..e7b8712 100644 --- a/pages/admin.vue +++ b/pages/admin.vue @@ -535,6 +535,11 @@ async function handleSubmit() { body }) success.value = 'Sermon updated successfully!' + + // Refresh sermon list + await refreshSermons() + + // Don't redirect or reset form when editing - stay on page with success message } else { // Create new sermon await $fetch('/api/sermons', { @@ -542,25 +547,25 @@ async function handleSubmit() { body }) success.value = 'Sermon created successfully!' - } - - // Reset form - editingSermonId.value = null - formData.value = { - date: '', - title: '', - personal_appliance: '', - pastors_challenge: '' - } - bibleReferences.value = [{ version: 'ESV', reference: '', text: '' }] - - // Refresh sermon list - await refreshSermons() - // Redirect after 2 seconds - setTimeout(() => { - navigateTo('/') - }, 2000) + // Reset form + editingSermonId.value = null + formData.value = { + date: '', + title: '', + personal_appliance: '', + pastors_challenge: '' + } + bibleReferences.value = [{ version: 'ESV', reference: '', text: '' }] + + // Refresh sermon list + await refreshSermons() + + // Redirect after 2 seconds + setTimeout(() => { + navigateTo('/') + }, 2000) + } } catch (e: any) { error.value = e.data?.message || `Failed to ${editingSermonId.value ? 'update' : 'create'} sermon` } finally {