Accueil Code en Vrac Code en Vrac 2
Code en Vrac 2
Écrit par Hidalgo Emmanuel   
<?php
//url des produits, ds toutes les langues
            
$oCol_produits $oBDD->getCollection'produits' );
            
$oCol_produits->setLimit1$iNrbElements );
            
$oCol_produits->setOrderBy'produits_id'true );
            
$oCol_produits->load( array( '( produits_publish = 1 or produits_publish = 4 )''produits_id > '.$iLast_produits_id ) );
            
$oCol_produits $oCol_produits->getObjects();
            foreach( 
$oCol_produits as $oProduits_bdd ){
               
                
//recherche l'url de la description du produit ds la langue
                
foreach( $oMod_site->getAllLang$oMod_site->getLangSite() ) as $oLangue ){
                   
                    
//mise a jour du dernier id traite
                    
$iLast_produits_id $oProduits_bdd->getData_field'produits_id' );
                   
                    
//recupere la description
                    
$oDesc $oBDD->getObject'produits_descriptions' );
                    if( !
$oDesc->load( array( 'produits_id'=>$oProduits_bdd->getData_field'produits_id' ), 'langues_tag'=>$oLangue->langues_tag ) ) )
                        continue;
                   
                    
//recupere l'URL
                    
$sURL $sIMMO_URL_BASE.$oDesc->getData_field'produits_descriptions_url' );
                   
                    
//recupere le produit
                    
$oProduit $oDesc->getData_object'produits_id' );
                   
                    
//recupere la date
                    
$oDate = new DateTime$oProduit->getData_field'produits_date_last' ) );

                    
fwrite$oFile'<url>'.
                            
'<loc>'.$sURL.'</loc>'.
                            
'<lastmod>'.date_format$oDate'Y-m-d' ).'</lastmod>'.
                            
'<changefreq>monthly</changefreq>'.
                        
'</url>'."\n" );
                }
            }
?>


<?php
//recherche une description non traduite
            
$oCol_descrition $oBDD->getCollection'produits_descriptions' );
            
$oFiltre_load = array( '( produits_descriptions_titre is null or produits_descriptions_titre = "" ) and langues_tag = "'.$sLang_cible.'"' );
            
$oCol_descrition->setLimit1$iMax_items );
            
$oCol_descrition->setOrderBy'produits_id'true );
            
$oCol_descrition->load$oFiltre_load );
?>


<?php
//si le user et null, alors renseigner l'administrateur
            
if( is_null$oUser ) ){
                
$oUser $oBDD->getObject'users' );
                
$oUser->setData_field'langues_tag'IMMO_LANG_DEFAULT );
                
$oUser->setData_field'users_email'IMMO_EMAIL_FROM );
                
$oUser->setData_field'users_name'IMMO_EMAIL_FROM_NAME );
                
$oUser->setData_field'users_first_name''' );
            }
           
            
//recherche de l'email avec la langue du user
            
$oEmail $oBDD->getObject'emails' );           
            
$oEmail->load( array( 'emails_tag'=>$sEmail'langues_tag'=>$oUser->getData_field'langues_tag' ) ) );           
?>

<?php
//recupere un goal en fonction de sa cle
        
public function getGoalFromKey$Key ){
            global 
$oBDD;
           
            
$oGoal $oBDD->getObject'emails_goals' );
            
$oGoal->load( array( 'emails_goals_key'=>$Key ) );
            if( 
$oGoal->getData_field'emails_goals_id' ) == '' ){
                return 
NULL;
            }

            return 
$oGoal;
        }
?>

<?php
 
//recupere un email en fonction de sont tag et de sa langue
        
public function getEmailFromTagLang$sEmail$sLang ){
            global 
$oBDD;
           
            
$oEmail $oBDD->getObject'emails' );           
            
$oEmail->load( array( 'emails_tag'=>$sEmail'langues_tag'=>$sLang ) );
            if( 
$oEmail->getData_field'emails_id' ) == '' ){
                return 
NULL;
            }
           
            return 
$oEmail;
        }
?>

<?php
//retoure le premier partenaire ayant la date inferieur a la date donnee
        
public function getOneBefore$sDate ){
            global 
$oBDD;
           
            
$oCol_partenaires $oBDD->getCollection'partenaires' );
            
$oCol_partenaires->setLimit1);
            
$bOthers $oCol_partenaires->load( array( 'partenaires_date_last_update < "'.$sDate.'"' ) );
            if( 
$bOthers && count$oCol_partenaires->getObjects() ) > ){
               
                
//recuperation du premier partenaire
                
$oCol_partenaires $oCol_partenaires->getObjects();
                return 
$oCol_partenaires];
            }
           
            return 
false;
        }
?>