Steuerkram/src/Views/accounts/list.php

96 lines
5.4 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<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>