70 $this->AdCampaignAccess =
get_package(
'ad::ad_campaign::ad_campaign_access' ,
'last' , __FILE__ );
71 $this->AdBannerAccess =
get_package(
'ad::ad_banner::ad_banner_access' ,
'last' , __FILE__ );
72 $this->CachedMultyFS =
get_package(
'cached_multy_fs' ,
'last' , __FILE__ );
73 $this->String =
get_package(
'string' ,
'last' , __FILE__ );
74 $this->UserAlgorithms =
get_package(
'user::user_algorithms' ,
'last' , __FILE__ );
100 private function get_campaigns_and_banners()
104 $id = $this->UserAlgorithms->get_id();
105 $Campaigns = $this->AdCampaignAccess->unsafe_select(
"archived = 0 AND creator = $id" );
107 if( isset( $Campaigns[ 0 ] ) )
110 $Banners = $this->AdBannerAccess->unsafe_select(
"archived = 0 AND campaign_id IN ( $ids )" );
114 $Campaigns = $Banners = array();
117 return( array( $Campaigns , $Banners ) );
119 catch( Exception $e )
147 private function compile_campaign( $Campaign , &$Banners )
151 $CompanyTemplate = $this->CachedMultyFS->get_template( __FILE__ ,
'campaign.tpl' );
152 $CompanyTemplate = $this->String->print_record( $CompanyTemplate , $Campaign );
154 foreach( $Banners as $j => $Banner )
156 if( $Campaign->id == $Banner->campaign_id )
158 $Template2 = $this->CachedMultyFS->get_template( __FILE__ ,
'banner.tpl' );
159 $Template2 = $this->String->print_record( $Template2 , $Banner );
160 $CompanyTemplate = str_replace(
'{banners}' , $Template2.
'{banners}' , $CompanyTemplate );
164 $this->Output .= $CompanyTemplate;
166 catch( Exception $e )
198 list( $Campaigns , $Banners ) = $this->get_campaigns_and_banners();
200 if( isset( $Campaigns[ 0 ] ) )
202 foreach( $Campaigns as $i => $Campaign )
204 $this->compile_campaign( $Campaign , $Banners );
207 $Template = $this->CachedMultyFS->get_template( __FILE__ ,
'campaigns_list.tpl' );
209 $this->Output = str_replace(
'{output}' , $this->Output , $Template );
213 $this->Output = $this->CachedMultyFS->get_template( __FILE__ ,
'ad_campaign_no_data_found.tpl' );
216 catch( Exception $e )
246 $ContextSet->execute( $Options , $this , __FILE__ );
248 catch( Exception $e )
282 $ContextSet->add_context( dirname( __FILE__ ).
'/conf/cfcxs_list_ad_campaign_form' );
284 $ContextSet->execute( $Options , $this , __FILE__ );
286 return( $this->Output );
288 catch( Exception $e )