diff options
| author | Roger Rehnelt <noreply@maennchen1.de> | 2026-10-03 15:38:49 +0200 |
|---|---|---|
| committer | Roger Rehnelt <noreply@maennchen1.de> | 2026-10-03 15:38:49 +0200 |
| commit | f786f0c59d9a95d6829aaf58d99c882a609355ed (patch) | |
| tree | 3b6e97793ed5c1eaffcc06dbecd94f62f55f8287 /views/mods/mod_revocation/mails | |
| parent | 6b03b7e7a5b47b52ea5d5b6aae2efb945f4dd686 (diff) | |
Widerrufsformular: Bestätigung ohne Bestelldaten, Name und Schlüssel
Jeder Widerruf wird angenommen; die Eingangsbestätigung an die eingetragene Adresse enthält nur die eigenen Angaben, der Betreiber bekommt die Bestelldaten mit Vermerken. Neues Pflichtfeld Name; der Link aus der Bestellmail bestätigt den Widerruf.
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Diffstat (limited to 'views/mods/mod_revocation/mails')
4 files changed, 110 insertions, 178 deletions
diff --git a/views/mods/mod_revocation/mails/mail_admin_html.phtml b/views/mods/mod_revocation/mails/mail_admin_html.phtml index 4ff7820..c819841 100644 --- a/views/mods/mod_revocation/mails/mail_admin_html.phtml +++ b/views/mods/mod_revocation/mails/mail_admin_html.phtml @@ -2,80 +2,45 @@ /** @version 4.6.1 */ declare(strict_types=1); - + /** - * @author: Daniel Schmitzer - * @date: 14.04.26 - * @time: 09:21 + * Mail an den Betreiber (HTML) * + * Mit Bestelldaten (Platzhalter nur bei genau einer gefundenen Bestellung), Bestätigung und Vermerken (S18). */ - + namespace wpsgRevocation; - + $arSubmitData = \wpsg_ShopController::getShop()->view['arSubmitData'] ?? []; - $arReason = Revocation::getReasons(); + $time = (string)($arSubmitData[0]['time'] ?? \current_time('mysql')); ?> <p><?php echo __('Hallo,', 'wpsg'); ?></p> -<p><?php echo __('ein Kunde hat einen Widerruf für ein Produkt durchgeführt.', 'wpsg'); ?></p> +<p><?php echo __('es ist eine Widerrufserklärung eingegangen.', 'wpsg'); ?></p> <p> - <strong><?php echo __('Name', 'wpsg'); ?>:</strong> %kunde_anrede% %kunde_vname% %kunde_name%<br> - <strong><?php echo __('E-Mail', 'wpsg'); ?>:</strong> %kunde_email% + <strong><?php echo __('Name (angegeben)', 'wpsg'); ?>:</strong> <?php echo \esc_html($arSubmitData[0]['name'] ?? ''); ?><br> + <strong><?php echo __('E-Mail (angegeben)', 'wpsg'); ?>:</strong> <?php echo \esc_html($arSubmitData[0]['contact'] ?? ''); ?><br> + <strong><?php echo __('Eingang', 'wpsg'); ?>:</strong> <?php echo \esc_html(\mysql2date('d.m.Y H:i:s', $time)); ?> </p> <hr> -<?php foreach ($arSubmitData as $key => $d): - - $oOrder = $d['oOrder']; - $oOrderProduct = $d['oOrderProduct']; - - $reasonText = array_values(array_filter( - $arReason, - function($item) use ($d) { - return $item['id'] === $d['reason']; - } - ))[0]['text'] ?? __('Kein Grund angegeben', 'wpsg'); -?> - - <div style="margin-bottom:15px; padding-bottom:10px; border-bottom:1px solid #ddd;"> - <p> - <strong><?php echo __('Bestellung', 'wpsg'); ?>:</strong> - <?php echo $oOrder->getNr(); ?> - </p> - - <p> - <strong><?php echo __('Produkt', 'wpsg'); ?>:</strong> - <?php echo $d['amount']; ?> x <?php echo $oOrderProduct->getProduct()->getProductName(true); ?> - / <?php echo __('Artikelnummer', 'wpsg'); ?>: - <?php echo $oOrderProduct->getProduct()->getNr(); ?> - </p> +<?php foreach ($arSubmitData as $d) { $oOrder = $d['oOrder']; $oOrderProduct = $d['oOrderProduct']; ?> +<div style="margin-bottom:15px; padding-bottom:10px; border-bottom:1px solid #ddd;"> + <p><strong><?php echo __('Bestellung', 'wpsg'); ?>:</strong> <?php echo \esc_html(($oOrder !== null)?(string)$oOrder->getNr():$d['order_nr']); ?></p> + <?php if ($oOrder !== null) { ?><p><strong><?php echo __('Besteller', 'wpsg'); ?>:</strong> <?php echo \esc_html((string)$oOrder->getCustomer()->getEMail()); ?></p><?php } ?> + <p><strong><?php echo __('Produkt', 'wpsg'); ?>:</strong> <?php echo intval($d['amount']); ?> x <?php echo \esc_html(($oOrderProduct !== null)?$oOrderProduct->getProduct()->getProductName(true).' / '.__('Artikelnummer', 'wpsg').': '.$oOrderProduct->getProduct()->getNr():$d['product_nr']); ?></p> + <p><strong><?php echo __('Bestätigt', 'wpsg'); ?>:</strong> <?php echo (($d['confirmed'])?__('ja (Link aus der Bestellmail oder angemeldeter Besteller)', 'wpsg'):__('nein', 'wpsg')); ?></p> + <p><strong><?php echo __('Ausgewählter Grund', 'wpsg'); ?>:</strong> <?php echo \esc_html(Revocation::reasonText((string)$d['reason'])); ?></p> + <p><strong><?php echo __('Bemerkung', 'wpsg'); ?>:</strong> <?php echo nl2br(\esc_html($d['comment'])); ?></p> + <?php foreach (Revocation::noteTexts($d['notes']) as $note) { ?><p><strong><?php echo __('Vermerk', 'wpsg'); ?>:</strong> <?php echo \esc_html($note); ?></p><?php } ?> +</div> +<?php } ?> - <p> - <strong><?php echo __('Ausgewählter Grund', 'wpsg'); ?>:</strong> - <?php echo $reasonText; ?> - </p> - - <p> - <strong><?php echo __('Bemerkung', 'wpsg'); ?>:</strong> - <?php echo nl2br(htmlspecialchars($d['comment'] ?? '')); ?> - </p> - </div> - -<?php endforeach; ?> +<p><?php echo __('Bitte prüft den Vorgang und führt die Rückabwicklung (Storno / Rückerstattung) durch.', 'wpsg'); ?></p> <p> - <strong><?php echo __('Datum des Widerrufs', 'wpsg'); ?>:</strong> - <?php echo date('d.m.Y H:i:s'); ?> + <?php echo __('Viele Grüße', 'wpsg'); ?><br> + <?php echo \esc_html(\wpsg_ShopController::getShop()->get_option('wpsg_shopdata_name')); ?> - <?php echo __('Team', 'wpsg'); ?> </p> - -<p> - <?php echo __('Bitte prüft den Vorgang und führt die Rückabwicklung (Storno / Rückerstattung) durch.', 'wpsg'); ?> -</p> - -<p> - <?php echo __('Viele Grüße', 'wpsg'); ?><br> - <?php echo \wpsg_ShopController::getShop()->get_option('wpsg_shopdata_name'); ?> - - <?php echo __('Team', 'wpsg'); ?> -</p>
\ No newline at end of file diff --git a/views/mods/mod_revocation/mails/mail_admin_text.phtml b/views/mods/mod_revocation/mails/mail_admin_text.phtml index c0e3342..4253b8d 100644 --- a/views/mods/mod_revocation/mails/mail_admin_text.phtml +++ b/views/mods/mod_revocation/mails/mail_admin_text.phtml @@ -1,45 +1,53 @@ <?php /** @version 4.6.1 */ - + declare(strict_types=1); - + /** - * @author: Daniel Schmitzer - * @date: 14.04.26 - * @time: 09:21 + * Mail an den Betreiber * + * Mit Bestelldaten (Platzhalter nur bei genau einer gefundenen Bestellung), Bestätigung und Vermerken (S18). */ - + namespace wpsgRevocation; - + $arSubmitData = \wpsg_ShopController::getShop()->view['arSubmitData'] ?? []; - $arReason = Revocation::getReasons(); + $time = (string)($arSubmitData[0]['time'] ?? \current_time('mysql')); + +?><?php echo __('Hallo,', 'wpsg'); ?> + + +<?php echo __('es ist eine Widerrufserklärung eingegangen.', 'wpsg'); ?> + + +<?php echo mb_str_pad(__('Name (angegeben)', 'wpsg').':', 25); ?> <?php echo ($arSubmitData[0]['name'] ?? ''); ?> + +<?php echo mb_str_pad(__('E-Mail (angegeben)', 'wpsg').':', 25); ?> <?php echo ($arSubmitData[0]['contact'] ?? ''); ?> -?><?php echo __('Hallo,', 'wpsg'); ?> - -<?php echo __('ein Kunde hat einen Widerruf für ein Produkt durchgeführt.', 'wpsg'); ?> - -<?php echo mb_str_pad(__('Name', 'wpsg').':', 25); ?> %kunde_anrede% %kunde_vname% %kunde_name% -<?php echo mb_str_pad(__('E-Mail', 'wpsg').':', 25); ?> %kunde_email% - -<?php foreach ($arSubmitData as $key => $d) { +<?php echo mb_str_pad(__('Eingang', 'wpsg').':', 25); ?> <?php echo \mysql2date('d.m.Y H:i:s', $time); ?> - /** @var \wpsg_order $oOrder */ - $oOrder = $d['oOrder']; - /** @var \wpsg_order_product $oOrderProduct */ - $oOrderProduct = $d['oOrderProduct']; +<?php foreach ($arSubmitData as $d) { $oOrder = $d['oOrder']; $oOrderProduct = $d['oOrderProduct']; ?> +<?php echo mb_str_pad(__('Bestellung', 'wpsg').':', 25); ?> <?php echo (($oOrder !== null)?$oOrder->getNr():$d['order_nr']); ?> -?> -<?php echo mb_str_pad(__('Bestellung', 'wpsg').':', 25); ?> <?php echo $oOrder->getNr(); ?> -<?php echo mb_str_pad(__('Produkt', 'wpsg').':', 25); ?> <?php echo $d['amount']; ?> x <?php echo $oOrderProduct->getProduct()->getProductName(true); ?> / <?php echo __('Artikelnummer', 'wpsg'); ?>: <?php echo $oOrderProduct->getProduct()->getNr(); ?> -<?php echo mb_str_pad(__('Ausgewählter Grund', 'wpsg').':', 25); ?> <?php echo array_values(array_filter($arReason, function($item) use ($d) { return $item['id'] === $d['reason']; }))[0]['text'] ?? __('Kein Grund angegeben', 'wpsg'); ?> -<?php echo mb_str_pad(__('Bemerkung', 'wpsg').':', 25); ?> <?php echo $d['comment']; ?> +<?php if ($oOrder !== null) { ?><?php echo mb_str_pad(__('Besteller', 'wpsg').':', 25); ?> <?php echo $oOrder->getCustomer()->getEMail(); ?> <?php } ?> +<?php echo mb_str_pad(__('Produkt', 'wpsg').':', 25); ?> <?php echo intval($d['amount']); ?> x <?php echo (($oOrderProduct !== null)?$oOrderProduct->getProduct()->getProductName(true).' / '.__('Artikelnummer', 'wpsg').': '.$oOrderProduct->getProduct()->getNr():$d['product_nr']); ?> + +<?php echo mb_str_pad(__('Bestätigt', 'wpsg').':', 25); ?> <?php echo (($d['confirmed'])?__('ja (Link aus der Bestellmail oder angemeldeter Besteller)', 'wpsg'):__('nein', 'wpsg')); ?> + +<?php echo mb_str_pad(__('Ausgewählter Grund', 'wpsg').':', 25); ?> <?php echo Revocation::reasonText((string)$d['reason']); ?> + +<?php echo mb_str_pad(__('Bemerkung', 'wpsg').':', 25); ?> <?php echo $d['comment']; ?> + +<?php foreach (Revocation::noteTexts($d['notes']) as $note) { ?><?php echo mb_str_pad(__('Vermerk', 'wpsg').':', 25); ?> <?php echo $note; ?> + +<?php } ?> + +<?php } ?> +<?php echo __('Bitte prüft den Vorgang und führt die Rückabwicklung (Storno / Rückerstattung) durch.', 'wpsg'); ?> + -<?php echo mb_str_pad(__('Datum des Widerrufs', 'wpsg').':', 25); ?> <?php echo date('d.m.Y H:i:s'); ?> - -<?php echo __('Bitte prüft den Vorgang und führt die Rückabwicklung (Storno / Rückerstattung) durch.', 'wpsg'); ?> +<?php echo __('Viele Grüße', 'wpsg'); ?> -<?php echo __('Viele Grüße', 'wpsg'); ?> <?php echo \wpsg_ShopController::getShop()->get_option('wpsg_shopdata_name'); ?> - <?php echo __('Team', 'wpsg'); ?>
\ No newline at end of file diff --git a/views/mods/mod_revocation/mails/mail_customer_html.phtml b/views/mods/mod_revocation/mails/mail_customer_html.phtml index 7430fe3..96ee023 100644 --- a/views/mods/mod_revocation/mails/mail_customer_html.phtml +++ b/views/mods/mod_revocation/mails/mail_customer_html.phtml @@ -2,76 +2,42 @@ /** @version 4.6.1 */ declare(strict_types=1); - + /** - * @author: Daniel Schmitzer - * @date: 14.04.26 - * @time: 09:21 + * Eingangsbestätigung an die eingetragene Adresse (HTML) * + * Nur die Angaben des Absenders, keine Daten aus der Bestellung (S18): Die Adresse hat der Absender selbst eingetragen. + * Ohne order_id versendet, Platzhalter wie %kunde_name% bleiben deshalb leer. */ - - namespace wpsgRevocation; - - $arSubmitData = \wpsg_ShopController::getShop()->view['arSubmitData'] ?? []; - $arReason = Revocation::getReasons(); - -?> -<p><?php echo __('Hallo', 'wpsg'); ?> %kunde_anrede% %kunde_name%,</p> - -<p><?php echo __('wir haben Ihren Widerruf erhalten und bedanken uns für Ihre Mitteilung.', 'wpsg'); ?></p> -<h3><?php echo __('Ihre Widerrufsanmeldung:', 'wpsg'); ?></h3> - -<?php foreach ($arSubmitData as $key => $d): + namespace wpsgRevocation; - $oOrder = $d['oOrder']; - $oOrderProduct = $d['oOrderProduct']; + $arSubmitData = \wpsg_ShopController::getShop()->view['arSubmitData'] ?? []; + $time = (string)($arSubmitData[0]['time'] ?? \current_time('mysql')); - $reasonText = array_values(array_filter( - $arReason, - function($item) use ($d) { - return $item['id'] === $d['reason']; - } - ))[0]['text'] ?? __('Kein Grund angegeben', 'wpsg'); ?> - - <div style="margin-bottom:20px; padding:15px; background-color:#f9f9f9; border-radius:5px;"> - <p style="margin:0 0 10px 0;"> - <strong><?php echo __('Bestellnummer', 'wpsg'); ?>:</strong> - <?php echo $oOrder->getNr(); ?> - </p> - - <p style="margin:0 0 10px 0;"> - <strong><?php echo __('Produkt', 'wpsg'); ?>:</strong> - <?php echo $d['amount']; ?> x <?php echo $oOrderProduct->getProduct()->getProductName(true); ?> - / <?php echo __('Artikelnr.', 'wpsg'); ?>: - <?php echo $oOrderProduct->getProduct()->getNr(); ?> - </p> - - <p style="margin:0 0 10px 0;"> - <strong><?php echo __('Grund', 'wpsg'); ?>:</strong> - <?php echo $reasonText; ?> - </p> - - <?php if (!empty($d['comment'])): ?> - <p style="margin:0 0 10px 0;"> - <strong><?php echo __('Bemerkung', 'wpsg'); ?>:</strong> - <?php echo nl2br(htmlspecialchars($d['comment'])); ?> - </p> - <?php endif; ?> - </div> - +<p><?php echo __('Hallo', 'wpsg'); ?> <?php echo \esc_html($arSubmitData[0]['name'] ?? ''); ?>,</p> + +<p><?php echo __('wir bestätigen den Eingang Ihrer Widerrufserklärung mit folgenden Angaben:', 'wpsg'); ?></p> + +<?php foreach ($arSubmitData as $d): ?> +<div style="margin-bottom:20px; padding:15px; background-color:#f9f9f9; border-radius:5px;"> + <p style="margin:0 0 10px 0;"><strong><?php echo __('Bestellnummer', 'wpsg'); ?>:</strong> <?php echo \esc_html($d['order_nr']); ?></p> + <?php if ($d['product_nr'] !== '') { ?><p style="margin:0 0 10px 0;"><strong><?php echo __('Artikelnr.', 'wpsg'); ?>:</strong> <?php echo \esc_html($d['product_nr']); ?></p><?php } ?> + <p style="margin:0 0 10px 0;"><strong><?php echo __('Menge', 'wpsg'); ?>:</strong> <?php echo intval($d['amount']); ?></p> + <p style="margin:0 0 10px 0;"><strong><?php echo __('Grund', 'wpsg'); ?>:</strong> <?php echo \esc_html(Revocation::reasonText((string)$d['reason'])); ?></p> + <?php if ($d['comment'] !== '') { ?><p style="margin:0 0 10px 0;"><strong><?php echo __('Bemerkung', 'wpsg'); ?>:</strong> <?php echo nl2br(\esc_html($d['comment'])); ?></p><?php } ?> +</div> <?php endforeach; ?> <p> - <strong><?php echo __('Widerrufdatum', 'wpsg'); ?>:</strong> - <?php echo date('d.m.Y H:i:s'); ?> + <strong><?php echo __('Name', 'wpsg'); ?>:</strong> <?php echo \esc_html($arSubmitData[0]['name'] ?? ''); ?><br> + <strong><?php echo __('E-Mail', 'wpsg'); ?>:</strong> <?php echo \esc_html($arSubmitData[0]['contact'] ?? ''); ?><br> + <strong><?php echo __('Eingang', 'wpsg'); ?>:</strong> <?php echo \esc_html(\mysql2date('d.m.Y H:i', $time)); ?> </p> -<!--<p>--><?php //echo __('Wir werden Ihren Widerruf nun schnellstmöglich bearbeiten und uns bei Fragen mit Ihnen in Verbindung setzen.', 'wpsg'); ?><!--</p>--> -<p><?php echo __('Bitte beachten Sie, dass die Prüfung der Wirksamkeit und Reichweite Ihrer Widerrufserklärung noch aussteht. Wir werden Ihre Mitteilung nun bearbeiten und uns bei Rückfragen mit Ihnen in Verbindung setzen.', 'wpsg'); ?></p> +<p><?php echo __('Dies ist eine Bestätigung des Eingangs. Die Prüfung der Wirksamkeit und Reichweite Ihrer Widerrufserklärung steht noch aus; wir melden uns bei Rückfragen.', 'wpsg'); ?></p> <p> - <?php echo __('Mit freundlichen Grüßen', 'wpsg'); ?><br> - <?php echo \wpsg_ShopController::getShop()->get_option('wpsg_shopdata_name'); ?> - - <?php echo __('Team', 'wpsg'); ?> -</p>
\ No newline at end of file + <?php echo __('Mit freundlichen Grüßen', 'wpsg'); ?><br> + <?php echo \esc_html(\wpsg_ShopController::getShop()->get_option('wpsg_shopdata_name')); ?> - <?php echo __('Team', 'wpsg'); ?> +</p> diff --git a/views/mods/mod_revocation/mails/mail_customer_text.phtml b/views/mods/mod_revocation/mails/mail_customer_text.phtml index 6dd0b92..5812b68 100644 --- a/views/mods/mod_revocation/mails/mail_customer_text.phtml +++ b/views/mods/mod_revocation/mails/mail_customer_text.phtml @@ -2,53 +2,46 @@ /** @version 4.6.1 */ declare(strict_types=1); - + /** - * @author: Daniel Schmitzer - * @date: 14.04.26 - * @time: 09:21 + * Eingangsbestätigung an die eingetragene Adresse * + * Nur die Angaben des Absenders, keine Daten aus der Bestellung (S18): Die Adresse hat der Absender selbst eingetragen. + * Ohne order_id versendet, Platzhalter wie %kunde_name% bleiben deshalb leer. */ - + namespace wpsgRevocation; - + $arSubmitData = \wpsg_ShopController::getShop()->view['arSubmitData'] ?? []; - $arReason = Revocation::getReasons(); + $time = (string)($arSubmitData[0]['time'] ?? \current_time('mysql')); -?><?php echo __('Hallo', 'wpsg'); ?> %kunde_anrede% %kunde_name%, +?><?php echo __('Hallo', 'wpsg'); ?> <?php echo ($arSubmitData[0]['name'] ?? ''); ?>, -<?php echo __('wir haben Ihren Widerruf erhalten und bedanken uns für Ihre Mitteilung.', 'wpsg'); ?> +<?php echo __('wir bestätigen den Eingang Ihrer Widerrufserklärung mit folgenden Angaben:', 'wpsg'); ?> -<?php echo __('Ihre Widerrufsanmeldung:', 'wpsg'); ?> +<?php foreach ($arSubmitData as $d): ?> +<?php echo mb_str_pad(__('Bestellnummer', 'wpsg').':', 20); ?> <?php echo $d['order_nr']; ?> -<?php foreach ($arSubmitData as $key => $d): +<?php if ($d['product_nr'] !== '') { ?><?php echo mb_str_pad(__('Artikelnr.', 'wpsg').':', 20); ?> <?php echo $d['product_nr']; ?> - $oOrder = $d['oOrder']; - $oOrderProduct = $d['oOrderProduct']; +<?php } ?> +<?php echo mb_str_pad(__('Menge', 'wpsg').':', 20); ?> <?php echo intval($d['amount']); ?> - $reasonText = array_values(array_filter( - $arReason, - function($item) use ($d) { - return $item['id'] === $d['reason']; - } - ))[0]['text'] ?? __('Kein Grund angegeben', 'wpsg'); -?> +<?php echo mb_str_pad(__('Grund', 'wpsg').':', 20); ?> <?php echo Revocation::reasonText((string)$d['reason']); ?> -<?php echo mb_str_pad(__('Bestellnummer', 'wpsg').':', 20); ?> <?php echo $oOrder->getNr(); ?> +<?php if ($d['comment'] !== '') { ?><?php echo mb_str_pad(__('Bemerkung', 'wpsg').':', 20); ?> <?php echo $d['comment']; ?> -<?php echo mb_str_pad(__('Produkt', 'wpsg').':', 20); ?> <?php echo $d['amount']; ?> x <?php echo $oOrderProduct->getProduct()->getProductName(true); ?> / <?php echo __('Artikelnr.', 'wpsg'); ?>: <?php echo $oOrderProduct->getProduct()->getNr(); ?> +<?php } ?> -<?php echo mb_str_pad(__('Grund', 'wpsg').':', 20); ?> <?php echo $reasonText; ?> +<?php endforeach; ?> +<?php echo mb_str_pad(__('Name', 'wpsg').':', 20); ?> <?php echo ($arSubmitData[0]['name'] ?? ''); ?> -<?php if (!empty($d['comment'])): ?> -<?php echo mb_str_pad(__('Bemerkung', 'wpsg').':', 20); ?> <?php echo $d['comment']; ?> -<?php endif; ?> +<?php echo mb_str_pad(__('E-Mail', 'wpsg').':', 20); ?> <?php echo ($arSubmitData[0]['contact'] ?? ''); ?> + +<?php echo mb_str_pad(__('Eingang', 'wpsg').':', 20); ?> <?php echo \mysql2date('d.m.Y H:i', $time); ?> -<?php endforeach; ?> -<?php echo mb_str_pad(__('Widerrufdatum', 'wpsg').':', 20); ?> <?php echo date('d.m.Y H:i:s'); ?> +<?php echo __('Dies ist eine Bestätigung des Eingangs. Die Prüfung der Wirksamkeit und Reichweite Ihrer Widerrufserklärung steht noch aus; wir melden uns bei Rückfragen.', 'wpsg'); ?> -<?php echo __('Wir werden Ihren Widerruf nun schnellstmöglich bearbeiten und uns bei Fragen mit Ihnen in Verbindung setzen.', 'wpsg'); ?> -<?php echo __('Bitte beachten Sie, dass die Prüfung der Wirksamkeit und Reichweite Ihrer Widerrufserklärung noch aussteht. Wir werden Ihre Mitteilung nun bearbeiten und uns bei Rückfragen mit Ihnen in Verbindung setzen.', 'wpsg'); ?> <?php echo __('Mit freundlichen Grüßen', 'wpsg'); ?> |
