summaryrefslogtreecommitdiff
path: root/views
diff options
context:
space:
mode:
authorjlbeer <noreply@maennchen1.de>2026-09-17 10:54:15 +0200
committerjlbeer <noreply@maennchen1.de>2026-09-17 10:54:15 +0200
commitd2799ee9b99557c5a35e393dba6be9b1301e22df (patch)
treea15e059f8fbc3cb7a85e9f128f1301c037442eb1 /views
parentdcfb01e514b41f8b09d0a994b3ee9297b0474ecd (diff)
Kundenbudget im Frontend sichtbar, Statusfreigabe und automatisches Aufladen
- Kundenbudget wird jetzt im Kundenkonto und bei der Auswahl der Zahlungsart mit dem aktuellen Guthaben angezeigt, alternativ über den Shortcode [wpsg_kundenbudget] - Neue Einstellung "Status nach Kauf": Bestellungen, die mit dem Guthaben bezahlt wurden, bekommen den dort gewählten Bestellstatus. Vorher blieben sie unbezahlt liegen, dadurch wurden weder Downloadprodukte freigegeben noch Kampagnen ausgelöst - Produkte können als Aufladeprodukt markiert werden und schreiben ihren Preis nach Zahlungseingang automatisch dem Guthaben des Kunden gut - Guthaben wird bei einer Stornierung wieder zurückgebucht - Neuer Hinweistext, wenn das Guthaben für eine Bestellung nicht ausreicht - Zahlungsart Kundenbudget wird Besuchern ohne Kundenkonto nicht mehr angeboten - Hinweis im Backend, wenn die Kundenverwaltung fehlt, ohne die sich kein Guthaben pflegen lässt - Kundenbudget hat Kunden mit einem Wertgutschein fälschlich abgewiesen - Übersetzungen ergänzt Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Diffstat (limited to 'views')
-rw-r--r--views/mods/mod_customerbudget/produkt_edit_sidebar.phtml26
-rw-r--r--views/mods/mod_customerbudget/profil_budget.phtml18
-rw-r--r--views/mods/mod_customerbudget/settings_edit.phtml5
-rw-r--r--views/mods/mod_kundenverwaltung/profil.phtml2
4 files changed, 50 insertions, 1 deletions
diff --git a/views/mods/mod_customerbudget/produkt_edit_sidebar.phtml b/views/mods/mod_customerbudget/produkt_edit_sidebar.phtml
new file mode 100644
index 0000000..32851c8
--- /dev/null
+++ b/views/mods/mod_customerbudget/produkt_edit_sidebar.phtml
@@ -0,0 +1,26 @@
+<?php
+
+ /**
+ * Template für die Kennzeichnung eines Produkts als Aufladeprodukt innerhalb
+ * der Produktverwaltung
+ */
+
+?>
+<div id="wpsg_customerbudget" class="panel panel-default">
+ <div class="panel-heading clearfix">
+ <h3 class="panel-title">
+ <?php echo __('Kundenbudget', 'wpsg'); ?>
+ </h3>
+ </div>
+ <div class="panel-body">
+
+ <input type="hidden" name="wpsg_mod_customerbudget_form" value="1" />
+
+ <?php echo wpsg_drawForm_Checkbox('wpsg_mod_customerbudget_topup', __('Produkt lädt das Kundenbudget auf', 'wpsg'), wpsg_getStr($this->view['data']['wpsg_mod_customerbudget_topup'])); ?>
+
+ <p class="description">
+ <?php echo __('Sobald eine Bestellung mit diesem Produkt den Status "Zahlung akzeptiert" erhält, wird der Bruttopreis dem Guthaben des Kunden gutgeschrieben. Das Produkt sollte auf dem Steuerschlüssel "Nullsatz" stehen, damit nicht die Aufladung und der spätere Kauf besteuert werden.', 'wpsg'); ?>
+ </p>
+
+ </div>
+</div>
diff --git a/views/mods/mod_customerbudget/profil_budget.phtml b/views/mods/mod_customerbudget/profil_budget.phtml
new file mode 100644
index 0000000..6439c1d
--- /dev/null
+++ b/views/mods/mod_customerbudget/profil_budget.phtml
@@ -0,0 +1,18 @@
+<?php
+
+ /**
+ * Template für die Anzeige des Kundenbudgets im Kundenkonto
+ */
+
+ $budget = $this->view['mod_customerbudget']['budget_formatted'];
+
+?>
+<div class="wpsg wpsg_customerbudget">
+
+ <h2><?php echo wpsg_hspc($this->get_option('wpsg_mod_customerbudget_name')); ?></h2>
+
+ <div class="wpsg_customerbudget_amount">
+ <?php echo wpsg_translate(__('Ihr aktuelles Guthaben: #1#', 'wpsg'), '<strong>'.wpsg_hspc($budget).'</strong>'); ?>
+ </div>
+
+</div>
diff --git a/views/mods/mod_customerbudget/settings_edit.phtml b/views/mods/mod_customerbudget/settings_edit.phtml
index 966faac..952fd1c 100644
--- a/views/mods/mod_customerbudget/settings_edit.phtml
+++ b/views/mods/mod_customerbudget/settings_edit.phtml
@@ -6,4 +6,7 @@
?>
<?php echo wpsg_drawForm_Input('wpsg_mod_customerbudget_name', __('Bezeichnung der Zahlungsart', 'wpsg'), $this->get_option('wpsg_mod_customerbudget_name'), array('help' => 'wpsg_mod_customerbudget_name')); ?>
-<?php echo wpsg_drawForm_Textarea('wpsg_mod_customerbudget_hint', __('Hinweistext', 'wpsg'), $this->get_option('wpsg_mod_customerbudget_hint'), array('help' => 'wpsg_mod_customerbudget_hint')); ?> \ No newline at end of file
+<?php echo wpsg_drawForm_Textarea('wpsg_mod_customerbudget_hint', __('Hinweistext', 'wpsg'), $this->get_option('wpsg_mod_customerbudget_hint'), array('help' => 'wpsg_mod_customerbudget_hint')); ?>
+<?php echo wpsg_drawForm_Select('wpsg_mod_customerbudget_status', __('Status nach Kauf', 'wpsg'), $this->view['mod_customerbudget']['arStatus'], $this->view['mod_customerbudget']['status'], array('hint' => __('Bestellstatus, der gesetzt wird, sobald eine Bestellung mit dem Kundenbudget bezahlt wurde. Die Zahlung ist mit der Abbuchung abgeschlossen, ohne diesen Statuswechsel lösen weder die Downloadmodule noch die Kampagnen aus.', 'wpsg'))); ?>
+<?php echo wpsg_drawForm_Checkbox('wpsg_mod_customerbudget_inform', __('Kunden über den Statuswechsel informieren', 'wpsg'), $this->view['mod_customerbudget']['inform'], array('hint' => __('Muss aktiv sein, damit das Modul "Downloadprodukte" die Dateien freigibt. Der Kunde erhält dadurch zusätzlich zur Bestellbestätigung eine Statusmail.', 'wpsg'))); ?>
+<?php echo wpsg_drawForm_Checkbox('wpsg_mod_customerbudget_storno', __('Guthaben bei Stornierung zurückbuchen', 'wpsg'), $this->view['mod_customerbudget']['storno'], array('hint' => __('Bucht bei einer Stornierung sowohl eine Zahlung mit dem Kundenbudget als auch eine Aufladung wieder zurück.', 'wpsg'))); ?>
diff --git a/views/mods/mod_kundenverwaltung/profil.phtml b/views/mods/mod_kundenverwaltung/profil.phtml
index d17615e..b974e4f 100644
--- a/views/mods/mod_kundenverwaltung/profil.phtml
+++ b/views/mods/mod_kundenverwaltung/profil.phtml
@@ -131,6 +131,8 @@
<?php echo $this->writeFrontendMessage(); ?>
+ <?php $this->callMods('customer_profil_inner', [&$this->view['data']]); ?>
+
<form method="post" id="form-profil" action="<?php echo $this->callMod('wpsg_mod_kundenverwaltung', 'getProfilURL'); ?>">
<h2><?php echo __('Kundendaten', 'wpsg'); ?></h2>