mail wip
This commit is contained in:
1 parent
521e617879
commit
f9e1f9b49c
17 files changed
+295
-80
No files matched your search
@@ -0,0 +1,83 @@
|
||||
<?php
|
||||
|
||||
namespace App\Actions\SendMail;
|
||||
|
||||
use App\Jobs\SendNewsletterJob;
|
||||
use App\Models\MailAdressen;
|
||||
use App\Models\MailGruppen;
|
||||
use App\Models\MailVorlage;
|
||||
|
||||
class SendNewsletter
|
||||
{
|
||||
public static function mailit($record)
|
||||
{
|
||||
/***
|
||||
"name" => "Arch Versand 2026"
|
||||
"mail_gruppen_id" => 1
|
||||
"mail_vorlage_id" => 2
|
||||
"sende_zeitpunkt" => "2026-05-08 10:00:00"
|
||||
"versand_am" => null
|
||||
"ist_active" => 0
|
||||
*/
|
||||
|
||||
$template = MailVorlage::where('id', $record->mail_vorlage_id)->first();
|
||||
|
||||
/***
|
||||
"titel" => "Ein weiteres Beispiel"
|
||||
"subjekt" => "Was ich noch sagen wollte"
|
||||
"inhalt" => "<p><strong>Hallo ###vorname###</strong></p><p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolor ▶"
|
||||
*/
|
||||
|
||||
$gruppe = MailGruppen::where('id', $record->mail_gruppen_id)->first();
|
||||
|
||||
/***
|
||||
"name" => "Test Versand"
|
||||
"created_at" => "2026-05-06 06:42:16"
|
||||
"absender_name" => ""
|
||||
"absender_mail" => ""
|
||||
*/
|
||||
|
||||
$adressen = MailAdressen::where('mail_gruppen_id', $record->mail_gruppen_id)->where('deaktiviert', 0)->get();
|
||||
|
||||
/***
|
||||
"mail_gruppen_id" => 1
|
||||
"email" => "ht@webwerkstatt.tirol"
|
||||
"company" => "WebWerkstatt.tirol"
|
||||
"anrede" => "Freundschaftlich"
|
||||
"gender" => "0"
|
||||
"first_name" => "Hermann"
|
||||
"last_name" => "Telser"
|
||||
*/
|
||||
|
||||
// dd($record, $template, $gruppe, $adressen);
|
||||
|
||||
// "email" => "ht@webwerkstatt.tirol"
|
||||
// "company" => "WebWerkstatt.tirol"
|
||||
// "gender" => "0"
|
||||
// "first_name" => "Hermann"
|
||||
// "last_name" => "Telser"
|
||||
|
||||
foreach ($adressen as $mail_data) {
|
||||
|
||||
$mail_data->subjekt = $template->subjekt;
|
||||
$mail_data->email = $template->email;
|
||||
$mail_data->absender_name = $gruppe->absender_name;
|
||||
$mail_data->absender_mail = $gruppe->absender_mail;
|
||||
|
||||
if ($mail_data->anrede == 'Höflich') {
|
||||
if ($mail_data->gender) {
|
||||
$anrede = 'Sehr geehrte Frau '.$mail_data->last_name;
|
||||
} else {
|
||||
$anrede = 'Sehr geehrter Herr '.$mail_data->last_name;
|
||||
}
|
||||
} else {
|
||||
$anrede = 'Hallo '.$mail_data->first_name;
|
||||
}
|
||||
|
||||
$mail_data->inhalt = str_replace('###anrede###', $anrede, $template->inhalt);
|
||||
|
||||
SendNewsletterJob::dispatch($mail_data);
|
||||
|
||||
}
|
||||
}
|
||||
}
|
||||
Reference in new issue
Block a user