@extends('layouts.app') @php /* -------------------------------------------------------------- Anzeige-Sprache aus dem ersten URL-Segment (/de|/en); Standard = de. Route::dispatch biegt request() nicht um -> nur über segment(1). -------------------------------------------------------------- */ $siteLocale = in_array(request()->segment(1), ['de', 'en'], true) ? request()->segment(1) : 'de'; $en = $siteLocale === 'en'; $t = fn ($de, $enText) => $en ? $enText : $de; $lp = $en ? 'en/' : ''; $items = $products ?? []; $count = count($items); /* Kurze, pro-Tool individuelle Beschreibungen (DE | EN). Verhindert die identische Zeile auf jeder Kachel. Fallback = generisch. */ $winDesc = [ 'kotsch-cleaner' => ['System aufräumen & Ballast entfernen.', 'Clean up the system & remove clutter.'], 'cleaner' => ['System aufräumen & Ballast entfernen.', 'Clean up the system & remove clutter.'], 'commander' => ['Zweispaltiger Datei-Manager im Retro-Look.', 'Dual-pane file manager, retro style.'], 'taskmanager' => ['Prozesse & Auslastung live im Blick.', 'Watch processes & load in real time.'], 'codeeditor' => ['Leichter Code-Editor mit Syntax-Highlight.', 'Lightweight code editor with highlighting.'], 'notes' => ['Schnelle Notizen, direkt im Fenster.', 'Quick notes, right inside the window.'], 'lumina-stream' => ['Medien-Streaming-Oberfläche als Demo.', 'Media-streaming interface demo.'], 'pruefmittel-manager' => ['Prüfmittel verwalten & Fristen tracken.', 'Manage test equipment & track due dates.'], 'de-companion' => ['Begleiter-Tool für den Alltag.', 'A companion tool for everyday tasks.'], ]; $winDescFallback = ['Eigenes Windows-Tool — Demo öffnen.', 'Custom Windows tool — open the demo.']; /* Funktions-Kategorie je Tool (Header-Filter + Tabs). Fallback = productivity. */ $winCat = [ 'kotsch-cleaner' => 'system', 'cleaner' => 'system', 'commander' => 'system', 'taskmanager' => 'system', 'codeeditor' => 'productivity', 'notes' => 'productivity', 'pruefmittel-manager' => 'productivity', 'de-companion' => 'productivity', 'lumina-stream' => 'media', ]; @endphp @section('title', $t('Windows-Tools & Apps | Arthur Kotsch', 'Windows Tools & Apps | Arthur Kotsch')) @section('meta_description', $t('Eigene Windows-Tools und Experimente von Arthur Kotsch — jede App als Live-Vorschau im Mini-Fenster, direkt im Browser bedienbar.', 'Custom Windows tools and experiments by Arthur Kotsch — every app as a live preview inside a mini window, runnable right in the browser.')) @section('content') {{-- ============================================================= HERO ============================================================= --}}
{{ $t('Windows · Desktop-Software', 'Windows · Desktop Software') }}

{{ $t('Windows-Tools,', 'Windows tools,') }} {{ $t('live im Fenster.', 'live in the window.') }}

{{ $t('Eigene Desktop-Tools und Experimente für Windows — jede Kachel zeigt die App als echte', 'Custom desktop tools and experiments for Windows — every tile shows the app as a real') }} {{ $t('Live-Vorschau', 'live preview') }}{{ $t(', direkt im Browser.', ', right in your browser.') }}

@if($count > 0) @php $liveLabel = $t($count === 1 ? 'App live' : 'Apps live', $count === 1 ? 'app live' : 'apps live'); @endphp {{ $count }} {{ $liveLabel }} @endif
{{-- ============================================================= LIVE-PREVIEW GRID ============================================================= --}}
@if($count > 0) {{-- Abschnitts-Überschrift hält die Hierarchie lückenlos (h1 -> h2 -> h3). --}}

{{ $t('Alle Tools', 'All tools') }}

{{-- Suche + Funktions-Kategorien (synchron mit den Header-Links via #cat=). --}}
@foreach($items as $product) @php $slug = $product['slug']; $name = $product['name']; $cat = $winCat[$slug] ?? 'productivity'; $nameLower = \Illuminate\Support\Str::lower($name); $href = '/' . $lp . 'windows/' . $slug; /* Vorschau ebenfalls lokalisiert, damit die EN-Seite keine DE-Vorschau einbettet. */ $previewSrc = '/' . $lp . 'windows/' . $slug . '?view=monitor'; $ariaLabel = $t('Details zu', 'Details for') . ' ' . $name; $descPair = $winDesc[$slug] ?? $winDescFallback; $desc = $t($descPair[0], $descPair[1]); $previewTitle = $t('Live-Vorschau von', 'Live preview of') . ' ' . $name; @endphp @endforeach
@else

{{ $t('Noch keine Module', 'No modules yet') }}

{{ $t('Hier erscheinen die Windows-Tools, sobald sie verfügbar sind.', 'Windows tools will appear here once they are available.') }}

@endif
@endsection