function campaignmonitor_campaign_entity_storage_load in Campaign Monitor 8
Implements hook_entity_storage_load()
File
- modules/
campaignmonitor_campaign/ campaignmonitor_campaign.module, line 138 - Module file for campaignmonitor_campaign.
Code
function campaignmonitor_campaign_entity_storage_load(array $entities, $entity_type) {
if ($entity_type != 'campaignmonitor_campaign') {
return;
}
$ids = [];
if (!empty($entities)) {
foreach ($entities as $campaign) {
$ids[] = $campaign
->getMcCampaignId();
}
}
$mc_campaigns = campaignmonitor_campaign_get_campaigns($ids);
foreach ($entities as $mc_campaign_id => $campaign) {
$campaign->mc_data = $mc_campaigns[$mc_campaign_id];
// Lists are cached separately, but we want to load them here.
if (isset($campaign->mc_data->recipients->list_id) && $campaign->mc_data->recipients->list_id) {
$campaign->list = campaignmonitor_get_list($campaign->mc_data->recipients->list_id);
}
if (isset($campaign->mc_data->settings->template_id) && $campaign->mc_data->settings->template_id) {
$campaign->mc_template = campaignmonitor_campaign_get_template($campaign->mc_data->settings->template_id);
}
}
}