Besseres Handling Rückerstattungen
This commit is contained in:
@@ -0,0 +1,50 @@
|
||||
<?php
|
||||
|
||||
use Illuminate\Database\Migrations\Migration;
|
||||
use Illuminate\Support\Facades\DB;
|
||||
|
||||
/**
|
||||
* Die beiden Erklärungen, die auf der Erstattungsseite neben der bestehenden stehen.
|
||||
*
|
||||
* `…_ACCOUNT` gilt nur im Auszahlungsweg: Zurückgezahlt wird ausschließlich auf das Konto, von dem der
|
||||
* Beitrag kam -- sonst ließe sich über eine Erstattung Geld auf ein fremdes Konto umleiten, und die
|
||||
* Zahlung wäre ihrer Herkunft nicht mehr zuzuordnen.
|
||||
*
|
||||
* `…_DONATION` tritt an die Stelle beider Sätze, wenn gespendet wird: Dann gibt es kein Konto, und die
|
||||
* Person erklärt statt der Kontoangabe den Verzicht.
|
||||
*
|
||||
* Wie bei {@see 2026_09_04_140010_add_participant_refund_confirmation_text.php} liegen sie in
|
||||
* `page_texts` und nicht in der Dokumentvorlage, damit Seite und Beleg denselben Wortlaut zeigen.
|
||||
* Geschrieben wird nur, was fehlt -- eine bereits angepasste Fassung bleibt unangetastet.
|
||||
*/
|
||||
return new class extends Migration {
|
||||
/** @var array<string, string> */
|
||||
private const array TEXTS = [
|
||||
'CONFIRMATION_PARTICIPANT_REFUND_ACCOUNT' => 'Ich bestätige, dass das angegebene Konto dasselbe '
|
||||
. 'ist, von dem der Teilnahmebeitrag gezahlt wurde.',
|
||||
'CONFIRMATION_PARTICIPANT_REFUND_DONATION' => 'Ich verzichte auf die Auszahlung des genannten '
|
||||
. 'Betrags und spende ihn an den Verband. Mir ist bewusst, dass dieser Verzicht nicht '
|
||||
. 'rückgängig gemacht werden kann.',
|
||||
];
|
||||
|
||||
public function up(): void
|
||||
{
|
||||
foreach (self::TEXTS as $name => $content) {
|
||||
if (DB::table('page_texts')->where('name', $name)->first() !== null) {
|
||||
continue;
|
||||
}
|
||||
|
||||
DB::table('page_texts')->insert([
|
||||
'name' => $name,
|
||||
'content' => $content,
|
||||
'created_at' => now(),
|
||||
'updated_at' => now(),
|
||||
]);
|
||||
}
|
||||
}
|
||||
|
||||
public function down(): void
|
||||
{
|
||||
DB::table('page_texts')->whereIn('name', array_keys(self::TEXTS))->delete();
|
||||
}
|
||||
};
|
||||
@@ -16,8 +16,12 @@
|
||||
-- und nicht noch einmal im Körper. In der Angabentabelle steht ihr Name, weil dort alles zusammensteht,
|
||||
-- was sie erklärt -- Kontoinhaber*in kann eine andere Person sein (etwa ein Elternteil).
|
||||
--
|
||||
-- Der Erklärungssatz kommt aus dem Seitentext CONFIRMATION_PARTICIPANT_REFUND, denselben, den der Teili
|
||||
-- vor dem Absenden ankreuzt. Er steht hier deshalb als Platzhalter und nicht als fester Text.
|
||||
-- Der Erklärungssatz kommt aus den Seitentexten CONFIRMATION_PARTICIPANT_REFUND(_ACCOUNT bzw. _DONATION),
|
||||
-- denselben, die der Teili vor dem Absenden ankreuzt. Er steht hier deshalb als Platzhalter und nicht als
|
||||
-- fester Text.
|
||||
--
|
||||
-- Ebenso der Einleitungssatz: Er lautet bei einer Spende anders als bei einer Auszahlung, und {if:…} kennt
|
||||
-- keine Verneinung, mit der sich der eine gegen den anderen tauschen ließe.
|
||||
|
||||
DELETE FROM document_templates WHERE document_type = 'participant_refund';
|
||||
|
||||
@@ -129,7 +133,7 @@ body { font-family: \'DejaVu Sans\', sans-serif; font-size: 9.5pt; color: #1a1a1
|
||||
<td>{unregistered_at}</td>
|
||||
</tr>{/if:unregistered_at}
|
||||
</table>', 80, 1, NOW(), NOW()),
|
||||
('participant_refund', 'body', '<div class="intro-text">Ich konnte an der Veranstaltung nicht oder nur teilweise teilnehmen und bitte um die Rückerstattung wie folgt:</div>
|
||||
('participant_refund', 'body', '<div class="intro-text">{intro_text}</div>
|
||||
|
||||
{details_table}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user