Extracts some logic into resuable methods

This commit is contained in:
Vlad
2017-05-14 12:07:07 -04:00
parent bd39c34f03
commit 3a1bf88c22
4 changed files with 62 additions and 20 deletions

View File

@ -491,27 +491,11 @@ class Subscriber extends Model {
unset($data['segments']);
}
if($subscriber === false) {
// fields that must exist
$not_null_fields = array(
'first_name' => '',
'last_name' => ''
);
foreach($not_null_fields as $field => $value) {
if(!isset($data[$field])) {
$data[$field] = $value;
}
}
}
// set required fields' default values
$data = self::setRequiredFieldsDefaultValues($data);
// custom fields
$custom_fields = array();
foreach($data as $key => $value) {
if(strpos($key, 'cf_') === 0) {
$custom_fields[(int)substr($key, 3)] = $value;
unset($data[$key]);
}
}
// get custom fields
list($data, $custom_fields) = CustomField::extractCustomFieldsFromFromObject($data);
// wipe any unconfirmed data at this point
$data['unconfirmed_data'] = null;
@ -884,4 +868,17 @@ class Subscriber extends Model {
}, $subscribers)
);
}
static function setRequiredFieldsDefaultValues($data) {
$required_field_default_values = array(
'first_name' => '',
'last_name' => ''
);
foreach($required_field_default_values as $field => $value) {
if(!isset($data[$field])) {
$data[$field] = $value;
}
}
return $data;
}
}