Refactor Mailchimp import to API v3
[MAILPOET-3404]
This commit is contained in:
61
lib/Subscribers/ImportExport/Import/MailChimpDataMapper.php
Normal file
61
lib/Subscribers/ImportExport/Import/MailChimpDataMapper.php
Normal file
@ -0,0 +1,61 @@
|
||||
<?php
|
||||
|
||||
namespace MailPoet\Subscribers\ImportExport\Import;
|
||||
|
||||
class MailChimpDataMapper {
|
||||
public function getMembersHeader(): array {
|
||||
return [
|
||||
'email_address',
|
||||
'status',
|
||||
'first_name',
|
||||
'last_name',
|
||||
'address',
|
||||
'phone',
|
||||
'birthday',
|
||||
'ip_signup',
|
||||
'timestamp_signup',
|
||||
'ip_opt',
|
||||
'timestamp_opt',
|
||||
'member_rating',
|
||||
'last_changed',
|
||||
'language',
|
||||
'vip',
|
||||
'email_client',
|
||||
'latitude',
|
||||
'longitude',
|
||||
'gmtoff',
|
||||
'dstoff',
|
||||
'country_code',
|
||||
'timezone',
|
||||
'source',
|
||||
];
|
||||
}
|
||||
|
||||
public function mapMember(array $member): array {
|
||||
return [
|
||||
$member['email_address'],
|
||||
$member['status'],
|
||||
$member['merge_fields']['FNAME'] ?? '',
|
||||
$member['merge_fields']['LNAME'] ?? '',
|
||||
is_array($member['merge_fields']['ADDRESS']) ? implode(' ', $member['merge_fields']['ADDRESS'] ?? []) : $member['merge_fields']['ADDRESS'],
|
||||
$member['merge_fields']['PHONE'] ?? '',
|
||||
$member['merge_fields']['BIRTHDAY'] ?? '',
|
||||
$member['ip_signup'],
|
||||
$member['timestamp_signup'],
|
||||
$member['ip_opt'],
|
||||
$member['timestamp_opt'],
|
||||
$member['member_rating'],
|
||||
$member['last_changed'],
|
||||
$member['language'],
|
||||
$member['vip'],
|
||||
$member['email_client'],
|
||||
$member['location']['latitude'] ?? '',
|
||||
$member['location']['longitude'] ?? '',
|
||||
$member['location']['gmtoff'] ?? '',
|
||||
$member['location']['dstoff'] ?? '',
|
||||
$member['location']['country_code'] ?? '',
|
||||
$member['location']['timezone'] ?? '',
|
||||
$member['source'],
|
||||
];
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user