Changeset 59312 in spip-zone


Ignore:
Timestamp:
Mar 14, 2012, 9:51:01 AM (8 years ago)
Author:
abelass@…
Message:

permettre à sclp de surcharger le traitement d'édition d'auteur

Location:
_plugins_/squirrels_love_chimps_lists
Files:
4 added
6 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/squirrels_love_chimps_lists/branches/1/plugin.xml

    r59264 r59312  
    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.2.0</version>
     5        <version>1.3.0</version>
    66        <licence>MIT</licence>
    77        <etat>test</etat>
  • _plugins_/squirrels_love_chimps_lists/branches/1/squirrel_chimp_lists_fonctions.php

    r59264 r59312  
    147147        $retval = $api->listSubscribe($listId, $email,$donnees_auteur,$email_type,$optin,$update_existing,$replace_interests,$send_welcome);
    148148
    149         include_spip('inc/autoriser');
    150149       
    151150        if ($api->errorCode){
  • _plugins_/squirrels_love_chimps_lists/branches/1/squirrel_chimp_lists_pipelines.php

    r59308 r59312  
    3030        }
    3131
    32 // Actualisation des listes à partir du formulaire editer_auter
     32// Actualisation des listes à partir du formulaire editer_auteur
    3333function squirrel_chimp_lists_formulaire_traiter($flux)
    3434{
     
    3636        // on recupere d'abord le nom du formulaire .
    3737        $formulaire = $flux['args']['form'];
    38         spip_log(__LINE__,'squirrel_chimp');
     38
    3939
    4040        //dans notre cas c'est le formulaire editer_auteur qui nous interesse
    4141        if ($formulaire=="editer_auteur"){
    42                
    43                 // necessaire pour utiliser les autorisations
    44                 include_spip('inc/autoriser');
    45                 spip_log(__LINE__,'squirrel_chimp');
     42                spip_log('actualisation profil','squirrel_chimp');
     43                $traitement=charger_fonction('editer_auteur_traiter_listes','inc');
     44                $flux=$traitement($flux);
     45        }
    4646
    47                 // API mailchimp
    48                 include_spip('inc/1.3/MCAPI.class');
    49 
    50                 // necessaire pour utiliser lire_config
    51                 include_spip('inc/config');
    52                
    53                 //les fonctions
    54                
    55                 include_spip('squirrel_chimp_lists_fonctions');
    56 
    57                 //recuperation de la config
    58                 $apiKey = lire_config("squirrel_chimp/apiKey");
    59                 $lists_sync = lire_config("squirrel_chimp/mailinglists");
    60                 $ajouter = lire_config("squirrel_chimp/ml_act_ajout");
    61                 $enlever = lire_config("squirrel_chimp/ml_act_enleve");
    62                 $actualiser = lire_config("squirrel_chimp/ml_act_actualise");
    63                 $optin = lire_config('squirrel_chimp/ml_opt_in')?false:true; //yes, send optin emails
    64 
    65                 //on verifie que les parametres du plugin mailchimp sont initialisées
    66                 if ($apiKey){
    67                         spip_log(__LINE__,'squirrel_chimp');
    68                         spip_log($apiKey,'squirrel_chimp');
    69 
    70                         // initialisation d'un objet mailchimp
    71                         $api = new MCAPI($apiKey);
    72 
    73 
    74                         // les donnés de l'auteur
    75                         $id_auteur = $flux['data']['id_auteur'];
    76                         $statut=sql_getfetsel('statut','spip_auteurs','id_auteur='.$id_auteur);
    77                        
    78                         //déterminer s'ilm s'agir d'un nouveau auteur
    79                         if(_request('new')=='new')      $new=true;
    80                         $message_ok = $flux['data']['message_ok'];
    81 
    82                         // compilation des informations à envoyer à MailChimp
    83                         $donnees_auteur=donnees_sync('','spip_auteurs','id_auteur='.$id_auteur);
    84                         $donnees_auteur=$donnees_auteur[1];
    85                         $email=$donnees_auteur['EMAIL'];
    86                        
    87        
    88                         // Actualisation de la liste avec un nouvel auteur ou si activé actualisation des données si modification du profil
    89                         if (($new AND $ajouter) OR (!$new AND $actualiser AND $statut!='5poubelle')){
    90                                 spip_log(__LINE__,'squirrel_chimp');
    91                                
    92                                 // By default this sends a confirmation email - you will not see new members
    93                                 // until the link contained in it is clicked!
    94                                 // 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)
    95                                
    96                                 // Inscription pour chaque liste
    97                                 foreach($lists_sync AS $listId=>$value){
    98                                         inscription_liste_mc($flux,$api,$listId,$email,$donnees_auteur,$email_type,$optin,$new?false:true);
    99                                 }
    100 
    101                         }
    102                         // Se le statut est mis à "poubelle", on le désinscrit
    103                         if ($statut=='5poubelle' AND $enlever){
    104                                 foreach($lists_sync AS $listId=>$value){
    105                                         desinscription_liste_mc($flux,$api,$listId,$email);
    106                                 }
    107                         }
    108 
    109 
    110                 } //($apiKey and $listId)
    111                 else {
    112                         // n'effrayons pas l utilisateur classique
    113                         spip_log(__LINE__);
    114                         if (autoriser("configurer", "mailchimp")){
    115                                 spip_log(__LINE__);
    116                                 //erreur il faut configurer le plugin mailchimp
    117                                 $flux['data'] = array('message_erreur' => _T('squirrelchimp:config_erreur'));
    118                                 spip_log("Admin"._T('squirrelchimp:config_erreur'));
    119                                 return $flux;
    120                         }
    121                         else {
    122                                 spip_log(__LINE__);
    123                                 // que le spiplog si on est juste un user
    124                                 spip_log(_T('squirrelchimp:config_erreur'));
    125                                 return $flux;
    126                         } // autoriser
    127 
    128                         spip_log(__LINE__);
    129                 } // if ( $apiKey and $listId ) {
    130 
    131                 spip_log(__LINE__);
    132         }
    133         spip_log(__LINE__);
    13447        return $flux ;
    13548       
  • _plugins_/squirrels_love_chimps_lists/trunk/plugin.xml

    r59264 r59312  
    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.2.0</version>
     5        <version>1.3.0</version>
    66        <licence>MIT</licence>
    77        <etat>test</etat>
  • _plugins_/squirrels_love_chimps_lists/trunk/squirrel_chimp_lists_fonctions.php

    r59264 r59312  
    147147        $retval = $api->listSubscribe($listId, $email,$donnees_auteur,$email_type,$optin,$update_existing,$replace_interests,$send_welcome);
    148148
    149         include_spip('inc/autoriser');
    150149       
    151150        if ($api->errorCode){
  • _plugins_/squirrels_love_chimps_lists/trunk/squirrel_chimp_lists_pipelines.php

    r59308 r59312  
    3636        // on recupere d'abord le nom du formulaire .
    3737        $formulaire = $flux['args']['form'];
    38         spip_log(__LINE__,'squirrel_chimp');
     38
    3939
    4040        //dans notre cas c'est le formulaire editer_auteur qui nous interesse
    4141        if ($formulaire=="editer_auteur"){
    42                
    43                 // necessaire pour utiliser les autorisations
    44                 include_spip('inc/autoriser');
    45                 spip_log(__LINE__,'squirrel_chimp');
     42                spip_log('actualisation profil','squirrel_chimp');
     43                $traitement=charger_fonction('editer_auteur_traiter_listes','inc');
     44                $flux=$traitement($flux);
     45        }
    4646
    47                 // API mailchimp
    48                 include_spip('inc/1.3/MCAPI.class');
    49 
    50                 // necessaire pour utiliser lire_config
    51                 include_spip('inc/config');
    52                
    53                 //les fonctions
    54                
    55                 include_spip('squirrel_chimp_lists_fonctions');
    56 
    57                 //recuperation de la config
    58                 $apiKey = lire_config("squirrel_chimp/apiKey");
    59                 $lists_sync = lire_config("squirrel_chimp/mailinglists");
    60                 $ajouter = lire_config("squirrel_chimp/ml_act_ajout");
    61                 $enlever = lire_config("squirrel_chimp/ml_act_enleve");
    62                 $actualiser = lire_config("squirrel_chimp/ml_act_actualise");
    63                 $optin = lire_config('squirrel_chimp/ml_opt_in')?false:true; //yes, send optin emails
    64 
    65                 //on verifie que les parametres du plugin mailchimp sont initialisées
    66                 if ($apiKey){
    67                         spip_log(__LINE__,'squirrel_chimp');
    68                         spip_log($apiKey,'squirrel_chimp');
    69 
    70                         // initialisation d'un objet mailchimp
    71                         $api = new MCAPI($apiKey);
    72 
    73 
    74                         // les donnés de l'auteur
    75                         $id_auteur = $flux['data']['id_auteur'];
    76                         $statut=sql_getfetsel('statut','spip_auteurs','id_auteur='.$id_auteur);
    77                        
    78                         //déterminer s'ilm s'agir d'un nouveau auteur
    79                         if(_request('new')=='new')      $new=true;
    80                         $message_ok = $flux['data']['message_ok'];
    81 
    82                         // compilation des informations à envoyer à MailChimp
    83                         $donnees_auteur=donnees_sync('','spip_auteurs','id_auteur='.$id_auteur);
    84                         $donnees_auteur=$donnees_auteur[1];
    85                         $email=$donnees_auteur['EMAIL'];
    86                        
    87        
    88                         // Actualisation de la liste avec un nouvel auteur ou si activé actualisation des données si modification du profil
    89                         if (($new AND $ajouter) OR (!$new AND $actualiser AND $statut!='5poubelle')){
    90                                 spip_log(__LINE__,'squirrel_chimp');
    91                                
    92                                 // By default this sends a confirmation email - you will not see new members
    93                                 // until the link contained in it is clicked!
    94                                 // 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)
    95                                
    96                                 // Inscription pour chaque liste
    97                                 foreach($lists_sync AS $listId=>$value){
    98                                         inscription_liste_mc($flux,$api,$listId,$email,$donnees_auteur,$email_type,$optin,$new?false:true);
    99                                 }
    100 
    101                         }
    102                         // Se le statut est mis à "poubelle", on le désinscrit
    103                         if ($statut=='5poubelle' AND $enlever){
    104                                 foreach($lists_sync AS $listId=>$value){
    105                                         desinscription_liste_mc($flux,$api,$listId,$email);
    106                                 }
    107                         }
    108 
    109 
    110                 } //($apiKey and $listId)
    111                 else {
    112                         // n'effrayons pas l utilisateur classique
    113                         spip_log(__LINE__);
    114                         if (autoriser("configurer", "mailchimp")){
    115                                 spip_log(__LINE__);
    116                                 //erreur il faut configurer le plugin mailchimp
    117                                 $flux['data'] = array('message_erreur' => _T('squirrelchimp:config_erreur'));
    118                                 spip_log("Admin"._T('squirrelchimp:config_erreur'));
    119                                 return $flux;
    120                         }
    121                         else {
    122                                 spip_log(__LINE__);
    123                                 // que le spiplog si on est juste un user
    124                                 spip_log(_T('squirrelchimp:config_erreur'));
    125                                 return $flux;
    126                         } // autoriser
    127 
    128                         spip_log(__LINE__);
    129                 } // if ( $apiKey and $listId ) {
    130 
    131                 spip_log(__LINE__);
    132         }
    133         spip_log(__LINE__);
    13447        return $flux ;
    13548       
Note: See TracChangeset for help on using the changeset viewer.