fixed preorder issue

This commit is contained in:
Luca Haid
2025-06-12 13:25:19 +02:00
parent ec74c28866
commit 6faafc86f9
2 changed files with 4 additions and 7 deletions

View File

@@ -513,7 +513,7 @@ class PreordercampaignController extends mfBaseController {
"prevent_previous" => ($prevent_previous) ? 1 : 0,
];
$statusmailtemplate = PreordercampaignStatusnotificationMailtemplate::getFirst(["preordercampaign_id" => $campaign->id, "logical_config" => json_encode(["type" => $status_code])]);
$statusmailtemplate = PreordercampaignStatusnotificationMailtemplate::getFirst(["preordercampaign_id" => $campaign->id, "logical_config" => $status_code]);
if($statusmailtemplate) {
$statusmailtemplate->update($mt_data);
} else {
@@ -529,7 +529,7 @@ class PreordercampaignController extends mfBaseController {
foreach($mailtemplates_delete as $mt_code) {
$status_mt = null;
if(preg_match("/^\d+$/", $mt_code)) $status_mt = PreordercampaignStatusnotificationMailtemplate::getFirst(["preordercampaign_id" => $campaign->id, "status_code" => $mt_code]);
else $status_mt = PreordercampaignStatusnotificationMailtemplate::getFirst(["preordercampaign_id" => $campaign->id, "logical_config" => json_encode(["type" => $mt_code])]);
else $status_mt = PreordercampaignStatusnotificationMailtemplate::getFirst(["preordercampaign_id" => $campaign->id, "logical_config" => $mt_code]);
if($status_mt) $status_mt->delete();
}

View File

@@ -176,11 +176,8 @@ class PreordercampaignStatusnotificationMailtemplate extends mfBaseModel {
if(array_key_exists("logical_config", $filter)) {
$logical_config = $filter['logical_config'];
if(is_array($logical_config) && count($logical_config)) {
$where .= " AND PreordercampaignStatusnotificationMailtemplate.notification_type='logical' AND PreordercampaignStatusnotificationMailtemplate.logical_config = '" . json_encode($logical_config) . "'";
} elseif(is_string($logical_config)) {
$where .= " AND PreordercampaignStatusnotificationMailtemplate.notification_type='logical' AND PreordercampaignStatusnotificationMailtemplate.logical_config LIKE '%" . $logical_config . "%'";
}
$where .= " AND PreordercampaignStatusnotificationMailtemplate.notification_type='logical'
AND JSON_EXTRACT(PreordercampaignStatusnotificationMailtemplate.logical_config, '$.type') = '$logical_config'";
}
if(array_key_exists("mailtemplate_id", $filter)) {