96 lines
5.4 KiB
PHP
96 lines
5.4 KiB
PHP
<div class="toolbar">
|
||
<div class="toolbar-left">
|
||
<form method="get" style="display:flex;gap:.5rem;align-items:center">
|
||
<input type="search" name="search" placeholder="Suche Kto.-Nr. oder Bezeichnung…"
|
||
value="<?= $h($filter['search'] ?? '') ?>" style="width:260px">
|
||
<select name="kontenart">
|
||
<option value="">Alle Kontenarten</option>
|
||
<?php foreach (['Betriebseinnahme','Betriebsausgabe','Anlagevermögen','Zahlungskonto','Verbindlichkeit','Privat'] as $art): ?>
|
||
<option value="<?= $h($art) ?>"<?= ($filter['kontenart'] ?? '') === $art ? ' selected' : '' ?>><?= $h($art) ?></option>
|
||
<?php endforeach; ?>
|
||
</select>
|
||
<button type="submit" class="btn btn-secondary">Filtern</button>
|
||
<?php if (!empty($filter['search']) || !empty($filter['kontenart'])): ?>
|
||
<a href="/accounts" class="btn btn-secondary">✕ Reset</a>
|
||
<?php endif; ?>
|
||
</form>
|
||
</div>
|
||
<div class="toolbar-right">
|
||
<span class="text-muted text-sm"><?= count($accounts) ?> Konten</span>
|
||
</div>
|
||
</div>
|
||
|
||
<div class="card">
|
||
<div class="table-wrap">
|
||
<table>
|
||
<thead>
|
||
<tr>
|
||
<th>Kontonummer</th>
|
||
<th>Bezeichnung</th>
|
||
<th>Kontenart</th>
|
||
<th>Steuercode</th>
|
||
<th>UStVA Kz</th>
|
||
<th>EÜR-Zeile</th>
|
||
<th>Beschreibung</th>
|
||
<th></th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<?php foreach ($accounts as $acc): ?>
|
||
<tr>
|
||
<td class="td-mono font-bold"><?= $h($acc['kontonummer']) ?></td>
|
||
<td><?= $h($acc['bezeichnung']) ?></td>
|
||
<td>
|
||
<?php
|
||
$badgeClass = match($acc['kontenart']) {
|
||
'Betriebseinnahme' => 'badge-green',
|
||
'Betriebsausgabe' => 'badge-red',
|
||
'Anlagevermögen' => 'badge-purple',
|
||
'Zahlungskonto' => 'badge-blue',
|
||
'Verbindlichkeit' => 'badge-yellow',
|
||
default => 'badge-gray',
|
||
};
|
||
?>
|
||
<span class="badge <?= $badgeClass ?>"><?= $h($acc['kontenart']) ?></span>
|
||
</td>
|
||
<td class="td-muted"><?= $h($acc['steuercode'] ?? '–') ?></td>
|
||
<td class="td-muted"><?= $h($acc['ustva_kz'] ?? '–') ?></td>
|
||
<td class="td-muted"><?= $h($acc['euer_zeile'] ?? '–') ?></td>
|
||
<td class="td-muted text-sm"><?= $h(mb_strimwidth($acc['beschreibung'] ?? '', 0, 60, '…')) ?></td>
|
||
<td>
|
||
<div style="display:flex;gap:.5rem">
|
||
<a href="/accounts/<?= $h($acc['id']) ?>/journal" class="btn btn-secondary btn-sm">Journal</a>
|
||
<a href="/accounts/<?= $h($acc['id']) ?>/edit"
|
||
style="background:none;border:none;cursor:pointer;color:var(--color-muted);padding:.2rem;line-height:1;display:inline-flex;align-items:center"
|
||
title="Bearbeiten">
|
||
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24"
|
||
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||
<path d="M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"/>
|
||
<path d="M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4 9.5-9.5z"/>
|
||
</svg>
|
||
</a>
|
||
<form method="post" action="/accounts/<?= $h($acc['id']) ?>/delete"
|
||
data-confirm="Konto '<?= $h($acc['kontonummer']) ?>' wirklich löschen?">
|
||
<button type="submit"
|
||
style="background:none;border:none;cursor:pointer;color:var(--color-danger);padding:.2rem;line-height:1;display:inline-flex;align-items:center"
|
||
title="Löschen">
|
||
<svg xmlns="http://www.w3.org/2000/svg" width="16" height="16" viewBox="0 0 24 24"
|
||
fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="round" stroke-linejoin="round">
|
||
<polyline points="3,6 5,6 21,6"/>
|
||
<path d="M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6"/>
|
||
<path d="M10 11v6M14 11v6"/>
|
||
<path d="M9 6V4a1 1 0 0 1 1-1h4a1 1 0 0 1 1 1v2"/>
|
||
</svg>
|
||
</button>
|
||
</form>
|
||
</div>
|
||
</td>
|
||
</tr>
|
||
<?php endforeach; ?>
|
||
<?php if (empty($accounts)): ?>
|
||
<tr><td colspan="8" class="text-center text-muted" style="padding:2rem">Keine Konten gefunden.</td></tr>
|
||
<?php endif; ?>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
</div>
|