Class for file custom field.
All objects interacting with Kayako REST API should extend this class and
define:
* Kayako controller
* XML element name holding object's data in REST response
Methods
Default constructor.
__construct(\kyCustomFieldGroupBase $custom_field_group, array $data)
Inherited
inherited_from |
\kyCustomField::__construct() |
Parameters
$data
array
Object data from XML response converted into array.
Returns API field value.
__get(string $api_field_name) : mixed
Inherited
Returns API field value based on API field name used by Kayako.
Parameters
$api_field_name
string
API field name.
Returns
mixed
Sets API field value.
__set(string $api_field_name, mixed $value) : mixed
Inherited
Sets API field value based on API field name used by Kayako.
Parameters
$api_field_name
string
API field name.
$value
mixed
API field value.
Returns
mixed
Returns object description with it's type and identifier.
__toString() : string
Inherited
Calls toString() method to get the object description.
inherited_from |
\kyCustomField::__toString() |
Returns
string
Should build the array of object data for creating or updating the object.
buildData(bool $create) : array
Values must be set in format accepted by REST API.
Parameters
$create
bool
Indicates if the result will be used to create (true) or update (false) an object.
Returns
array
Checks wheter this object has all required fields set.
checkRequiredAPIFields(bool $create, bool $throw_exception) : string[] | bool
Inherited
inherited_from |
\kyObjectBase::checkRequiredAPIFields() |
inherited_from |
\kyCustomField::checkRequiredAPIFields() |
Parameters
$create
bool
True when object will be created. False when object will be updated.
$throw_exception
bool
True to throw an exception on missing fields. False to return list of missing fields or true when there are none.
Exceptions
\kyException |
When there are missing field values and $throw_exception is true. |
Returns
string[]
bool
List of missing API fields or true when there are none.
Creates an object on the server and refreshes its local data.
create() : \kyObjectBase
Inherited
inherited_from |
\kyCustomField::create() |
Exceptions
Returns
Creates proper class based on type of custom field.
createByType(\kyCustomFieldGroupBase $custom_field_group, array $data) : \kyCustomField
Inherited
inherited_from |
\kyCustomField::createByType() |
Parameters
$data
array
Object data from XML response.
Exceptions
Returns
Creates new object.
createNew()
Inherited
Compatible with method chaining.
inherited_from |
\kyObjectBase::createNew() |
inherited_from |
\kyCustomField::createNew() |
Deletes the object on the server.
delete()
Inherited
inherited_from |
\kyCustomField::delete() |
Fetches the object from server.
get(int | array $id) : \kyObjectBase
Inherited
inherited_from |
\kyCustomField::get() |
Parameters
$id
int
array
Object identifier or list of identifiers (ex. ticket identifier and ticket post identifier when fetching TicketPost).
Returns
Returns array of API fields.
getAPIFields() : string[]
Inherited
Format of returned array:
array(
'' => Field description. (getter: , setter: ),
...repeat...
)
inherited_from |
\kyObjectBase::getAPIFields() |
inherited_from |
\kyCustomField::getAPIFields() |
Returns
string[]
Fetches objects from server.
getAll(array $search_parameters) : \kyResultSet
Inherited
inherited_from |
\kyCustomField::getAll() |
Parameters
$search_parameters
array
Optional. Additional search parameters.
Returns
Returns list of available filter methods for use in result sets with objects of this type.
getAvailableFilterMethods(bool $filter_names_only) : array
Inherited
Optionaly you can return get method names used to filter objects.
inherited_from |
\kyObjectBase::getAvailableFilterMethods() |
inherited_from |
\kyCustomField::getAvailableFilterMethods() |
Parameters
$filter_names_only
bool
True (default) to return array('filterByXXX', 'filterByYYY', ...). False to return array('filterByXXX' => 'getXXX', 'filterByYYY' => 'YYY', ...).
Returns
array
Returns list of available order methods for use in result sets with objects of this type.
getAvailableOrderMethods(bool $order_names_only) : array
Inherited
Optionaly you can return get method names used to order objects.
inherited_from |
\kyObjectBase::getAvailableOrderMethods() |
inherited_from |
\kyCustomField::getAvailableOrderMethods() |
Parameters
$order_names_only
bool
True (default) to return array('orderByXXX', 'orderByYYY', ...). False to return array('orderByXXX' => 'getXXX', 'orderByYYY' => 'YYY', ...).
Returns
array
Returns raw contents of the file (NOT base64 encoded).
getContents() : string
Returns object controller.
getController() : string
Inherited
inherited_from |
\kyObjectBase::getController() |
inherited_from |
\kyCustomField::getController() |
Returns
string
Returns field definition.
getDefinition(bool $reload) : \kyCustomFieldDefinition
Inherited
inherited_from |
\kyCustomField::getDefinition() |
Parameters
$reload
bool
True to reload data from server. False to use the cached value (if present).
Returns
Returns name of the file.
getFileName() : string
Should return object identifier or complete list of identifiers as needed by API to identify the object (ex.
getId(bool $complete) : int | array
Inherited
ticket identifier and ticket post identifier in case of TicketPost).
inherited_from |
\kyCustomField::getId() |
Parameters
$complete
bool
True to return complete list of identifiers as needed by API to identify the object.
Returns
int
array
Returns name of this custom field.
getName() : string
Inherited
filterBy |
|
orderBy |
|
inherited_from |
\kyCustomField::getName() |
Returns
string
Returns field option with provided identifier or value.
getOption(mixed $value) : \kyCustomFieldOption
Inherited
Returns null if option was not found.
inherited_from |
\kyCustomField::getOption() |
Parameters
$value
mixed
Identifier of option OR value of option OR option.
Returns
Returns raw text value of this custom field.
getRawValue() : string
Inherited
filterBy |
|
orderBy |
|
inherited_from |
\kyCustomField::getRawValue() |
Returns
string
Returns list of required API fields for objects of this class.
getRequiredAPIFields(bool $create) : string[]
Inherited
inherited_from |
\kyObjectBase::getRequiredAPIFields() |
inherited_from |
\kyCustomField::getRequiredAPIFields() |
Parameters
$create
bool
True when object will be created. False when object will be updated.
Returns
string[]
Returns title of this custom field.
getTitle() : string
Inherited
filterBy |
|
orderBy |
|
inherited_from |
\kyCustomField::getTitle() |
Returns
string
Returns type of this custom field - one of kyCustomFieldBase::TYPE_ constants.
getType() : int
Inherited
filterBy |
|
orderBy |
|
inherited_from |
\kyCustomField::getType() |
Returns
int
Returns file name and contents as
array(
'<file name>',
'<file contents>'
)
getValue() : array
Method is overloaded in descendant classes and return value interpretation depends on field type.
see |
\global\kyCustomField::getValue() |
Returns
array
Returns whether the object is new and not yet saved on the server.
isNew() : bool
Inherited
inherited_from |
\kyObjectBase::isNew() |
inherited_from |
\kyCustomField::isNew() |
Returns
bool
Returns whether this object is read only.
isReadOnly() : bool
Inherited
inherited_from |
\kyObjectBase::isReadOnly() |
inherited_from |
\kyCustomField::isReadOnly() |
Returns
bool
Refreshes the object data from server.
refresh() : \kyObjectBase
Inherited
inherited_from |
\kyCustomField::refresh() |
Exceptions
Returns
Saves (creates or updates) the object to the server.
save() : \kyObjectBase
Inherited
inherited_from |
\kyObjectBase::save() |
inherited_from |
\kyCustomField::save() |
Returns
Sets raw contents of the attachment (NOT base64 encoded).
setContents(string $contents) : \kyCustomFieldFile
Parameters
$contents
string
Raw contents of the attachment (NOT base64 encoded).
Returns
Sets contents of the attachment and file name by reading it from a physical file.
setContentsFromFile(string $file_path, string $file_name) : \kyCustomFieldFile
Parameters
$file_path
string
Path to file.
$file_name
string
Optional. Use to set file name other than physical file.
Exceptions
Returns
Sets name of the file.
setFileName(string $file_name) : \kyCustomFieldFile
Parameters
$file_name
string
File name.
Returns
Sets whether this object is read only.
setReadOnly(bool $read_only) : bool
Inherited
inherited_from |
\kyObjectBase::setReadOnly() |
inherited_from |
\kyCustomField::setReadOnly() |
Parameters
$read_only
bool
Read only flag.
Returns
bool
Sets contents of the attachment and file name by reading it from a physical file.
setValue(string $value) : \kyCustomFieldFile
Method is overloaded in descendant classes and value interpretation depends on field type.
see |
\global\kyCustomField::setValue() |
see |
\global\kyCustomFieldFile::setContentsFromFile() |
Parameters
$value
string
Path to file.
Returns
Should return short (one line) description of the object (it's title, name, etc.).
toString() : string
Updates the object on the server and refreshes its local data.
update() : \kyObjectBase
Inherited
inherited_from |
\kyCustomField::update() |
Exceptions
Returns
Returns REST client.
getRESTClient() : \kyRESTClientInterface
Inherited
inherited_from |
\kyObjectBase::getRESTClient() |
inherited_from |
\kyCustomField::getRESTClient() |
Returns
Should use passed data to fill object properties.
parseData(array $data)
Parameters
$data
array
Object data from XML response.
Builds API fields list.
initAPIFieldsAccessors()
Inherited
Scans protected and private properties of called class, searches for
apiField |
[name=field name] [accessor=setter/getter name] [getter=getter name] [setter=setter name] [required_create=true if field if required when creating object] [required_update=true if field if required when udpating object] [required=true if field if required when creating or updating object]
and builds API field list with property name, description, setter and getter method names, and required flags. |
see |
\global\kyObjectBase::$_api_fields |
inherited_from |
\kyObjectBase::initAPIFieldsAccessors() |
inherited_from |
\kyCustomField::initAPIFieldsAccessors() |
Properties
Cache for available filter methods.
$_filter_methods : string[]
Inherited
Format:
array(
'' => array(
'' => '',
...repeat for every filtering enabled method...
),
...repeat for every object class...
)
inherited_from |
\kyObjectBase::$$_filter_methods |
inherited_from |
\kyCustomField::$$_filter_methods |
Cache for available order methods.
$_order_methods : string[]
Inherited
Format:
array(
'' => array(
'' => '',
...repeat for every ordering enabled method...
),
...repeat for every object class...
)
inherited_from |
\kyObjectBase::$$_order_methods |
inherited_from |
\kyCustomField::$$_order_methods |
File contents.
$contents : string
Default Kayako controller used to operate on this objects.
$controller : string
Inherited
Override in descending classes.
inherited_from |
\kyObjectBase::$$controller |
inherited_from |
\kyCustomField::$$controller |
Custom field group this field belongs to.
$custom_field_group : \kyCustomFieldGroupBase
Inherited
inherited_from |
\kyCustomField::$$custom_field_group |
Cache for field definition.
$definition : \kyCustomFieldDefinition
Inherited
inherited_from |
\kyCustomField::$$definition |
File name.
$file_name : string
Field identifier.
$id : int
Inherited
apiField |
|
inherited_from |
\kyCustomField::$$id |
Was the file changed after fetching or creating.
$is_changed : bool
Field name.
$name : string
Inherited
apiField |
|
inherited_from |
\kyCustomField::$$name |
Indicates the name of object element in XML response.
$object_xml_name : string
Inherited
Override in descending classes.
inherited_from |
\kyObjectBase::$$object_xml_name |
inherited_from |
\kyCustomField::$$object_xml_name |
Field value.
$raw_value : string
Inherited
apiField |
name=value getter=getRawValue setter=setValue |
inherited_from |
\kyCustomField::$$raw_value |
Controls if the object can be created/updated/deleted.
$read_only : bool
Inherited
Override in descending classes.
inherited_from |
\kyObjectBase::$$read_only |
inherited_from |
\kyCustomField::$$read_only |
Field title.
$title : string
Inherited
apiField |
|
inherited_from |
\kyCustomField::$$title |
Field type.
$type : int
Inherited
apiField |
|
inherited_from |
\kyCustomField::$$type |
Cache for API fields.
$_api_fields : array
Inherited
Format:
array(
'' => array(
'' => array(
'property' => '',
'description' => '',
'getter' => '',
'setter' => '',
'required_create' => ,
'required_update' =>
),
...repeat for every class api field...
),
...repeat for every object class...
)
inherited_from |
\kyObjectBase::$$_api_fields |
inherited_from |
\kyCustomField::$$_api_fields |
Constants
Data key for storing files to send as multipart/form-data.
FILES_DATA_NAME : string
Inherited
inherited_from |
\kyObjectBase::FILES_DATA_NAME |
inherited_from |
\kyCustomField::FILES_DATA_NAME |