private function updateAdCampaignBannerTotals() { /* * update all compiled stats into the AdCampaignBanner table */ $BidTotalsRollupFactory = \_factory\BidTotalsRollup::get_instance(); $ImpressionAndSpendTotalsRollupFactory = \_factory\ImpressionAndSpendTotalsRollup::get_instance(); $AdCampaignBannerFactory = \_factory\AdCampaignBanner::get_instance(); $params = array(); $params["Active"] = 1; $AdCampaignBannerList = $AdCampaignBannerFactory->get($params); foreach ($AdCampaignBannerList as $AdCampaignBanner) { $banner_id = $AdCampaignBanner->AdCampaignBannerID; $params = array(); $params["AdCampaignBannerID"] = $banner_id; $BidTotalsRollup = $BidTotalsRollupFactory->get_row($params); if ($BidTotalsRollup == null) { continue; } $ImpressionAndSpendTotalsRollup = $ImpressionAndSpendTotalsRollupFactory->get_row($params); if ($ImpressionAndSpendTotalsRollup == null) { continue; } $AdCampaignBanner->BidsCounter = $BidTotalsRollup->TotalBids; $AdCampaignBanner->ImpressionsCounter = $ImpressionAndSpendTotalsRollup->TotalImpressions; $AdCampaignBanner->CurrentSpend = $ImpressionAndSpendTotalsRollup->TotalSpendGross; $data = $AdCampaignBanner->getArrayCopy(); $AdCampaignBannerFactory->saveAdCampaignBannerFromDataArray($data); } /* * Update all AdCampaign tables with the new info from the AdCampaignBanner tables */ $AdCampaignFactory = \_factory\AdCampaign::get_instance(); $params = array(); $params["Active"] = 1; $AdCampaignList = $AdCampaignFactory->get($params); foreach ($AdCampaignList as $AdCampaign) { $ad_campaign_id = $AdCampaign->AdCampaignID; $AdCampaignBannerFactory = \_factory\AdCampaignBanner::get_instance(); $params = array(); $params["AdCampaignID"] = $ad_campaign_id; $AdCampaignBannerList = $AdCampaignBannerFactory->get($params); $impressions_counter = 0; $current_spend = 0; foreach ($AdCampaignBannerList as $AdCampaignBanner) { $impressions_counter += $AdCampaignBanner->ImpressionsCounter; $current_spend += floatval($AdCampaignBanner->CurrentSpend); } $AdCampaign->ImpressionsCounter = $impressions_counter; $AdCampaign->CurrentSpend = $current_spend; $data = $AdCampaign->getArrayCopy(); $AdCampaignFactory->saveAdCampaignFromDataArray($data); } }
public function tenMinuteMaintenanceAction() { /* * update all compiled stats into the AdCampaignBanner table */ $BidTotalsRollupFactory = \_factory\BidTotalsRollup::get_instance(); $ImpressionAndSpendTotalsRollupFactory = \_factory\ImpressionAndSpendTotalsRollup::get_instance(); $AdCampaignBannerFactory = \_factory\AdCampaignBanner::get_instance(); $params = array(); $params["Active"] = 1; $AdCampaignBannerList = $AdCampaignBannerFactory->get($params); foreach ($AdCampaignBannerList as $AdCampaignBanner) { $banner_id = $AdCampaignBanner->AdCampaignBannerID; $params = array(); $params["AdCampaignBannerID"] = $banner_id; $BidTotalsRollup = $BidTotalsRollupFactory->get_row($params); if ($BidTotalsRollup == null) { continue; } $ImpressionAndSpendTotalsRollup = $ImpressionAndSpendTotalsRollupFactory->get_row($params); if ($ImpressionAndSpendTotalsRollup == null) { continue; } $AdCampaignBanner->BidsCounter = $BidTotalsRollup->TotalBids; $AdCampaignBanner->ImpressionsCounter = $ImpressionAndSpendTotalsRollup->TotalImpressions; $AdCampaignBanner->CurrentSpend = $ImpressionAndSpendTotalsRollup->TotalSpendGross; $data = $AdCampaignBanner->getArrayCopy(); $AdCampaignBannerFactory->saveAdCampaignBannerFromDataArray($data); } }