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);
     }
 }
Ejemplo n.º 2
0
 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);
     }
 }