Preorder/getFilteresPreordersApi() not takes user networks into account

This commit is contained in:
Frank Schubert
2023-09-28 12:01:33 +02:00
parent d0bcb9a369
commit dce1d053dc

View File

@@ -103,7 +103,6 @@ class PreorderController extends mfBaseController {
}
if(is_array($user_network_ids) && count($user_network_ids)) {
if(!$my_networks) {
foreach($user_network_ids as $mnid) {
$my_networks[] = new Network($mnid);
@@ -827,6 +826,30 @@ class PreorderController extends mfBaseController {
$my_networks = $this->me->myNetworks(['netowner','salespartner']);
}
// check users allowed networks
$user_network_ids = $this->me->getFlag("preorder_networks")->value();
if($user_network_ids) {
$user_network_ids = json_decode($user_network_ids);
}
if(is_array($user_network_ids) && count($user_network_ids)) {
if(!$my_networks) {
foreach($user_network_ids as $mnid) {
$my_networks[] = new Network($mnid);
}
} else {
//var_dump($user_network_ids, $my_networks);exit;
$new_my_networks = [];
foreach($my_networks as $network) {
if(in_array($network->id, $user_network_ids)) {
$new_my_networks[$network->id] = $network;
}
}
$my_networks = $new_my_networks;
}
}
foreach($my_networks as $network) {
foreach(PreordercampaignModel::search(['network_id' => $network->id]) as $campaign) {
$my_campaigns[] = $campaign;