import React, { useState, useEffect } from 'react'; import { Icons } from '../components/IconSet'; import { authService } from '../services/AuthService'; interface AdminPageProps { onBack: () => void; } const EditNpcCitizenCard: React.FC<{ citizen: any; onUpdate: () => void; onError: (error: string) => void }> = ({ citizen, onUpdate, onError }) => { const [isEditing, setIsEditing] = useState(false); const [formData, setFormData] = useState({ username: citizen.username, tags: citizen.tags.join(', '), role: citizen.stats.role, organizationId: citizen.stats.organizationId || '', storyMarkdown: citizen.storyMarkdown || '' }); const [loading, setLoading] = useState(false); const handleSave = async () => { try { setLoading(true); const response = await fetch(`https://vollidioten.ceraticsoft.de/api/players/${citizen.uuid}`, { method: 'PUT', headers: { 'Content-Type': 'application/json' }, credentials: 'include', body: JSON.stringify({ tags: formData.tags.split(',').map(tag => tag.trim()).filter(tag => tag.length > 0), organizationId: formData.organizationId || null, storyMarkdown: formData.storyMarkdown.trim() || null }) }); if (response.ok) { setIsEditing(false); onUpdate(); } else { const errorData = await response.json(); onError(errorData.error || response.json()); } } catch (err) { console.error('Error updating NPC citizen:', err); onError('Netzwerkfehler'); } finally { setLoading(false); } }; if (isEditing) { return (
{citizen.stats.role}
Verwalte die Produkte dieses Shops
Noch keine Artikel im Shop.
{item.description}
{company.category}
Sie haben keine Berechtigung, auf die Admin-Funktionen zuzugreifen.
Verwaltung von NPCs und System-Einstellungen
{error}
Erstellte NPCs
Erstellte Unternehmen
Admin-Berechtigung
Keine NPC-Bürger vorhanden.
) : ({citizen.stats.role}
Keine NPC-Firmen vorhanden.
) : ({company.description}
Keine NPC-Bürger vorhanden.
) : (Keine NPC-Firmen vorhanden.
) : (Keine Städte vorhanden.
) : (Gegr. {city.establishedYear}
{city.description}
Banner
Logo