Infusionsoft_CustomFieldService::getCustomField PHP Method

getCustomField() public static method

public static getCustomField ( Infusionsoft_Generated_Base $object, $name, Infusionsoft_App $app = null )
$object Infusionsoft_Generated_Base
$app Infusionsoft_App
    public static function getCustomField(Infusionsoft_Generated_Base $object, $name, Infusionsoft_App $app = null)
    {
        if (strpos($name, '_') === 0) {
            $name = substr($name, 1, strlen($name) - 1);
        }
        if (!property_exists($object, 'customFieldFormId')) {
            throw new Infusionsoft_Exception(get_class($object) . ' does not have Custom Fields.');
        }
        $dataFormField = new Infusionsoft_DataFormField();
        if ($object->getAppPoolAppKey() != null) {
            $dataFormField->setAppPoolAppKey($object->getAppPoolAppKey());
        }
        $conditions = array('FormId' => $object->customFieldFormId, 'Name' => $name);
        $out = parent::query(new Infusionsoft_DataFormField(), $conditions, 1000, 0, false, $app);
        return array_pop($out);
    }

Usage Example

<?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);