public function add_custom_field($field, $value = false) { if (!$field instanceof HighriseCustomField) { throw new \Exception('$field must be an instant of HighriseCustomField'); } if (!isset($this->custom_fields[$field->get_subject_field_id()])) { $this->custom_fields[$field->get_subject_field_id()] = $field; $this->original_custom_fields[$field->get_subject_field_id()] = 1; if ($value) { $this->custom_fields[$field->get_subject_field_id()]->set_value($value); } } else { $custom_field = new HighriseCustomField($this->highrise); $custom_field->set_value($field); $this->custom_fields[$field->get_subject_field_id()] = $custom_field; } }