public static function getAllValuesFor($field_name) { $field_name = trim($field_name, '_'); $fields = Infusionsoft_ObjectTools::findObjectsInList(Infusionsoft_CustomFieldService::getCachedCustomFields(new Infusionsoft_Contact()), array('Name' => $field_name)); $field = array_shift($fields); $values = array(); if (is_object($field)) { $values = $field->getValues(); } $keyed_array = array(); foreach ($values as $value) { $keyed_array[$value] = $value; } return $keyed_array; }
<?php include '../infusionsoft.php'; include 'testUtils.php'; Infusionsoft_CacheTools::clearObjectCaches(new Infusionsoft_DataFormField()); $timestart = microtime(true); $out = Infusionsoft_CustomFieldService::getCachedCustomFields(new Infusionsoft_Contact()); $elapsed_time_first = microtime(true) - $timestart; $timestart = microtime(true); $out = Infusionsoft_CustomFieldService::getCachedCustomFields(new Infusionsoft_Contact()); $elapsed_time_second = microtime(true) - $timestart; if ($elapsed_time_second < $elapsed_time_first) { echo 'Success, caching saved: ' . ($elapsed_time_first - $elapsed_time_second) . ' seconds'; } else { echo 'Failed, caching made it: ' . ($elapsed_time_second - $elapsed_time_first) . 'seconds longer'; }
<?php include '../infusionsoft.php'; include 'object_editor_all_tables.php'; include '../tests/testUtils.php'; $customFields = Infusionsoft_CustomFieldService::getCustomFields(new Infusionsoft_Contact(), Infusionsoft_CustomFieldService::$DataType_Dropdown); var_dump($customFields); foreach ($customFields as $customField) { if ($customField->Name == 'Test') { $customFieldValues = $customField->getCustomFieldValues(); $customFieldValues[] = rand(1, 100) . ' Value'; $customField->setCustomFieldValues($customFieldValues); //$customField->save(); } } $customField = Infusionsoft_CustomFieldService::getCustomField(new Infusionsoft_Contact(), 'Test'); var_dump($customField);
<?php include '../infusionsoft.php'; $contact = new Infusionsoft_Contact(); $customFields = Infusionsoft_CustomFieldService::getCustomFields(new Infusionsoft_Contact()); /** @var Infusionsoft_DataFormField $customField */ $customFieldsAsArray = array(); foreach ($customFields as $customField) { $customFieldsAsArray[] = '_' . $customField->Name; } $contact->addCustomFields($customFieldsAsArray); $contacts = Infusionsoft_DataService::queryWithOrderBy(new Infusionsoft_Contact(), array('Id' => '%'), 'LastUpdated', 1, 1, array('Id')); var_dump($contacts);