Backup #1621
| ID | 1621 |
| Dateipfad | /var/www/dev.campus.systemische-tools.de/src/View/semantic-explorer/relationen.php |
| Version | 2 |
| Typ |
modified |
| Größe | 3.3 KB |
| Hash | d81dfbf9c013bebf84b7977534415e66bd2d897eafa7a3918207d2e83b4ef8b8 |
| Datum | 2025-12-27 09:44:19 |
| Geändert von | claude-code-hook |
| Grund | Claude Code Pre-Hook Backup vor Edit-Operation |
| Datei existiert |
Ja
|
Dateiinhalt
<?php ob_start(); ?>
<nav class="breadcrumb">
<a href="/">Home</a> » <a href="/explorer">Explorer</a> » <a href="/semantic-explorer">Semantic Explorer</a> » Relationen
</nav>
<h1>Relationen</h1>
<p>Beziehungen zwischen Entitaeten.</p>
<div class="stats-grid">
<div class="stat-card stat-card--primary">
<span class="stat-card__value"><?= $stats['total'] ?? 0 ?></span>
<span class="stat-card__label">Relationen</span>
</div>
<div class="stat-card">
<span class="stat-card__value"><?= $stats['sources'] ?? 0 ?></span>
<span class="stat-card__label">Quellen</span>
</div>
<div class="stat-card">
<span class="stat-card__value"><?= $stats['targets'] ?? 0 ?></span>
<span class="stat-card__label">Ziele</span>
</div>
</div>
<div class="filters">
<input type="search" id="relations-search" class="form-input" placeholder="Durchsuchen...">
<select id="filter-type" class="form-select--inline">
<option value="">Alle Typen</option>
<?php foreach ($relationTypes as $rt): ?>
<option value="<?= strtolower(htmlspecialchars($rt['relation_type'])) ?>"><?= htmlspecialchars($rt['relation_type']) ?> (<?= $rt['count'] ?>)</option>
<?php endforeach; ?>
</select>
</div>
<?php if (!empty($relations)): ?>
<table id="relations-table" data-sortable>
<thead>
<tr>
<th data-sort="source_name">Quelle</th>
<th data-sort="relation_type">Relation</th>
<th data-sort="target_name">Ziel</th>
<th data-sort="strength">Staerke</th>
</tr>
</thead>
<tbody>
<?php foreach ($relations as $r): ?>
<tr>
<td>
<a href="/semantic-explorer/entitaeten/<?= $r['source_entity_id'] ?>"><?= htmlspecialchars($r['source_name']) ?></a>
<span class="badge badge--small"><?= $r['source_type'] ?></span>
</td>
<td><span class="badge"><?= htmlspecialchars($r['relation_type']) ?></span></td>
<td>
<a href="/semantic-explorer/entitaeten/<?= $r['target_entity_id'] ?>"><?= htmlspecialchars($r['target_name']) ?></a>
<span class="badge badge--small"><?= $r['target_type'] ?></span>
</td>
<td><?= number_format($r['strength'] * 100, 0) ?>%</td>
</tr>
<?php endforeach; ?>
</tbody>
</table>
<?php else: ?>
<p class="empty-state">Keine Relationen gefunden. Fuehren Sie die semantische Analyse aus.</p>
<?php endif; ?>
<p class="links-bar">
<a href="/semantic-explorer">Zurueck zum Explorer</a> |
<a href="/semantic-explorer/entitaeten">Entitaeten</a>
</p>
<script type="module">
import { init } from '/js/components/data-table.js';
const dataTable = init({
clock: { now_epoch_ms_utc: () => Date.now() },
logger: console,
ui: {
showMessage: (msg) => { console.log(msg.type + ': ' + msg.text); },
disableFeature: (key) => { console.warn('Feature disabled: ' + key); },
offerRetry: () => Promise.resolve(false)
},
runId: crypto.randomUUID()
});
dataTable.create('relations-table', {
searchInput: 'relations-search',
pageSize: 20,
filters: {
'filter-type': 1
}
});
</script>
<?php $content = ob_get_clean(); ?>
<?php require VIEW_PATH . '/layout.php'; ?>
Vollständig herunterladen
Aktionen
Andere Versionen dieser Datei
| ID |
Version |
Typ |
Größe |
Datum |
| 1931 |
4 |
modified |
3.3 KB |
2025-12-28 01:22 |
| 1631 |
3 |
modified |
3.3 KB |
2025-12-27 09:45 |
| 1621 |
2 |
modified |
3.3 KB |
2025-12-27 09:44 |
| 13 |
1 |
modified |
2.8 KB |
2025-12-20 16:41 |
← Zurück zur Übersicht