diff --git a/frontend/src/pages/AdminTrainingTypesPage.jsx b/frontend/src/pages/AdminTrainingTypesPage.jsx index 77b3bd8..90d5e50 100644 --- a/frontend/src/pages/AdminTrainingTypesPage.jsx +++ b/frontend/src/pages/AdminTrainingTypesPage.jsx @@ -189,20 +189,8 @@ export default function AdminTrainingTypesPage() { )} - {/* Profile Builder */} - {editingProfileId && ( -
- t.id === editingProfileId)} - parameters={parameters} - onSave={handleSaveProfile} - onCancel={cancelEditProfile} - /> -
- )} - - {/* Edit form */} - {editingId && formData && ( + {/* Edit form (only for new type creation, at top) */} + {editingId === 'new' && formData && (
{editingId === 'new' ? '➕ Neuer Trainingstyp' : '✏️ Trainingstyp bearbeiten'} @@ -360,79 +348,182 @@ export default function AdminTrainingTypesPage() {
{catTypes.sort((a, b) => a.sort_order - b.sort_order).map(type => ( -
-
{type.icon}
-
-
- {type.name_de} / {type.name_en} - {type.profile && ( - - ✓ Profil - +
+ {/* Type Row */} +
+
{type.icon}
+
+
+ {type.name_de} / {type.name_en} + {type.profile && ( + + ✓ Profil + + )} +
+ {type.subcategory && ( +
+ Subkategorie: {type.subcategory} +
)}
- {type.subcategory && ( -
- Subkategorie: {type.subcategory} -
- )} + + +
- - - + + {/* Inline Profile Builder */} + {editingProfileId === type.id && ( +
+ +
+ )} + + {/* Inline Type Editor */} + {editingId === type.id && formData && ( +
+
✏️ Trainingstyp bearbeiten
+
+
+
Kategorie *
+ +
+ +
+
Subkategorie
+ setFormData({ ...formData, subcategory: e.target.value })} + placeholder="z.B. running, hypertrophy, meditation" + style={{ width: '100%' }} + /> +
+ +
+
Name (Deutsch) *
+ setFormData({ ...formData, name_de: e.target.value })} + placeholder="z.B. Laufen" + style={{ width: '100%' }} + /> +
+ +
+
Name (English) *
+ setFormData({ ...formData, name_en: e.target.value })} + placeholder="e.g. Running" + style={{ width: '100%' }} + /> +
+ +
+
Icon (Emoji)
+ setFormData({ ...formData, icon: e.target.value })} + placeholder="🏃" + maxLength={10} + style={{ width: '100%' }} + /> +
+ +
+
Sortierung
+ setFormData({ ...formData, sort_order: parseInt(e.target.value) })} + style={{ width: '100%' }} + /> +
+ +
+ + +
+
+
+ )}
))}