Changeset 59820 in spip-zone
- Timestamp:
- Mar 27, 2012, 3:48:29 PM (9 years ago)
- Location:
- _plugins_/squirrels_love_chimps_lists_plus
- Files:
-
- 14 edited
Legend:
- Unmodified
- Added
- Removed
-
_plugins_/squirrels_love_chimps_lists_plus/branches/0.1/formulaires/auteur_listes.php
r59313 r59820 21 21 $listes_accordes=lire_config('squirrel_chimp/mailinglists'); 22 22 23 24 23 25 $auteur=sql_fetsel('email,format','spip_auteurs','id_auteur='.$id_auteur); 24 26 $email= $auteur['email']; … … 27 29 $listes=sql_select('*','spip_auteurs_listes','id_auteur='.$id_auteur); 28 30 31 $editable=donnees_sync('','',$id_auteur)?true:false; 29 32 30 33 $info_liste_spip=array(); … … 43 46 $status=array(); 44 47 45 48 if($editable){ 46 49 foreach($listes_accordes AS $id_liste_spip=>$id_liste_mc){ 47 50 … … 66 69 67 70 if(!$timestamp){ 68 $member_info=membres_liste_info_mc($api,$id_liste_mc,$email);71 if($email)$member_info=membres_liste_info_mc($api,$id_liste_mc,$email); 69 72 $timestamp=$member_info['data'][0]['timestamp']; 70 73 } … … 124 127 } 125 128 126 129 } 127 130 128 131 $liste=sql_select('id_liste','spip_auteurs_listes','statut="valide" AND id_auteur='.$id_auteur); … … 143 146 'listes_abos'=> $listes_abos, 144 147 'format'=>$format, 145 'listes_abos_prev'=>'', 148 'listes_abos_prev'=>'', 149 'editable'=>$editable, 146 150 ); 147 151 $valeurs['_hidden'] .='<input type="hidden" name="listes_abos_prev" value="'.implode(',',$listes_abos_prev).'"/>'; … … 184 188 $api = new MCAPI($apikey); 185 189 $listes_accordes=lire_config('squirrel_chimp/mailinglists'); 190 186 191 $date=date('Y-m-d G:i:s'); 187 192 //les fonctions … … 237 242 238 243 // compilation des informations à envoyer à MailChimp 239 $auteur=donnees_sync($id_liste,'spip_auteurs','id_auteur='.$id_auteur); 240 241 $auteur=$auteur[1]; 242 243 $email=$auteur['EMAIL']; 244 $auteur=donnees_sync($id_liste,'',$id_auteur); 245 246 247 248 //$auteur=$auteur[1]; 249 250 $email=$auteur[1]['EMAIL']; 244 251 $liste=$listes_accordes[$id_liste]; 245 252 246 253 $statut=$auteur['statut']; 254 if($email){ 247 255 if($liste)$vals=inscription_liste_mc($valeurs,$api,$liste,$email,$auteur,$format,$optin,true); 256 248 257 249 258 if($vals['data']['message_erreur']){ … … 251 260 } 252 261 else{ 253 $infos=membres_liste_info_mc($api,$liste,$email);262 if($email)$infos=membres_liste_info_mc($api,$liste,$email); 254 263 $infos=$infos['data'][0]; 255 264 … … 268 277 spip_log($vals, 'sclp'); 269 278 } 279 else $message_ok.='<li>'._T('sclp:actualisation_spip_ok_probleme_actualisation_mailchimp').'</li>'; 270 280 } 281 } 271 282 272 283 } -
_plugins_/squirrels_love_chimps_lists_plus/branches/0.1/formulaires/inc-squirrel_chimps_lists_config-sclp.html
r59329 r59820 24 24 #SET{nom_liste,#ARRAY} 25 25 <BOUCLE_listes_spip(LISTES){statut IN public,prive}> 26 <div class="choix"> #SET{nom_liste,#GET{nom_liste}|array_merge{#ARRAY{id_#ID_LISTE,#TITRE}}} 26 <div class="choix"> 27 #SET{nom_liste,#GET{nom_liste}|array_merge{#ARRAY{id_#ID_LISTE,#TITRE}}} 27 28 <span class="titre">#TITRE </span> 28 29 <B_listes> … … 32 33 <option value="[(#VALEUR|table_valeur{id})]" [(#ENV{mailinglists}|table_valeur{#ID_LISTE}|=={[(#VALEUR|table_valeur{id})]}|oui) selected="selected"]>[(#VALEUR|table_valeur{name})] 33 34 </option> 34 </div>35 35 </BOUCLE_listes> 36 36 </select> … … 39 39 40 40 [(#SET{id_liste_mc,#CONFIG{squirrel_chimp/mailinglists}|table_valeur{#ID_LISTE}})] 41 41 42 42 [(#SET{liste, 43 43 #ARRAY{ … … 47 47 })] 48 48 49 [(#SET{champs,#INCLURE{fond=inclure/appels_mc}{appel=champs_listes}{apikey=#GET{apikey}} {liste=#GET{liste}}{ base=spip_auteurs}{multi=true}})]50 51 <INCLURE{fond=formulaires/inc-squirrel_chimps_lists_config-sclp_accordance_champs}{champs=#GET{champs}}{id_liste}{nom_liste=#TITRE}{id_liste_mc=#GET{id_liste_mc}}{env} />49 [(#SET{champs,#INCLURE{fond=inclure/appels_mc}{appel=champs_listes}{apikey=#GET{apikey}} {liste=#GET{liste}}{multi=true}|unserialize})] 50 51 <INCLURE{fond=formulaires/inc-squirrel_chimps_lists_config-sclp_accordance_champs}{champs=#GET{champs}}{id_liste}{nom_liste=#TITRE}{id_liste_mc=#GET{id_liste_mc}}{env}{apikey=#GET{apikey}} /> 52 52 53 53 … … 85 85 </ul> 86 86 </fieldset> 87 87 <INCLURE{fond=formulaires/inc-squirrel_chimp_lists_config_champs_extras}{env}{c=#GET{champs}}/> 88 88 <script> 89 89 $(document).ready(function(){ -
_plugins_/squirrels_love_chimps_lists_plus/branches/0.1/formulaires/inc-squirrel_chimps_lists_config-sclp_accordance_champs.html
r59329 r59820 1 1 #CACHE{0} 2 3 #SET{ champs_mailchimp,#ENV**{champs}|table_valeur{mailchimp}}2 #SET{champs_mailchimp,(#ENV{apikey}|champs_liste{#ENV{id_liste_mc}})} 3 #SET{tables,#VAL{tables}|tables_dispos} 4 4 5 5 <BOUCLE_test(CONDITION){si #ID_LISTE|oui}> 6 <div class="accordance" id= #ENV{id_liste_mc}">6 <div class="accordance" id="#ENV{id_liste_mc}"> 7 7 8 8 [<h3>(#TITRE)</h3>] 9 <BOUCLE_listes2(POUR){tableau #ENV**{champs}|table_valeur{spip}}> 10 <b>[(#VALEUR)] (<:scl:champ_spip:>)</b>#SET{name,#VALEUR} 11 <B_champs_mc> 12 <select name="mapping[#ID_LISTE][#VALEUR]"> 13 <option value=""><:scl:pas_accorder:></option> 14 <BOUCLE_champs_mc(POUR){tableau #GET{champs_mailchimp}|table_valeur{#ENV{id_liste_mc}}}> 15 <option value="[(#VALEUR|table_valeur{tag})]"[(#ENV{mapping}|table_valeur{#ID_LISTE}|table_valeur{#GET{name}}|=={[(#VALEUR|table_valeur{tag})]}|oui) selected="selected"]>[(#VALEUR|table_valeur{name})]</option> 16 </BOUCLE_champs_mc> 17 </select> 18 </B_champs_mc> 19 20 </BOUCLE_champs> 21 22 </BOUCLE_listes2> 23 </div> 9 <BOUCLE_tables(POUR){tableau #GET{tables}}>#SET{table,#VALEUR} 10 <BOUCLE_listes2(POUR){tableau #ENV{champs}|table_valeur{spip}|table_valeur{#GET{table}}}> 11 <b>[(#VALEUR)] (<:scl:champ_spip:>)</b>#SET{name,#VALEUR} 12 <B_champs_mc> 13 <select name="mapping[#ID_LISTE][#VALEUR]"> 14 <option value=""><:scl:pas_accorder:></option> 15 <BOUCLE_champs_mc(POUR){tableau #GET{champs_mailchimp}}> 16 <option value="[(#VALEUR|table_valeur{tag})]"[(#ENV{mapping}|table_valeur{#ID_LISTE}|table_valeur{#GET{name}}|=={[(#VALEUR|table_valeur{tag})]}|oui) selected="selected"]>[(#VALEUR|table_valeur{name})]</option> 17 </BOUCLE_champs_mc> 18 </select> 19 </B_champs_mc> 20 21 </BOUCLE_champs> 22 23 </BOUCLE_listes2> 24 </BOUCLE_tables> 25 </div> 24 26 </BOUCLE_test> -
_plugins_/squirrels_love_chimps_lists_plus/branches/0.1/inc/syncroniser_listes.php
r59252 r59820 28 28 $since=sql_getfetsel('date_syncro','spip_listes_syncro','objet="listes" AND type_syncro="liste" AND id_objet='.$id_liste_spip,'','date_syncro DESC'); 29 29 30 30 31 31 // les données spip 32 $champs=champs_spip(); 33 $champs_spip_auteurs=array(); 34 foreach($champs AS $champ){ 35 $champs_spip_auteurs[]='spip_auteurs.'.$champ; 36 } 37 38 $c=implode(',',$champs_spip_auteurs).',spip_auteurs_listes.maj,spip_auteurs_listes.date_syncro,spip_auteurs_listes.statut,spip_auteurs.email,spip_auteurs.id_auteur,spip_auteurs.id_mailchimp'; 32 33 $tables=tables_dispos(); 34 $champs_extras=lire_config('squirrel_chimp/champs'); 35 36 37 //Préparation de la requette 38 $identifiant_defaut='id_auteur'; 39 40 $from=implode(',',$tables); 41 42 $where_principal=$identifiant_principal.'='.$identifiant; 43 $where_secondaire=array(); 44 $champs=array(); 45 $i=0; 46 foreach($tables AS $table){ 47 $i++; 48 if($i==1)$table_principale=$table; 49 else $where_secondaire[$i]=$table_principale.'.'.$identifiant_defaut.'='.$table.'.'.$identifiant_defaut; 50 if($champs_extras[$table]){ 51 foreach($champs_extras[$table] as $champ){ 52 $champs[$champ]=$table.'.'.$champ; 53 } 54 } 55 } 56 57 if(!$champs)$champs='*'; 58 else $champs['email']='spip_auteurs.email'; 59 60 $identifiant_joints=implode(' AND ',$where_secondaire); 61 if($identifiant_joints)$where=' AND '.$identifiant_joints; 62 63 64 $champs=implode(',',$champs).',spip_auteurs_listes.maj,spip_auteurs_listes.date_syncro,spip_auteurs_listes.statut,spip_auteurs.id_auteur,spip_auteurs.id_mailchimp'; 39 65 40 66 // syncroniser tout, n'importe la date de la dernière mise à jour … … 42 68 43 69 44 $liste_spip=sql_select($c ,'spip_auteurs_listes,spip_auteurs','spip_auteurs_listes.id_liste='.$id_liste_spip.' AND spip_auteurs_listes.id_auteur=spip_auteurs.id_auteur AND spip_auteurs_listes.date_syncro >'.sql_quote($since));70 $liste_spip=sql_select($champs,'spip_auteurs_listes,'.$from,'spip_auteurs_listes.id_liste='.$id_liste_spip.' AND spip_auteurs_listes.id_auteur=spip_auteurs.id_auteur AND spip_auteurs_listes.date_syncro >'.sql_quote($since).$where); 45 71 46 72 // Composer le tableau distinguant entre abonnées et désabonnées … … 55 81 $listes_mc=array(); 56 82 foreach($statuts AS $status){ 57 $listes_mc[$status]=membres_liste_mc($api,$id_liste_mailchimp,$status, $since,$limit);83 $listes_mc[$status]=membres_liste_mc($api,$id_liste_mailchimp,$status,'',$limit); 58 84 } 59 85 } … … 61 87 $liste_mc=membres_liste_mc($api,$id_liste_mailchimp,$status,$since,$limit); 62 88 } 63 89 spip_log($listes_mc, 'sclp'); 90 spip_log($listes_spip, 'sclp'); 64 91 //Etablir les candiats à la syncro. 65 92 -
_plugins_/squirrels_love_chimps_lists_plus/branches/0.1/lang/sclp_fr.php
r59341 r59820 10 10 'abonnement_inscrit' => 'Inscrits aux listes d\'envois', 11 11 'activer_liste' => 'Activer cette liste', 12 'actualisation_spip_ok_probleme_actualisation_mailchimp' => 'Actualisation spip ok, mais il y a un problème avec l\'actualisation vers Mailchimp. si vous utilisez plusieurs tables pour la syncro, cet auteur ne figure probablement pas dans toutes les tables', 12 13 'aucun_abonnement' => 'Pas d\'abonnments', 13 14 -
_plugins_/squirrels_love_chimps_lists_plus/branches/0.1/plugin.xml
r59329 r59820 4 4 <licence>GNU/GLP</licence> 5 5 <version>0.2.1</version> 6 <version_base>0. 1.13</version_base>6 <version_base>0.2.0</version_base> 7 7 <licence>MIT</licence> 8 8 <etat>test</etat> -
_plugins_/squirrels_love_chimps_lists_plus/branches/0.1/sclp_fonctions.php
r59313 r59820 56 56 } 57 57 } 58 58 59 59 return $batch; 60 60 } … … 177 177 $retval = $api->listMembers($id_liste_mailchimp,$status,$since,$start,$limit); 178 178 179 179 spip_log($retval, 'sclp'); 180 180 return $retval; 181 181 … … 290 290 $id_auteur = $flux['data']['id_auteur']; 291 291 $email = $flux['args']['args'][4]['email']; 292 $sql=sql_select('id_liste','spip_auteurs_listes','id_auteur='.$id_auteur. 'AND statut="valide"'); 292 293 $sql=sql_select('id_liste','spip_auteurs_listes','id_auteur='.$id_auteur.' AND statut="valide"'); 293 294 294 295 $lists_sync=array(); … … 319 320 spip_log('actualiser','sclp'); 320 321 321 // By default this sends a confirmation email - you will not see new members 322 // until the link contained in it is clicked! 323 // listSubscribe(string apikey, string id, string email_address, array merge_vars, string email_type, bool double_optin, bool update_existing, bool replace_interests, bool send_welcome) 322 324 323 325 324 // Inscription pour chaque liste 326 325 foreach($lists_sync AS $listId=>$id_liste_spip){ 327 326 // compilation des informations à envoyer à MailChimp 328 $donnees_auteur=donnees_sync($id_liste_spip,' spip_auteurs','id_auteur='.$id_auteur);327 $donnees_auteur=donnees_sync($id_liste_spip,'',$id_auteur); 329 328 $retour=inscription_liste_mc($flux,$api,$listId,$email,$donnees_auteur[1],$email_type,$optin,true); 330 329 } -
_plugins_/squirrels_love_chimps_lists_plus/trunk/formulaires/auteur_listes.php
r59313 r59820 21 21 $listes_accordes=lire_config('squirrel_chimp/mailinglists'); 22 22 23 24 23 25 $auteur=sql_fetsel('email,format','spip_auteurs','id_auteur='.$id_auteur); 24 26 $email= $auteur['email']; … … 27 29 $listes=sql_select('*','spip_auteurs_listes','id_auteur='.$id_auteur); 28 30 31 $editable=donnees_sync('','',$id_auteur)?true:false; 29 32 30 33 $info_liste_spip=array(); … … 43 46 $status=array(); 44 47 45 48 if($editable){ 46 49 foreach($listes_accordes AS $id_liste_spip=>$id_liste_mc){ 47 50 … … 66 69 67 70 if(!$timestamp){ 68 $member_info=membres_liste_info_mc($api,$id_liste_mc,$email);71 if($email)$member_info=membres_liste_info_mc($api,$id_liste_mc,$email); 69 72 $timestamp=$member_info['data'][0]['timestamp']; 70 73 } … … 124 127 } 125 128 126 129 } 127 130 128 131 $liste=sql_select('id_liste','spip_auteurs_listes','statut="valide" AND id_auteur='.$id_auteur); … … 143 146 'listes_abos'=> $listes_abos, 144 147 'format'=>$format, 145 'listes_abos_prev'=>'', 148 'listes_abos_prev'=>'', 149 'editable'=>$editable, 146 150 ); 147 151 $valeurs['_hidden'] .='<input type="hidden" name="listes_abos_prev" value="'.implode(',',$listes_abos_prev).'"/>'; … … 184 188 $api = new MCAPI($apikey); 185 189 $listes_accordes=lire_config('squirrel_chimp/mailinglists'); 190 186 191 $date=date('Y-m-d G:i:s'); 187 192 //les fonctions … … 237 242 238 243 // compilation des informations à envoyer à MailChimp 239 $auteur=donnees_sync($id_liste,'spip_auteurs','id_auteur='.$id_auteur); 240 241 $auteur=$auteur[1]; 242 243 $email=$auteur['EMAIL']; 244 $auteur=donnees_sync($id_liste,'',$id_auteur); 245 246 247 248 //$auteur=$auteur[1]; 249 250 $email=$auteur[1]['EMAIL']; 244 251 $liste=$listes_accordes[$id_liste]; 245 252 246 253 $statut=$auteur['statut']; 254 if($email){ 247 255 if($liste)$vals=inscription_liste_mc($valeurs,$api,$liste,$email,$auteur,$format,$optin,true); 256 248 257 249 258 if($vals['data']['message_erreur']){ … … 251 260 } 252 261 else{ 253 $infos=membres_liste_info_mc($api,$liste,$email);262 if($email)$infos=membres_liste_info_mc($api,$liste,$email); 254 263 $infos=$infos['data'][0]; 255 264 … … 268 277 spip_log($vals, 'sclp'); 269 278 } 279 else $message_ok.='<li>'._T('sclp:actualisation_spip_ok_probleme_actualisation_mailchimp').'</li>'; 270 280 } 281 } 271 282 272 283 } -
_plugins_/squirrels_love_chimps_lists_plus/trunk/formulaires/inc-squirrel_chimps_lists_config-sclp.html
r59329 r59820 24 24 #SET{nom_liste,#ARRAY} 25 25 <BOUCLE_listes_spip(LISTES){statut IN public,prive}> 26 <div class="choix"> #SET{nom_liste,#GET{nom_liste}|array_merge{#ARRAY{id_#ID_LISTE,#TITRE}}} 26 <div class="choix"> 27 #SET{nom_liste,#GET{nom_liste}|array_merge{#ARRAY{id_#ID_LISTE,#TITRE}}} 27 28 <span class="titre">#TITRE </span> 28 29 <B_listes> … … 32 33 <option value="[(#VALEUR|table_valeur{id})]" [(#ENV{mailinglists}|table_valeur{#ID_LISTE}|=={[(#VALEUR|table_valeur{id})]}|oui) selected="selected"]>[(#VALEUR|table_valeur{name})] 33 34 </option> 34 </div>35 35 </BOUCLE_listes> 36 36 </select> … … 39 39 40 40 [(#SET{id_liste_mc,#CONFIG{squirrel_chimp/mailinglists}|table_valeur{#ID_LISTE}})] 41 41 42 42 [(#SET{liste, 43 43 #ARRAY{ … … 47 47 })] 48 48 49 [(#SET{champs,#INCLURE{fond=inclure/appels_mc}{appel=champs_listes}{apikey=#GET{apikey}} {liste=#GET{liste}}{ base=spip_auteurs}{multi=true}})]50 51 <INCLURE{fond=formulaires/inc-squirrel_chimps_lists_config-sclp_accordance_champs}{champs=#GET{champs}}{id_liste}{nom_liste=#TITRE}{id_liste_mc=#GET{id_liste_mc}}{env} />49 [(#SET{champs,#INCLURE{fond=inclure/appels_mc}{appel=champs_listes}{apikey=#GET{apikey}} {liste=#GET{liste}}{multi=true}|unserialize})] 50 51 <INCLURE{fond=formulaires/inc-squirrel_chimps_lists_config-sclp_accordance_champs}{champs=#GET{champs}}{id_liste}{nom_liste=#TITRE}{id_liste_mc=#GET{id_liste_mc}}{env}{apikey=#GET{apikey}} /> 52 52 53 53 … … 85 85 </ul> 86 86 </fieldset> 87 87 <INCLURE{fond=formulaires/inc-squirrel_chimp_lists_config_champs_extras}{env}{c=#GET{champs}}/> 88 88 <script> 89 89 $(document).ready(function(){ -
_plugins_/squirrels_love_chimps_lists_plus/trunk/formulaires/inc-squirrel_chimps_lists_config-sclp_accordance_champs.html
r59329 r59820 1 1 #CACHE{0} 2 3 #SET{ champs_mailchimp,#ENV**{champs}|table_valeur{mailchimp}}2 #SET{champs_mailchimp,(#ENV{apikey}|champs_liste{#ENV{id_liste_mc}})} 3 #SET{tables,#VAL{tables}|tables_dispos} 4 4 5 5 <BOUCLE_test(CONDITION){si #ID_LISTE|oui}> 6 <div class="accordance" id= #ENV{id_liste_mc}">6 <div class="accordance" id="#ENV{id_liste_mc}"> 7 7 8 8 [<h3>(#TITRE)</h3>] 9 <BOUCLE_listes2(POUR){tableau #ENV**{champs}|table_valeur{spip}}> 10 <b>[(#VALEUR)] (<:scl:champ_spip:>)</b>#SET{name,#VALEUR} 11 <B_champs_mc> 12 <select name="mapping[#ID_LISTE][#VALEUR]"> 13 <option value=""><:scl:pas_accorder:></option> 14 <BOUCLE_champs_mc(POUR){tableau #GET{champs_mailchimp}|table_valeur{#ENV{id_liste_mc}}}> 15 <option value="[(#VALEUR|table_valeur{tag})]"[(#ENV{mapping}|table_valeur{#ID_LISTE}|table_valeur{#GET{name}}|=={[(#VALEUR|table_valeur{tag})]}|oui) selected="selected"]>[(#VALEUR|table_valeur{name})]</option> 16 </BOUCLE_champs_mc> 17 </select> 18 </B_champs_mc> 19 20 </BOUCLE_champs> 21 22 </BOUCLE_listes2> 23 </div> 9 <BOUCLE_tables(POUR){tableau #GET{tables}}>#SET{table,#VALEUR} 10 <BOUCLE_listes2(POUR){tableau #ENV{champs}|table_valeur{spip}|table_valeur{#GET{table}}}> 11 <b>[(#VALEUR)] (<:scl:champ_spip:>)</b>#SET{name,#VALEUR} 12 <B_champs_mc> 13 <select name="mapping[#ID_LISTE][#VALEUR]"> 14 <option value=""><:scl:pas_accorder:></option> 15 <BOUCLE_champs_mc(POUR){tableau #GET{champs_mailchimp}}> 16 <option value="[(#VALEUR|table_valeur{tag})]"[(#ENV{mapping}|table_valeur{#ID_LISTE}|table_valeur{#GET{name}}|=={[(#VALEUR|table_valeur{tag})]}|oui) selected="selected"]>[(#VALEUR|table_valeur{name})]</option> 17 </BOUCLE_champs_mc> 18 </select> 19 </B_champs_mc> 20 21 </BOUCLE_champs> 22 23 </BOUCLE_listes2> 24 </BOUCLE_tables> 25 </div> 24 26 </BOUCLE_test> -
_plugins_/squirrels_love_chimps_lists_plus/trunk/inc/syncroniser_listes.php
r59252 r59820 28 28 $since=sql_getfetsel('date_syncro','spip_listes_syncro','objet="listes" AND type_syncro="liste" AND id_objet='.$id_liste_spip,'','date_syncro DESC'); 29 29 30 30 31 31 // les données spip 32 $champs=champs_spip(); 33 $champs_spip_auteurs=array(); 34 foreach($champs AS $champ){ 35 $champs_spip_auteurs[]='spip_auteurs.'.$champ; 36 } 37 38 $c=implode(',',$champs_spip_auteurs).',spip_auteurs_listes.maj,spip_auteurs_listes.date_syncro,spip_auteurs_listes.statut,spip_auteurs.email,spip_auteurs.id_auteur,spip_auteurs.id_mailchimp'; 32 33 $tables=tables_dispos(); 34 $champs_extras=lire_config('squirrel_chimp/champs'); 35 36 37 //Préparation de la requette 38 $identifiant_defaut='id_auteur'; 39 40 $from=implode(',',$tables); 41 42 $where_principal=$identifiant_principal.'='.$identifiant; 43 $where_secondaire=array(); 44 $champs=array(); 45 $i=0; 46 foreach($tables AS $table){ 47 $i++; 48 if($i==1)$table_principale=$table; 49 else $where_secondaire[$i]=$table_principale.'.'.$identifiant_defaut.'='.$table.'.'.$identifiant_defaut; 50 if($champs_extras[$table]){ 51 foreach($champs_extras[$table] as $champ){ 52 $champs[$champ]=$table.'.'.$champ; 53 } 54 } 55 } 56 57 if(!$champs)$champs='*'; 58 else $champs['email']='spip_auteurs.email'; 59 60 $identifiant_joints=implode(' AND ',$where_secondaire); 61 if($identifiant_joints)$where=' AND '.$identifiant_joints; 62 63 64 $champs=implode(',',$champs).',spip_auteurs_listes.maj,spip_auteurs_listes.date_syncro,spip_auteurs_listes.statut,spip_auteurs.id_auteur,spip_auteurs.id_mailchimp'; 39 65 40 66 // syncroniser tout, n'importe la date de la dernière mise à jour … … 42 68 43 69 44 $liste_spip=sql_select($c ,'spip_auteurs_listes,spip_auteurs','spip_auteurs_listes.id_liste='.$id_liste_spip.' AND spip_auteurs_listes.id_auteur=spip_auteurs.id_auteur AND spip_auteurs_listes.date_syncro >'.sql_quote($since));70 $liste_spip=sql_select($champs,'spip_auteurs_listes,'.$from,'spip_auteurs_listes.id_liste='.$id_liste_spip.' AND spip_auteurs_listes.id_auteur=spip_auteurs.id_auteur AND spip_auteurs_listes.date_syncro >'.sql_quote($since).$where); 45 71 46 72 // Composer le tableau distinguant entre abonnées et désabonnées … … 55 81 $listes_mc=array(); 56 82 foreach($statuts AS $status){ 57 $listes_mc[$status]=membres_liste_mc($api,$id_liste_mailchimp,$status, $since,$limit);83 $listes_mc[$status]=membres_liste_mc($api,$id_liste_mailchimp,$status,'',$limit); 58 84 } 59 85 } … … 61 87 $liste_mc=membres_liste_mc($api,$id_liste_mailchimp,$status,$since,$limit); 62 88 } 63 89 spip_log($listes_mc, 'sclp'); 90 spip_log($listes_spip, 'sclp'); 64 91 //Etablir les candiats à la syncro. 65 92 -
_plugins_/squirrels_love_chimps_lists_plus/trunk/lang/sclp_fr.php
r59341 r59820 10 10 'abonnement_inscrit' => 'Inscrits aux listes d\'envois', 11 11 'activer_liste' => 'Activer cette liste', 12 'actualisation_spip_ok_probleme_actualisation_mailchimp' => 'Actualisation spip ok, mais il y a un problème avec l\'actualisation vers Mailchimp. si vous utilisez plusieurs tables pour la syncro, cet auteur ne figure probablement pas dans toutes les tables', 12 13 'aucun_abonnement' => 'Pas d\'abonnments', 13 14 -
_plugins_/squirrels_love_chimps_lists_plus/trunk/plugin.xml
r59329 r59820 4 4 <licence>GNU/GLP</licence> 5 5 <version>0.2.1</version> 6 <version_base>0. 1.13</version_base>6 <version_base>0.2.0</version_base> 7 7 <licence>MIT</licence> 8 8 <etat>test</etat> -
_plugins_/squirrels_love_chimps_lists_plus/trunk/sclp_fonctions.php
r59313 r59820 56 56 } 57 57 } 58 58 59 59 return $batch; 60 60 } … … 177 177 $retval = $api->listMembers($id_liste_mailchimp,$status,$since,$start,$limit); 178 178 179 179 spip_log($retval, 'sclp'); 180 180 return $retval; 181 181 … … 290 290 $id_auteur = $flux['data']['id_auteur']; 291 291 $email = $flux['args']['args'][4]['email']; 292 $sql=sql_select('id_liste','spip_auteurs_listes','id_auteur='.$id_auteur. 'AND statut="valide"'); 292 293 $sql=sql_select('id_liste','spip_auteurs_listes','id_auteur='.$id_auteur.' AND statut="valide"'); 293 294 294 295 $lists_sync=array(); … … 319 320 spip_log('actualiser','sclp'); 320 321 321 // By default this sends a confirmation email - you will not see new members 322 // until the link contained in it is clicked! 323 // listSubscribe(string apikey, string id, string email_address, array merge_vars, string email_type, bool double_optin, bool update_existing, bool replace_interests, bool send_welcome) 322 324 323 325 324 // Inscription pour chaque liste 326 325 foreach($lists_sync AS $listId=>$id_liste_spip){ 327 326 // compilation des informations à envoyer à MailChimp 328 $donnees_auteur=donnees_sync($id_liste_spip,' spip_auteurs','id_auteur='.$id_auteur);327 $donnees_auteur=donnees_sync($id_liste_spip,'',$id_auteur); 329 328 $retour=inscription_liste_mc($flux,$api,$listId,$email,$donnees_auteur[1],$email_type,$optin,true); 330 329 }
Note: See TracChangeset
for help on using the changeset viewer.