Erweiterte Bezahloptionen: Barzahlung, PayPal und Ueberweisung

Bisher gab es nur PayPal. Jetzt sind pro Mandant drei unabhaengig
aktivierbare Zahlungswege konfigurierbar (mandant-einstellungen.php):

- Barzahlung mit frei waehlbarem Ansprechpartner.
- PayPal wie bisher, mit Zahlungslink.
- Ueberweisung mit Kontoinhaber und IBAN (Format wird geprueft,
  Leerzeichen werden normalisiert).

Das Mitglieder-Dashboard (index.php) zeigt unter "Bezahlen" alle
aktivierten Methoden mit dem jeweils offenen Betrag; die IBAN wird zur
besseren Lesbarkeit in Viererbloecken angezeigt.

Neue tenant_settings-Spalten via Migration 0021 (cash_enabled,
cash_contact, bank_transfer_enabled, bank_account_holder, bank_iban).
This commit is contained in:
2026-07-21 16:13:28 +02:00
parent bafa5e7e61
commit c16b105f00
4 changed files with 116 additions and 9 deletions
+34 -1
View File
@@ -271,6 +271,10 @@ if ($hasAccess && $participant !== null && $settings !== null) {
$selfEntryEnabled = (int)$settings['self_entry_enabled'] === 1;
$paypalEnabled = (int)$settings['paypal_enabled'] === 1
&& trim((string)$settings['paypal_url_template']) !== '';
$cashEnabled = (int)$settings['cash_enabled'] === 1;
$bankTransferEnabled = (int)$settings['bank_transfer_enabled'] === 1
&& trim((string)$settings['bank_iban']) !== '';
$anyPaymentEnabled = $paypalEnabled || $cashEnabled || $bankTransferEnabled;
?>
<h2>Kaffeeliste</h2>
<?php if ($currentName !== ''): ?>
@@ -354,8 +358,37 @@ if ($hasAccess && $participant !== null && $settings !== null) {
<small>Falsch getippt? Mit „Letzten Strich stornieren" nimmst du deinen jüngsten selbst eingetragenen Strich wieder zurück. Vom Kassenwart eingetragene Striche bleiben davon unberührt.</small>
<?php endif; ?>
<?php if ($anyPaymentEnabled): ?>
<h2>Bezahlen</h2>
<?php if ($balanceCents < 0): ?>
<p>Dein offener Betrag: <b><?php echo saas_html(dashboard_money(abs($balanceCents))); ?></b></p>
<?php endif; ?>
<?php endif; ?>
<?php if ($cashEnabled): ?>
<h4>Barzahlung</h4>
<?php if (trim((string)$settings['cash_contact']) !== ''): ?>
<p>Bitte bar bei <b><?php echo saas_html($settings['cash_contact']); ?></b> bezahlen.</p>
<?php else: ?>
<p>Barzahlung ist möglich.</p>
<?php endif; ?>
<?php endif; ?>
<?php if ($bankTransferEnabled): ?>
<h4>Überweisung</h4>
<p>
<?php if (trim((string)$settings['bank_account_holder']) !== ''): ?>
Kontoinhaber: <b><?php echo saas_html($settings['bank_account_holder']); ?></b><br>
<?php endif; ?>
IBAN: <b><?php echo saas_html(trim(chunk_split((string)$settings['bank_iban'], 4, ' '))); ?></b>
<?php if ($balanceCents < 0): ?>
<br>Bitte überweise deinen offenen Betrag von <b><?php echo saas_html(dashboard_money(abs($balanceCents))); ?></b>.
<?php endif; ?>
</p>
<?php endif; ?>
<?php if ($paypalEnabled): ?>
<h2>PayPal-Einzahlungen</h2>
<h4>PayPal</h4>
<b>Bezahle immer über die Freunde-Funktion von PayPal. Ansonsten stellen wir 20% des Betrags als Gebühr in Rechnung.</b><br>
<br>
<?php