Changeset 59821 in spip-zone


Ignore:
Timestamp:
Mar 27, 2012, 3:51:00 PM (7 years ago)
Author:
abelass@…
Message:

quelques corrections de bugs et adaptations pour sclp

Location:
_plugins_/squirrels_love_chimps_lists
Files:
2 added
10 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/squirrels_love_chimps_lists/branches/1/formulaires/squirrel_chimp_lists_config.html

    r59801 r59821  
    8080                                <div class="choix">
    8181                                        <b>[(#VALEUR)] (<:scl:champ_spip:>)</b>  #SET{name,#VALEUR}
    82 
    8382                                <B_champs_mc>
    8483                                        <select name="mapping[#GET{name}]">
     
    9796        </ul>
    9897</fieldset>
    99 <fieldset class="champs_extras">
    100         <legend><:scl:declarer_champs_extras:></legend>
    101         <ul>
    102                 <li class="squirrel_chimp_mailinglists[ (#ENV**{erreurs}|table_valeur{tables}|oui)erreur]">
    103                         <label for="tables"><:scl:tables_extras:></label>
    104                         <p class="explication"><:scl:tables_extras_explication:></p>
    105                         <div class="choix">
    106                                 [
    107                                 <span class='erreur'>(#ENV**{erreurs}|table_valeur{tables})</span>
    108                                 ]
    109                                 <input type="text" class="texte" style="size:98%" name="tables" id="tables" value='#ENV{tables,spip_auteurs}'/>
    110                         </div>
    111                 </li>
    112                
    113                 #SET{tables,#ENV{tables}|explode{','}}         
    114                 <B_tables>                             
    115                 <li class="squirrel_chimp_mailinglists[ (#ENV**{erreurs}|table_valeur{champs}|oui)erreur]">
    116                         <label for="champs"><:scl:champs_extras:></label>
    117                         <p class="explication"><:scl:champs_extras_explication:></p>
    118                         <div class="choix">
    119                         <dl>
    120                                
    121                         <BOUCLE_tables(POUR){tableau #GET{tables}}>
    122                                 #SET{table,#VALEUR}
    123                                 <B_champs>
    124                                 <dt id="#VALEUR"><a href="##VALEUR" id="table_#VALEUR"class="champs">#VALEUR</a>[ (<:scl:champs_utilises:>: (#ENV{champs}|table_valeur{#GET{table}}|implode{','}))]</dt>
    125                                 <div class="champs_details table_#VALEUR" >
    126                                 <BOUCLE_champs(POUR){tableau #GET{champs}|table_valeur{spip}|table_valeur{tout}|table_valeur{#VALEUR}}>
    127                                         <dd><input type="checkbox" class="checkbox" name="champs[#GET{table}][#VALEUR]" id="champs_#VALEUR" value='#VALEUR' [(#ENV{champs}|table_valeur{#GET{table}}|table_valeur{#VALEUR}|=={#VALEUR}) checked="ckecked"] />
    128                                 <label for="champs_#VALEUR">#VALEUR</label></dd>
    129                                 </BOUCLE_champs>
    130                                 </div> 
    131                                 </B_champs>                                     
    132                         </BOUCLE_tables>
    133                                 [
    134                                 <span class='erreur'>(#ENV**{erreurs}|table_valeur{champs})</span>
    135                                 ]
    136                         </div>
    137                 </B_tables>             
    138         </ul>
    139 </fieldset>
     98        <INCLURE{fond=formulaires/inc-squirrel_chimp_lists_config_champs_extras}{env}{c=#GET{champs}}/>
     99
    140100        <div class="submit"><input name="sync_auteurs" value="<:scl:sync_auteurs:>" type="submit"></div>
    141101       
    142 <script type="text/javascript">
    143  $(document).ready(function(){
    144          
    145         $('.champs_details').hide();             
    146                  
    147         $('a.champs').click(function() {
    148                 var cible = this.id;   
    149                 $('.' + cible).toggle();
    150         });     
    151        
    152  });
    153 </script>               
    154102
    155103
  • _plugins_/squirrels_love_chimps_lists/branches/1/formulaires/squirrel_chimp_lists_config_traiter.php

    r59801 r59821  
    1313       
    1414       
    15                 spip_log("Plugin mailchimp form vérifier : $apiKey ",'squirrel_chimp') ;
     15                spip_log("Plugin mailchimp form vérifier : $apiKey ",'squirrel_chimp_lists') ;
    1616               
    1717                // Composition du batch
     
    4646                                $log .= _T('scl:sync_actualise').$vals['update_count']."<br/>\n";
    4747                                $log .= _T('scl:sync_erreurs').$vals['error_count']."<br/>\n";
    48                                 foreach($vals['errors'] as $val){
    49                                         $log .= $val['email_address']._T('scl:sync_echec')."<br/>\n";
    50                                         $log .= _T('scl:sync_code').$val['code']." <br/>\n";
    51                                         $log .= _T('scl:sync_message').$val['message']." \n";
     48                                if(is_array($vals['errors'])){
     49                                        foreach($vals['errors'] as $val){
     50                                                $log .= $val['email_address']._T('scl:sync_echec')."<br/>\n";
     51                                                $log .= _T('scl:sync_code').$val['code']." <br/>\n";
     52                                                $log .= _T('scl:sync_message').$val['message']." \n";
     53                                        }
    5254                                        }
    5355                                }
     
    6062                        );
    6163       
    62        
     64                spip_log($vals,'squirrel_chimp_lists') ;
    6365                if($pipeline)$objets=$pipeline['data'];
    6466               
  • _plugins_/squirrels_love_chimps_lists/branches/1/inc/editer_auteur_traiter_listes.php

    r59801 r59821  
    11<?php
    22
    3 function inc_editer_auteur_traiter_listes_dist($flux){         
     3function inc_editer_auteur_traiter_listes_dist($flux=''){               
    44                // necessaire pour utiliser les autorisations
    55                include_spip('inc/autoriser');
     
    4747                        $donnees_auteur=$donnees_auteur[1];
    4848                        $email=$donnees_auteur['EMAIL'];
     49
    4950                       
    50        
    5151                        // Actualisation de la liste avec un nouvel auteur ou si activé actualisation des données si modification du profil
    5252                        if (($new AND $ajouter) OR (!$new AND $actualiser AND $statut!='5poubelle')){
  • _plugins_/squirrels_love_chimps_lists/branches/1/plugin.xml

    r59801 r59821  
    33        <auteur>[Spade->http://blog.spade.be/] et [Rainer M&#252;ller->http://www.mychacra.net]</auteur>
    44        <licence>GNU/GLP</licence>
    5         <version>1.4.0</version>
     5        <version>1.4.1</version>
    66        <licence>MIT</licence>
    77        <etat>test</etat>
  • _plugins_/squirrels_love_chimps_lists/branches/1/squirrel_chimp_lists_fonctions.php

    r59801 r59821  
    2020        // On cherche les tables à prendre en compte
    2121
    22         $tables=explode(',',lire_config('squirrel_chimp/tables'));
     22        $t=explode(',',lire_config('squirrel_chimp/tables'));
     23       
     24        $tables=array();
     25        if($t){
     26                foreach($t as $table){
     27                        if($table)$tables[]=$table;
     28                        }
     29                }
    2330        if(!$tables)$tables=array('spip_auteurs');     
    24                
     31       
    2532        return $tables;
    2633        }       
     
    2835// filtre pour obtenir les champs spip à disposition
    2936function champs_spip(){
     37       
    3038        include_spip('inc/config');     
    3139        $tables=tables_dispos();
     
    3341        $trouver_table = charger_fonction('trouver_table','base');
    3442        $champs=array();
    35 
     43        spip_log($tables,'squirrel_chimp_lists');
    3644        foreach($tables AS $key=>$table){
    37                 if($table){
     45                if($table){spip_log(1,'squirrel_chimp_lists');
    3846                        $c=$trouver_table($table);
     47                spip_log($c,'squirrel_chimp_lists');
    3948                        if(is_array($c['field']))$champs['tout'][$table]=array_keys($c['field']);
    4049                        if($extras=$champs_extras[$table]){
     
    5160                        }
    5261                }
    53         //echo serialize($champs);
    5462        return $champs;
    5563        }
     
    7987       
    8088        return $mapping;
     89       
     90}
     91
     92// filtre pour obtenir le champs MailChimp
     93function champs_liste($apiKey='',$listId,$multi=''){
     94       
     95        // initialisation d'un objet mailchimp 
     96        if(!$api){
     97                $apikey=lire_config('squirrel_chimp/apiKey');
     98                $api = new MCAPI($apikey);
     99                }
     100
     101        if(!is_array($listId)){
     102                  $champs= $api->listMergeVars($listId);
     103                }
     104
     105       
     106        return$champs;
    81107       
    82108}
     
    126152                if($i==1)$table_principale=$table;
    127153                else $where_secondaire[$i]=$table_principale.'.'.$identifiant_defaut.'='.$table.'.'.$identifiant_defaut;
    128                 foreach($champs_extras[$table] as $champ){
    129                         $champs[$champ]=$table.'.'.$champ;
    130                         }
    131                 }
    132                
     154                if($champs_extras[$table]){
     155                        foreach($champs_extras[$table] as $champ){
     156                                $champs[$champ]=$table.'.'.$champ;
     157                                }
     158                        }
     159                }
     160                       
    133161        if(!$champs)$champs='*';               
    134162        else $champs['email']='spip_auteurs.email';     
    135         $identifiant_joints=implode(' AND ',$where_secondaire);
    136         if($identifiant)$identifiant_principal=' AND '.$table_principale.'.'.$identifiant_defaut.'='.$identifiant;
    137         if($where_add)$identifiant_additionnel=' AND '.$where_add;
    138        
    139         $where=$identifiant_joints.$identifiant_principal.$identifiant_additionnel;
    140        
    141         spip_log($where,'squirrel_chimp_lists');       
     163       
     164        $identifiant_joints=implode(' AND ',$where_secondaire);
     165        if($identifiant)$identifiant_principal=$table_principale.'.'.$identifiant_defaut.'='.$identifiant;
     166        $w=array($identifiant_joints,$identifiant_principal,$where_add);
     167        $where_1=array();
     168        foreach($w AS $data)    {
     169                if($data)$where_1[]=$data;
     170                }
     171       
     172        $where=implode(' AND ',$where_1);
     173       
    142174       
    143175        $champs=implode(',',$champs);
  • _plugins_/squirrels_love_chimps_lists/trunk/formulaires/squirrel_chimp_lists_config.html

    r59801 r59821  
    8080                                <div class="choix">
    8181                                        <b>[(#VALEUR)] (<:scl:champ_spip:>)</b>  #SET{name,#VALEUR}
    82 
    8382                                <B_champs_mc>
    8483                                        <select name="mapping[#GET{name}]">
     
    9796        </ul>
    9897</fieldset>
    99 <fieldset class="champs_extras">
    100         <legend><:scl:declarer_champs_extras:></legend>
    101         <ul>
    102                 <li class="squirrel_chimp_mailinglists[ (#ENV**{erreurs}|table_valeur{tables}|oui)erreur]">
    103                         <label for="tables"><:scl:tables_extras:></label>
    104                         <p class="explication"><:scl:tables_extras_explication:></p>
    105                         <div class="choix">
    106                                 [
    107                                 <span class='erreur'>(#ENV**{erreurs}|table_valeur{tables})</span>
    108                                 ]
    109                                 <input type="text" class="texte" style="size:98%" name="tables" id="tables" value='#ENV{tables,spip_auteurs}'/>
    110                         </div>
    111                 </li>
    112                
    113                 #SET{tables,#ENV{tables}|explode{','}}         
    114                 <B_tables>                             
    115                 <li class="squirrel_chimp_mailinglists[ (#ENV**{erreurs}|table_valeur{champs}|oui)erreur]">
    116                         <label for="champs"><:scl:champs_extras:></label>
    117                         <p class="explication"><:scl:champs_extras_explication:></p>
    118                         <div class="choix">
    119                         <dl>
    120                                
    121                         <BOUCLE_tables(POUR){tableau #GET{tables}}>
    122                                 #SET{table,#VALEUR}
    123                                 <B_champs>
    124                                 <dt id="#VALEUR"><a href="##VALEUR" id="table_#VALEUR"class="champs">#VALEUR</a>[ (<:scl:champs_utilises:>: (#ENV{champs}|table_valeur{#GET{table}}|implode{','}))]</dt>
    125                                 <div class="champs_details table_#VALEUR" >
    126                                 <BOUCLE_champs(POUR){tableau #GET{champs}|table_valeur{spip}|table_valeur{tout}|table_valeur{#VALEUR}}>
    127                                         <dd><input type="checkbox" class="checkbox" name="champs[#GET{table}][#VALEUR]" id="champs_#VALEUR" value='#VALEUR' [(#ENV{champs}|table_valeur{#GET{table}}|table_valeur{#VALEUR}|=={#VALEUR}) checked="ckecked"] />
    128                                 <label for="champs_#VALEUR">#VALEUR</label></dd>
    129                                 </BOUCLE_champs>
    130                                 </div> 
    131                                 </B_champs>                                     
    132                         </BOUCLE_tables>
    133                                 [
    134                                 <span class='erreur'>(#ENV**{erreurs}|table_valeur{champs})</span>
    135                                 ]
    136                         </div>
    137                 </B_tables>             
    138         </ul>
    139 </fieldset>
     98        <INCLURE{fond=formulaires/inc-squirrel_chimp_lists_config_champs_extras}{env}{c=#GET{champs}}/>
     99
    140100        <div class="submit"><input name="sync_auteurs" value="<:scl:sync_auteurs:>" type="submit"></div>
    141101       
    142 <script type="text/javascript">
    143  $(document).ready(function(){
    144          
    145         $('.champs_details').hide();             
    146                  
    147         $('a.champs').click(function() {
    148                 var cible = this.id;   
    149                 $('.' + cible).toggle();
    150         });     
    151        
    152  });
    153 </script>               
    154102
    155103
  • _plugins_/squirrels_love_chimps_lists/trunk/formulaires/squirrel_chimp_lists_config_traiter.php

    r59801 r59821  
    1313       
    1414       
    15                 spip_log("Plugin mailchimp form vérifier : $apiKey ",'squirrel_chimp') ;
     15                spip_log("Plugin mailchimp form vérifier : $apiKey ",'squirrel_chimp_lists') ;
    1616               
    1717                // Composition du batch
     
    4646                                $log .= _T('scl:sync_actualise').$vals['update_count']."<br/>\n";
    4747                                $log .= _T('scl:sync_erreurs').$vals['error_count']."<br/>\n";
    48                                 foreach($vals['errors'] as $val){
    49                                         $log .= $val['email_address']._T('scl:sync_echec')."<br/>\n";
    50                                         $log .= _T('scl:sync_code').$val['code']." <br/>\n";
    51                                         $log .= _T('scl:sync_message').$val['message']." \n";
     48                                if(is_array($vals['errors'])){
     49                                        foreach($vals['errors'] as $val){
     50                                                $log .= $val['email_address']._T('scl:sync_echec')."<br/>\n";
     51                                                $log .= _T('scl:sync_code').$val['code']." <br/>\n";
     52                                                $log .= _T('scl:sync_message').$val['message']." \n";
     53                                        }
    5254                                        }
    5355                                }
     
    6062                        );
    6163       
    62        
     64                spip_log($vals,'squirrel_chimp_lists') ;
    6365                if($pipeline)$objets=$pipeline['data'];
    6466               
  • _plugins_/squirrels_love_chimps_lists/trunk/inc/editer_auteur_traiter_listes.php

    r59801 r59821  
    11<?php
    22
    3 function inc_editer_auteur_traiter_listes_dist($flux){         
     3function inc_editer_auteur_traiter_listes_dist($flux=''){               
    44                // necessaire pour utiliser les autorisations
    55                include_spip('inc/autoriser');
     
    4747                        $donnees_auteur=$donnees_auteur[1];
    4848                        $email=$donnees_auteur['EMAIL'];
     49
    4950                       
    50        
    5151                        // Actualisation de la liste avec un nouvel auteur ou si activé actualisation des données si modification du profil
    5252                        if (($new AND $ajouter) OR (!$new AND $actualiser AND $statut!='5poubelle')){
  • _plugins_/squirrels_love_chimps_lists/trunk/plugin.xml

    r59801 r59821  
    33        <auteur>[Spade->http://blog.spade.be/] et [Rainer M&#252;ller->http://www.mychacra.net]</auteur>
    44        <licence>GNU/GLP</licence>
    5         <version>1.4.0</version>
     5        <version>1.4.1</version>
    66        <licence>MIT</licence>
    77        <etat>test</etat>
  • _plugins_/squirrels_love_chimps_lists/trunk/squirrel_chimp_lists_fonctions.php

    r59801 r59821  
    2020        // On cherche les tables à prendre en compte
    2121
    22         $tables=explode(',',lire_config('squirrel_chimp/tables'));
     22        $t=explode(',',lire_config('squirrel_chimp/tables'));
     23       
     24        $tables=array();
     25        if($t){
     26                foreach($t as $table){
     27                        if($table)$tables[]=$table;
     28                        }
     29                }
    2330        if(!$tables)$tables=array('spip_auteurs');     
    24                
     31       
    2532        return $tables;
    2633        }       
     
    2835// filtre pour obtenir les champs spip à disposition
    2936function champs_spip(){
     37       
    3038        include_spip('inc/config');     
    3139        $tables=tables_dispos();
     
    3341        $trouver_table = charger_fonction('trouver_table','base');
    3442        $champs=array();
    35 
     43        spip_log($tables,'squirrel_chimp_lists');
    3644        foreach($tables AS $key=>$table){
    37                 if($table){
     45                if($table){spip_log(1,'squirrel_chimp_lists');
    3846                        $c=$trouver_table($table);
     47                spip_log($c,'squirrel_chimp_lists');
    3948                        if(is_array($c['field']))$champs['tout'][$table]=array_keys($c['field']);
    4049                        if($extras=$champs_extras[$table]){
     
    5160                        }
    5261                }
    53         //echo serialize($champs);
    5462        return $champs;
    5563        }
     
    7987       
    8088        return $mapping;
     89       
     90}
     91
     92// filtre pour obtenir le champs MailChimp
     93function champs_liste($apiKey='',$listId,$multi=''){
     94       
     95        // initialisation d'un objet mailchimp 
     96        if(!$api){
     97                $apikey=lire_config('squirrel_chimp/apiKey');
     98                $api = new MCAPI($apikey);
     99                }
     100
     101        if(!is_array($listId)){
     102                  $champs= $api->listMergeVars($listId);
     103                }
     104
     105       
     106        return$champs;
    81107       
    82108}
     
    126152                if($i==1)$table_principale=$table;
    127153                else $where_secondaire[$i]=$table_principale.'.'.$identifiant_defaut.'='.$table.'.'.$identifiant_defaut;
    128                 foreach($champs_extras[$table] as $champ){
    129                         $champs[$champ]=$table.'.'.$champ;
    130                         }
    131                 }
    132                
     154                if($champs_extras[$table]){
     155                        foreach($champs_extras[$table] as $champ){
     156                                $champs[$champ]=$table.'.'.$champ;
     157                                }
     158                        }
     159                }
     160                       
    133161        if(!$champs)$champs='*';               
    134162        else $champs['email']='spip_auteurs.email';     
    135         $identifiant_joints=implode(' AND ',$where_secondaire);
    136         if($identifiant)$identifiant_principal=' AND '.$table_principale.'.'.$identifiant_defaut.'='.$identifiant;
    137         if($where_add)$identifiant_additionnel=' AND '.$where_add;
    138        
    139         $where=$identifiant_joints.$identifiant_principal.$identifiant_additionnel;
    140        
    141         spip_log($where,'squirrel_chimp_lists');       
     163       
     164        $identifiant_joints=implode(' AND ',$where_secondaire);
     165        if($identifiant)$identifiant_principal=$table_principale.'.'.$identifiant_defaut.'='.$identifiant;
     166        $w=array($identifiant_joints,$identifiant_principal,$where_add);
     167        $where_1=array();
     168        foreach($w AS $data)    {
     169                if($data)$where_1[]=$data;
     170                }
     171       
     172        $where=implode(' AND ',$where_1);
     173       
    142174       
    143175        $champs=implode(',',$champs);
Note: See TracChangeset for help on using the changeset viewer.