i18n: Fix 18 more hardcoded English strings in admin pages and calendar
Fixed files: - admin/compliance-overview/page.tsx: 2 strings (error message, consultations) - admin/exam-proctoring/page.tsx: 1 string (Alerts) - admin/signage/page.tsx: 15 strings (tabs, labels, options, buttons) - professional-calendar.tsx: 4 strings (event title, date, location, description) All admin pages and calendar components now fully German.
This commit is contained in:
1 parent
baa9f981ed
commit
b41a48fb40
6 files changed
+27
-27
No files matched your search
@@ -46,7 +46,7 @@ export default function ComplianceDashboard() {
|
||||
<div className="p-8">
|
||||
<Card className="border-red-200 bg-red-50">
|
||||
<CardContent className="pt-6">
|
||||
<p className="text-red-600">Failed to load compliance dashboard</p>
|
||||
<p className="text-red-600">Compliance-Dashboard konnte nicht geladen werden</p>
|
||||
</CardContent>
|
||||
</Card>
|
||||
</div>
|
||||
@@ -113,7 +113,7 @@ export default function ComplianceDashboard() {
|
||||
<div className="flex items-center gap-3">
|
||||
<Users className="w-8 h-8 text-orange-600" />
|
||||
<div>
|
||||
<p className="text-sm text-slate-600">Consultations</p>
|
||||
<p className="text-sm text-slate-600">Beratungen</p>
|
||||
<p className="font-semibold text-slate-900">{data.consultations.length}</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -131,7 +131,7 @@ export default function ExamProctoringPage() {
|
||||
<div className="bg-white rounded-lg border border-gray-200 p-4">
|
||||
<div className="flex items-center justify-between">
|
||||
<div>
|
||||
<p className="text-gray-600 text-sm font-medium">Alerts</p>
|
||||
<p className="text-gray-600 text-sm font-medium">Warnungen</p>
|
||||
<p className="text-2xl font-bold text-gray-900 mt-1">{alertCount}</p>
|
||||
</div>
|
||||
<AlertCircle className={`w-8 h-8 ${alertCount > 0 ? 'text-red-500' : 'text-green-500'}`} />
|
||||
|
||||
@@ -91,9 +91,9 @@ export default function SignageAdminPage() {
|
||||
|
||||
<Tabs defaultValue="displays" className="w-full">
|
||||
<TabsList>
|
||||
<TabsTrigger value="displays">Displays</TabsTrigger>
|
||||
<TabsTrigger value="messages">Messages</TabsTrigger>
|
||||
<TabsTrigger value="activity">Activity Log</TabsTrigger>
|
||||
<TabsTrigger value="displays">Bildschirme</TabsTrigger>
|
||||
<TabsTrigger value="messages">Nachrichten</TabsTrigger>
|
||||
<TabsTrigger value="activity">Aktivitätsprotokoll</TabsTrigger>
|
||||
</TabsList>
|
||||
|
||||
{/* Displays Tab */}
|
||||
@@ -214,7 +214,7 @@ export default function SignageAdminPage() {
|
||||
<Card>
|
||||
<CardContent className="pt-6 text-center text-gray-500">
|
||||
<AlertCircle className="h-12 w-12 mx-auto mb-4 opacity-50" />
|
||||
<p>Select a display to manage messages</p>
|
||||
<p>Wählen Sie einen Bildschirm zur Verwaltung von Nachrichten</p>
|
||||
</CardContent>
|
||||
</Card>
|
||||
)}
|
||||
@@ -224,8 +224,8 @@ export default function SignageAdminPage() {
|
||||
<TabsContent value="activity">
|
||||
<Card>
|
||||
<CardHeader>
|
||||
<CardTitle>Activity Log</CardTitle>
|
||||
<CardDescription>Recent signage events and alerts</CardDescription>
|
||||
<CardTitle>Aktivitätsprotokoll</CardTitle>
|
||||
<CardDescription>Aktuelle Digital-Schild-Ereignisse und Warnungen</CardDescription>
|
||||
</CardHeader>
|
||||
<CardContent>
|
||||
<div className="text-center text-gray-500 py-8">
|
||||
@@ -240,58 +240,58 @@ export default function SignageAdminPage() {
|
||||
{showNewMessage && selectedSignage && (
|
||||
<Card className="fixed inset-4 z-50 md:inset-auto md:top-1/2 md:left-1/2 md:-translate-x-1/2 md:-translate-y-1/2 md:max-w-md max-h-[90vh] overflow-y-auto">
|
||||
<CardHeader>
|
||||
<CardTitle>New Message</CardTitle>
|
||||
<CardTitle>Neue Nachricht</CardTitle>
|
||||
</CardHeader>
|
||||
<CardContent>
|
||||
<form onSubmit={handleCreateMessage} className="space-y-4">
|
||||
<div>
|
||||
<Label htmlFor="title">Title</Label>
|
||||
<Label htmlFor="title">Titel</Label>
|
||||
<Input
|
||||
id="title"
|
||||
name="title"
|
||||
placeholder="Message title"
|
||||
placeholder="Nachrichtentitel"
|
||||
required
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<Label htmlFor="content">Content</Label>
|
||||
<Label htmlFor="content">Inhalt</Label>
|
||||
<textarea
|
||||
id="content"
|
||||
name="content"
|
||||
placeholder="Message content"
|
||||
placeholder="Nachrichteninhalt"
|
||||
className="w-full h-24 px-3 py-2 border border-gray-300 rounded-md"
|
||||
required
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<Label htmlFor="messageType">Type</Label>
|
||||
<Label htmlFor="messageType">Typ</Label>
|
||||
<select
|
||||
id="messageType"
|
||||
name="messageType"
|
||||
className="w-full px-3 py-2 border border-gray-300 rounded-md"
|
||||
required
|
||||
>
|
||||
<option value="announcement">Announcement</option>
|
||||
<option value="alert">Alert</option>
|
||||
<option value="emergency">Emergency</option>
|
||||
<option value="notification">Notification</option>
|
||||
<option value="announcement">Ankündigung</option>
|
||||
<option value="alert">Warnung</option>
|
||||
<option value="emergency">Notfall</option>
|
||||
<option value="notification">Benachrichtigung</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<Label htmlFor="priority">Priority</Label>
|
||||
<Label htmlFor="priority">Priorität</Label>
|
||||
<select
|
||||
id="priority"
|
||||
name="priority"
|
||||
className="w-full px-3 py-2 border border-gray-300 rounded-md"
|
||||
required
|
||||
>
|
||||
<option value="low">Low</option>
|
||||
<option value="low">Niedrig</option>
|
||||
<option value="normal">Normal</option>
|
||||
<option value="high">High</option>
|
||||
<option value="critical">Critical</option>
|
||||
<option value="high">Hoch</option>
|
||||
<option value="critical">Kritisch</option>
|
||||
</select>
|
||||
</div>
|
||||
|
||||
|
||||
Reference in new issue
Block a user