83 lines
1.7 KiB
PHP
83 lines
1.7 KiB
PHP
<?php
|
||
|
||
class MC4WP_MailChimp_Subscriber
|
||
{
|
||
/**
|
||
* @var string Email address for this subscriber.
|
||
*/
|
||
public $email_address = '';
|
||
|
||
/**
|
||
* @var array The key of this object’s properties is the ID of the interest in question.
|
||
*/
|
||
public $interests = array();
|
||
|
||
/**
|
||
* @var array An individual merge var and value for a member.
|
||
*/
|
||
public $merge_fields = array();
|
||
|
||
/**
|
||
* @var string Subscriber’s status.
|
||
*/
|
||
public $status = 'pending';
|
||
|
||
/**
|
||
* @var string Type of email this member asked to get (‘html’ or ‘text’).
|
||
*/
|
||
public $email_type = 'html';
|
||
|
||
/**
|
||
* @var string IP address the subscriber signed up from.
|
||
*/
|
||
public $ip_signup;
|
||
|
||
/**
|
||
* @var string The subscriber's language
|
||
*/
|
||
public $language;
|
||
|
||
/**
|
||
* @var boolean VIP status for subscriber.
|
||
*/
|
||
public $vip;
|
||
|
||
/**
|
||
* @var array The tags applied to this member.
|
||
*/
|
||
public $tags = array();
|
||
|
||
/**
|
||
* @var array The marketing permissions for the subscriber.
|
||
*/
|
||
public $marketing_permissions = array();
|
||
|
||
/**
|
||
* Retrieves member data as an array, without null values.
|
||
*
|
||
* @return array
|
||
*/
|
||
public function to_array()
|
||
{
|
||
$all = get_object_vars($this);
|
||
$array = array();
|
||
|
||
foreach ($all as $key => $value) {
|
||
// skip null values
|
||
if ($value === null) {
|
||
continue;
|
||
}
|
||
|
||
// skip empty marketing_permissions property
|
||
if ($key === 'marketing_permissions' && empty($value)) {
|
||
continue;
|
||
}
|
||
|
||
// otherwise, add to final array
|
||
$array[ $key ] = $value;
|
||
}
|
||
|
||
return $array;
|
||
}
|
||
}
|