diff --git a/app/admin/page.tsx b/app/admin/page.tsx
index 6ad32c8..b280518 100644
--- a/app/admin/page.tsx
+++ b/app/admin/page.tsx
@@ -14,7 +14,6 @@ import {
} from '@/lib/api';
import Header from '@/components/header';
import Link from 'next/link';
-import SettingsSection from '@/components/admin/SettingsSection';
import ItemCard from '@/components/admin/ItemCard';
import ItemForm from '@/components/admin/ItemForm';
import ImageUpload from '@/components/image-upload';
@@ -42,7 +41,7 @@ function AdminPageContent() {
homepageSubtext: '',
});
- // Wishlist edit state
+ // Unified config edit state
const [isEditingWishlist, setIsEditingWishlist] = useState(false);
const [editForm, setEditForm] = useState({
name: '',
@@ -51,6 +50,8 @@ function AdminPageContent() {
preferences: '',
imageUrl: '',
isPublic: true,
+ siteTitle: '',
+ homepageSubtext: '',
});
const [editError, setEditError] = useState('');
const [isWishlistImageUploading, setIsWishlistImageUploading] = useState(false);
@@ -105,6 +106,8 @@ function AdminPageContent() {
preferences: wishlist.preferences || '',
imageUrl: wishlist.imageUrl || '',
isPublic: wishlist.isPublic,
+ siteTitle: settings.siteTitle,
+ homepageSubtext: settings.homepageSubtext,
});
setEditError('');
setIsEditingWishlist(true);
@@ -115,11 +118,16 @@ function AdminPageContent() {
if (!wishlist) return;
setEditError('');
try {
- const updated = await wishlistsApi.update(wishlist.id, editForm);
+ const { siteTitle, homepageSubtext, ...wishlistFields } = editForm;
+ const [updated] = await Promise.all([
+ wishlistsApi.update(wishlist.id, wishlistFields),
+ settingsApi.updateSettings({ siteTitle, homepageSubtext }),
+ ]);
setWishlist(updated);
+ setSettings({ siteTitle, homepageSubtext });
setIsEditingWishlist(false);
} catch (error: any) {
- setEditError(error.message || 'Failed to update wishlist');
+ setEditError(error.message || 'Failed to update settings');
}
};
@@ -181,10 +189,6 @@ function AdminPageContent() {
}
};
- const handleUpdateSettings = async (updatedSettings: Settings) => {
- await settingsApi.updateSettings(updatedSettings);
- setSettings(updatedSettings);
- };
const editingItem = items.find((item) => item.id === editingItemId);
@@ -229,55 +233,72 @@ function AdminPageContent() {
) : (
<>
- {/* Settings Section */}
-