stabile version
This commit is contained in:
@@ -70,7 +70,9 @@ export default function EditCompanyPage() {
|
||||
setTitleImageUrl(imgs[0] || null);
|
||||
setOtherImageUrls(imgs.slice(1));
|
||||
} catch (err) {
|
||||
setError(err.response?.data || 'Fehler beim Laden');
|
||||
// ✅ err.response.data kann ein Objekt sein → .error extrahieren
|
||||
const serverMessage = err.response?.data?.error || err.response?.data;
|
||||
setError(typeof serverMessage === 'string' ? serverMessage : 'Fehler beim Laden');
|
||||
}
|
||||
};
|
||||
fetchData();
|
||||
@@ -143,9 +145,15 @@ export default function EditCompanyPage() {
|
||||
await axiosInstance.put(`/company/${id}`, formData, {
|
||||
headers: { 'Content-Type': undefined }
|
||||
});
|
||||
|
||||
navigate('/companies');
|
||||
} catch (err) {
|
||||
setError(err.response?.data || 'Fehler beim Speichern');
|
||||
// ✅ Fehlermeldung korrekt aus Axios-Response extrahieren
|
||||
const serverMessage = err.response?.data?.error || err.response?.data;
|
||||
const message = typeof serverMessage === 'string'
|
||||
? serverMessage
|
||||
: err.message || 'Fehler beim Speichern';
|
||||
setError(message);
|
||||
setSaving(false);
|
||||
}
|
||||
};
|
||||
@@ -165,8 +173,11 @@ export default function EditCompanyPage() {
|
||||
<CardContent sx={{ p: 3 }}>
|
||||
<Box component="form" onSubmit={handleSubmit}>
|
||||
<Stack spacing={3}>
|
||||
{error && <Alert severity="error">{error}</Alert>}
|
||||
|
||||
{error && (
|
||||
<Alert severity="error">
|
||||
{typeof error === 'string' ? error : JSON.stringify(error)}
|
||||
</Alert>
|
||||
)}
|
||||
<TextField label="Name" value={name} fullWidth InputProps={{ readOnly: true }} helperText="Der Name kann nicht geändert werden." />
|
||||
<TextField label="Beschreibung" name="description" value={form.description} onChange={handleChange} required fullWidth autoFocus multiline rows={6} />
|
||||
<TextField label="Telefonnummer" name="phone" value={form.phone} onChange={handleChange} required fullWidth />
|
||||
@@ -224,7 +235,6 @@ export default function EditCompanyPage() {
|
||||
<Typography variant="body2" color="text.secondary" sx={{ overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }}>
|
||||
{titleImageFile ? titleImageFile.name : titleImageUrl}
|
||||
</Typography>
|
||||
{/* Titelbild tauschen ohne zu löschen */}
|
||||
<Button
|
||||
component="label"
|
||||
size="small"
|
||||
@@ -261,7 +271,6 @@ export default function EditCompanyPage() {
|
||||
</Typography>
|
||||
|
||||
<Stack spacing={1.5}>
|
||||
{/* Bestehende weitere Bilder */}
|
||||
{otherImageUrls.map((src, i) => (
|
||||
<Box
|
||||
key={`existing-${i}`}
|
||||
@@ -287,7 +296,6 @@ export default function EditCompanyPage() {
|
||||
</Box>
|
||||
))}
|
||||
|
||||
{/* Neu hinzugefügte weitere Bilder */}
|
||||
{otherPreviews.map((src, i) => (
|
||||
<Box
|
||||
key={`new-${i}`}
|
||||
|
||||
Reference in New Issue
Block a user