Backup #422

ID422
Dateipfad/var/www/dev.campus.systemische-tools.de/src/View/content-pipeline/show.php
Version2
Typ modified
Größe4.3 KB
Hash7180fd789fae1f981a8bdadc41012de31ebbb48b60a8471ceccb25085d7b667a
Datum2025-12-22 09:57:51
Geändert vonclaude-code-hook
GrundClaude Code Pre-Hook Backup vor Edit-Operation
Datei existiert Ja

Dateiinhalt

<?php ob_start(); ?>

<h1>Pipeline: <?= htmlspecialchars($pipeline['name']) ?></h1>

<?php if ($pipeline['is_default']): ?>
<span class="badge badge--success">Standard-Pipeline</span>
<?php endif; ?>

<div class="page-actions">
    <a href="/content-pipeline/<?= $pipeline['id'] ?>/edit" class="btn btn--secondary">Bearbeiten</a>
    <form action="/content-pipeline/<?= $pipeline['id'] ?>/run" method="POST" style="display:inline;">
        <input type="hidden" name="_csrf" value="<?= htmlspecialchars($_SESSION['_csrf_token'] ?? '') ?>">
        <button type="submit" class="btn btn--primary">Pipeline starten</button>
    </form>
</div>

<?php if ($pipeline['description']): ?>
<p><?= htmlspecialchars($pipeline['description']) ?></p>
<?php endif; ?>

<div class="info-grid">
    <div class="info-item">
        <span class="info-label">Quelle</span>
        <span class="info-value"><?= htmlspecialchars($pipeline['source_path']) ?></span>
    </div>
    <div class="info-item">
        <span class="info-label">Dateitypen</span>
        <span class="info-value"><?= implode(', ', $pipeline['extensions'] ?? []) ?></span>
    </div>
    <div class="info-item">
        <span class="info-label">Erstellt</span>
        <span class="info-value"><?= $pipeline['created_at'] ?? '-' ?></span>
    </div>
    <div class="info-item">
        <span class="info-label">Aktualisiert</span>
        <span class="info-value"><?= $pipeline['updated_at'] ?? '-' ?></span>
    </div>
</div>

<h2>Pipeline-Schritte</h2>

<table>
    <thead>
        <tr>
            <th>#</th>
            <th>Schritt</th>
            <th>Phase</th>
            <th>Konfiguration</th>
        </tr>
    </thead>
    <tbody>
        <?php foreach ($pipeline['steps'] as $step): ?>
        <?php $meta = $stepTypes[$step['step_type']] ?? ['label' => $step['step_type'], 'description' => '', 'phase' => '-']; ?>
        <tr>
            <td><?= $step['sort_order'] ?></td>
            <td>
                <strong><?= $meta['label'] ?></strong>
                <br>
                <small><?= $meta['description'] ?></small>
            </td>
            <td><?= $meta['phase'] ?></td>
            <td>
                <?php if ($step['config']): ?>
                <code><?= htmlspecialchars(json_encode($step['config'], JSON_PRETTY_PRINT | JSON_UNESCAPED_UNICODE)) ?></code>
                <?php else: ?>
                <span class="text-muted">-</span>
                <?php endif; ?>
            </td>
        </tr>
        <?php endforeach; ?>
    </tbody>
</table>

<h2>Ausführungen</h2>

<?php if (!empty($runs)): ?>
<table>
    <thead>
        <tr>
            <th>ID</th>
            <th>Status</th>
            <th>Gestartet</th>
            <th>Beendet</th>
            <th>Dokumente</th>
            <th>Chunks</th>
        </tr>
    </thead>
    <tbody>
        <?php foreach ($runs as $run): ?>
        <tr>
            <td>#<?= $run['id'] ?></td>
            <td>
                <span class="badge badge--<?= $run['status'] === 'completed' ? 'success' : ($run['status'] === 'failed' ? 'danger' : ($run['status'] === 'running' ? 'warning' : 'muted')) ?>">
                    <?= $run['status'] ?>
                </span>
            </td>
            <td><?= $run['started_at'] ?? '-' ?></td>
            <td><?= $run['completed_at'] ?? '-' ?></td>
            <td>
                <?= $run['documents_processed'] ?? 0 ?>/<?= $run['documents_total'] ?? 0 ?>
                <?php if (($run['documents_failed'] ?? 0) > 0): ?>
                <span class="text-danger">(<?= $run['documents_failed'] ?> Fehler)</span>
                <?php endif; ?>
            </td>
            <td><?= $run['chunks_created'] ?? 0 ?></td>
        </tr>
        <?php endforeach; ?>
    </tbody>
</table>
<?php else: ?>
<p class="empty-state empty-state--small">Noch keine Ausführungen vorhanden.</p>
<?php endif; ?>

<p class="links-bar">
    <a href="/content-pipeline">Zurück zur Übersicht</a>
</p>

<style>
.info-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    gap: 1rem;
    margin: 1rem 0 2rem;
}
.info-item {
    background: var(--bg-muted, #f5f5f5);
    padding: 0.75rem;
    border-radius: 6px;
}
.info-label {
    display: block;
    font-size: 0.8rem;
    color: var(--text-muted, #666);
}
.info-value {
    font-weight: 500;
}
</style>

<?php $content = ob_get_clean(); ?>
<?php require VIEW_PATH . '/layout.php'; ?>

Vollständig herunterladen

Aktionen

Herunterladen

Andere Versionen dieser Datei

ID Version Typ Größe Datum
1790 26 modified 12.0 KB 2025-12-27 14:08
1689 25 modified 12.0 KB 2025-12-27 12:06
1688 24 modified 17.4 KB 2025-12-27 12:05
1687 23 modified 17.6 KB 2025-12-27 12:05
1686 22 modified 16.8 KB 2025-12-27 12:04
1685 21 modified 16.4 KB 2025-12-27 12:03
1684 20 modified 14.9 KB 2025-12-27 12:03
907 19 modified 14.8 KB 2025-12-23 16:32
683 18 modified 14.8 KB 2025-12-23 07:44
576 17 modified 12.4 KB 2025-12-23 04:18
575 16 modified 11.6 KB 2025-12-23 04:18
574 15 modified 11.8 KB 2025-12-23 04:18
553 14 modified 11.8 KB 2025-12-23 03:32
480 13 modified 10.6 KB 2025-12-22 15:22
479 12 modified 10.1 KB 2025-12-22 15:22
478 11 modified 9.5 KB 2025-12-22 15:22
474 10 modified 9.4 KB 2025-12-22 15:19
473 9 modified 9.3 KB 2025-12-22 15:19
441 8 modified 9.0 KB 2025-12-22 10:14
440 7 modified 8.0 KB 2025-12-22 10:14
430 6 modified 5.8 KB 2025-12-22 10:04
429 5 modified 5.5 KB 2025-12-22 10:03
424 4 modified 5.3 KB 2025-12-22 09:58
423 3 modified 5.0 KB 2025-12-22 09:58
422 2 modified 4.3 KB 2025-12-22 09:57
420 1 modified 5.7 KB 2025-12-22 09:42

← Zurück zur Übersicht