Пример #1
0
 $cc = new Ctct\ConstantContact($CC_API_KEY);
 try {
     try {
         $lists = $cc->getLists($CC_ACCESS_TOKEN);
         if (is_array($lists) && sizeof($lists) > 0) {
             foreach ($lists as $key => $value) {
                 if (isset($value->name) && $value->name == $list_name) {
                     $list_id = $value->id;
                 }
             }
         }
         if (isset($email) && strlen($email) > 1 && $list_id != null) {
             $action = "Getting Contact By Email Address";
             try {
                 // check to see if a contact with the email addess already exists in the account
                 $response = $cc->getContactByEmail($CC_ACCESS_TOKEN, $email);
                 // create a new contact if one does not exist
                 if (empty($response->results)) {
                     $action = "Creating Contact";
                     $contact = new Ctct\Components\Contacts\Contact();
                     $contact->addEmail($email);
                     $contact->addList($list_id);
                     $contact->first_name = $firstname;
                     $returnContact = $cc->addContact($CC_ACCESS_TOKEN, $contact, true);
                     # success!
                     echo json_encode(array("status" => "success"));
                 } else {
                     echo json_encode(array("status" => "error", "type" => "Email address already exists."));
                 }
             } catch (CtctException $ex) {
                 echo json_encode(array("status" => "error", "type" => "Looks like something went wrong. Please try again later."));
 $list_id = $list_v['list_id'];
 $merge_vars = array();
 $api_contact_email = '';
 $api_action = '';
 // EMAIL FIELD FOR getContactByEmail()
 if (!empty($list_v['fields'])) {
     foreach ($list_v['fields'] as $fields_v) {
         if ($fields_v['list_field_id'] == 'email') {
             $api_contact_email = $element_ids_values[$fields_v['element_id']]['element_value'][0];
             break;
         }
     }
 }
 if ($api_contact_email) {
     try {
         $response = $cc->getContactByEmail($cfg[$service_id]['accesstoken'], $api_contact_email);
         // ADD
         if (empty($response->results)) {
             $cc_contact = new Ctct\Components\Contacts\Contact();
             $cc_contact->addEmail($api_contact_email);
             /*
             if(!empty($list_v['addresses'])){
             
             	foreach($list_v['addresses'] as $address_field_k=>$address_field_v){
             		
             		$address = new Ctct\Components\Contacts\Address();
             		
             		foreach($address_field_v['data'] as $address_data_k=>$address_data_v){
             			$address->{$address_data_k} = $element_ids_values[$address_data_v['element_id']]['element_value'][0];
             		}