Changeset 95493 in spip-zone


Ignore:
Timestamp:
Feb 25, 2016, 5:15:31 PM (4 years ago)
Author:
cedric@…
Message:

on branche le sender_status et le add_sender sur l'API v3 (en conservant l'API v1 fonctionnelle)

Location:
_plugins_/mailshot/trunk
Files:
3 edited

Legend:

Unmodified
Added
Removed
  • _plugins_/mailshot/trunk/bulkmailer/mailjet.php

    r95492 r95493  
    4646                // on utilise l'API REST
    4747                $options['sender_class'] = "FacteurMailjetv3";
     48               
    4849        }
    4950        else {
     
    120121
    121122        $mj = mailjet_api();
    122         $res = (array)$mj->userSenderlist();
    123         if (!isset($res['status']) OR $res['status']!=='OK') return null;
    124 
    125         foreach($res['senders'] as $sender){
    126                 if ($sender->email == $sender_email){
    127                         if ($sender->enabled>0)
    128                                 return "active";
    129                         else
    130                                 return "pending";
    131                 }
    132         }
     123        // API v1
     124        if ($mj->version<3){
     125                $res = (array)$mj->userSenderlist();
     126                if (!isset($res['status']) OR $res['status']!=='OK') return null;
     127
     128                if (isset($res['senders'])){
     129                        foreach($res['senders'] as $sender){
     130                                if ($sender->email == $sender_email){
     131                                        if ($sender->enabled>0)
     132                                                return "active";
     133                                        else
     134                                                return "pending";
     135                                }
     136                        }
     137                }
     138        }
     139        // API v3
     140        if ($mj->version==3){
     141                $res = (array)$mj->sender();
     142                if (!isset($res['Count'])) return null;
     143                if (isset($res['Data'])){
     144                        foreach($res['Data'] as $sender){
     145                                if ($sender['Email'] == $sender_email){
     146                                        if (in_array($sender['Status'],array('Active','Pending'))){
     147                                                return strtolower($sender['Status']);
     148                                        }
     149                                }
     150                        }
     151                }
     152        }
     153
    133154
    134155        return false;
  • _plugins_/mailshot/trunk/lib/mailjet-api-php/mailjet-3.php

    r95492 r95493  
    3939        }
    4040
     41        /*
     42         * Legacy methods
     43         */
     44        public function userSenderadd($params){
     45                $data = array('email'=>$params['email']);
     46                include_spip('inc/json');
     47                return $this->sender(array('data'=>json_encode($data)));
     48        }
     49
    4150        public function __call($method, $args){
    4251                # params
     
    8291
    8392                include_spip('inc/distant');
     93                if ($method!=='send'){
     94                        $method = "REST/$method";
     95                }
    8496                $url = $this->apiUrl . $method;
    8597                $url_log = "api.mailjet.com/".$this->apiVersion.$method;
     
    94106                        }
    95107                        else {
    96                                 $res = recuperer_url($url,
    97                                         array(
    98                                                 'methode' => $this->_method,
    99                                                 'datas' => $this->_data,
    100                                         )
     108                                $options = array(
     109                                        'methode' => $this->_request,
    101110                                );
     111                                if ($this->_data) {
     112                                        $options['datas'] = $this->_data;
     113                                }
     114                                $res = recuperer_url($url,$options);
    102115                                $this->_response_code = $res['status'];
    103116                                $response = $res['page'];
  • _plugins_/mailshot/trunk/paquet.xml

    r95492 r95493  
    22        prefix="mailshot"
    33        categorie="communication"
    4         version="1.13.0"
     4        version="1.13.1"
    55        etat="stable"
    66        compatibilite="[3.0.5;3.1.*]"
Note: See TracChangeset for help on using the changeset viewer.