TimeTrex API Manual

ClientContactFactory extends Factory
in package

Table of Contents

$cache  : Cache_Lite_Function|Cache_Lite_Output
$data  : mixed
$db  : mixed
$is_new  : mixed
$old_data  : mixed
$rs  : mixed
$tmp_data  : mixed
$username_validator_regex  : mixed
$validate_only  : mixed
$Validator  : mixed
$address_validator_regex  : mixed
$api_message_id  : mixed
$city_validator_regex  : mixed
$client_obj  : mixed
$enable_system_log_detail  : mixed
$name_validator_regex  : mixed
$pk_sequence_name  : mixed
$pobox_validator_regex  : mixed
$progress_bar_obj  : mixed
$table  : mixed
$ignore_column_list  : bool
$is_valid  : mixed
$minimum_data_validation  : mixed
__construct()  : mixed
Factory constructor.
__toString()  : bool|string
Print primary columns from object.
_getFactoryOptions()  : array<string|int, mixed>|null
_getVariableToFunctionMap()  : array<string|int, mixed>
AddCompany()  : array<string|int, mixed>|bool
Create a new company/user based on this client contact.
addLog()  : bool
bulkDelete()  : bool
castGenericDataValue()  : mixed
Generic casting function that all set/get*() functions should pass through.
checkPassword()  : bool
checkPasswordResetKey()  : bool
clearCacheSavedInTransaction()  : bool
clearData()  : bool
clearGeoCode()  : bool
clearNonMappedData()  : array<string|int, mixed>|null
Removes array elements from $data that are not in the function map.
clearOldData()  : bool
CommitSavePoint()  : bool
CommitTransaction()  : mixed
convertFlexArray()  : array<string|int, mixed>
decodeCustomFields()  : bool
decodeGenericJSONData()  : bool
Decode generic 'other_json' column data.
decodeJSONColumn()  : bool
Decodes JSON columns that are not the 'other_json' column.
Delete()  : bool
Deletes the record directly from the database.
encodeCustomFields()  : bool
encodeGenericJSONData()  : bool
Encode generic 'other_json' column data. This should only be done in Save() after all validation has occurred already and we are just about to commit it to the DB.
encodeJSONColumns()  : bool
Encode any JSON columns that are not 'other_json' column. This should only be done in Save() after all validation has occurred already and we are just about to commit it to the DB.
encryptPasswordResetKey()  : string
ExecuteSQL()  : bool
Execute SQL queries and handle paging properly for select statements.
FailTransaction()  : mixed
fromBool()  : bool
fromJSONBool()  : bool
getAddress1()  : bool|mixed
getAddress2()  : bool|mixed
getAddress3()  : bool|mixed
getAffectedRows()  : int|bool
getAPIMessageID()  : bool|null
Used for updating progress bar for API calls.
getCache()  : bool|mixed
getCity()  : bool|mixed
getClient()  : bool|mixed
getClientObject()  : bool|null
getColumn()  : bool|mixed
Generic function get any data from the data array.
getColumnList()  : array<string|int, mixed>|bool
getCompanyGenericMapData()  : mixed
Generic function to return and cache CompanyGenericMap data, this greatly improves performance of CalculatePolicy when many policies exist.
getCountry()  : bool|mixed
getCreatedAndUpdatedColumns()  : bool
getCreatedBy()  : bool|mixed
getCreatedDate()  : int
getCurrency()  : bool|mixed
getCurrent()  : mixed
Grabs the current object
getCurrentRow()  : int|bool
getCustomField()  : void
Get a single custom field by ID.
getCustomFields()  : mixed
getCustomFieldsColumns()  : array<string|int, mixed>
getCustomFieldsDataForObject()  : array<string|int, mixed>
Get custom field data for this specific object, so it can be easily cached in memory without having to go to the database or unserialize it from cache for every row.
getCustomFieldsDefaultData()  : mixed
getCustomFieldsParseHints()  : array<string|int, mixed>
getCustomFieldTableName()  : string
getDataDifferences()  : array<string|int, mixed>
Returns the differences in data from the DB vs the in-memory object, so the data will be the OLD data. Used in Validation/postSave() functions to determine if a field has changed or not.
getDateRangeSQL()  : bool|string
This function takes plain input from the user and creates a SQL statement for filtering based on a date range.
getDefault()  : bool
getDeleted()  : bool
getDeletedBy()  : bool|mixed
getDeletedDate()  : bool|mixed
getEmail()  : bool|mixed
getEmptyRecordSet()  : mixed
getEnableClearPasswordResetData()  : bool
getEnableMinimumDataValidation()  : bool
getEnableSystemLogDetail()  : bool
getExcludeTaxPolicy()  : array<string|int, mixed>|bool
getFaxPhone()  : bool|mixed
getFirstName()  : bool|mixed
getFirstNameMetaphone()  : bool|mixed
getFullName()  : bool|string
getGenericDataValue()  : bool|mixed
Generic getter/setter functions that should be used when Validation code is moved from get/set functions to Validate() function.
getGenericJSONDataValue()  : bool|mixed
Generic getter/setter functions for handling generic JSON data in 'other_json' SQL column.
getGenericObject()  : object|bool
Generic function to return and cache class objects ListFactory, ListFactoryMethod, Variable, ID, IDMethod
getGenericOldDataValue()  : bool|mixed
getGenericTempDataValue()  : bool
Generic getter/setter functions that should be used when Validation code is moved from get/set functions to Validate() function.
getId()  : bool|mixed
getIDSByListFactory()  : array<string|int, mixed>|bool
getIncludeTaxPolicy()  : array<string|int, mixed>|bool
getInvoiceDistrict()  : bool|mixed
getIterator()  : FactoryListIterator
getLabelId()  : bool|mixed|string
getLastName()  : bool|mixed
getLastNameMetaphone()  : bool|mixed
getLatitude()  : bool|float
getLongitude()  : bool|float
getMapURL()  : bool|string
getMobilePhone()  : bool|mixed
getNextInsertId()  : bool|string
getNote()  : bool|mixed
getObjectAsArray()  : mixed
getOptions()  : array<string|int, mixed>|bool
getPassword()  : bool|mixed
getPasswordResetDate()  : bool|mixed
getPasswordResetKey()  : bool|mixed
getPermissionColumns()  : bool
getPostalCode()  : bool|mixed
getProgressBarObject()  : null|ProgressBar
getProvince()  : bool|mixed
getRecordCount()  : int|bool
getSequenceName()  : bool
getStatus()  : int
getTable()  : bool|string
getTag()  : bool|string
getTransactionMode()  : string
getType()  : int
getUpdatedBy()  : bool|mixed
getUpdatedDate()  : int
getUserName()  : bool|mixed
getValidSQLColumns()  : array<string|int, mixed>
getVariableToFunctionMap()  : array<string|int, mixed>|bool
getWorkPhone()  : bool|mixed
getWorkPhoneExt()  : bool|mixed
handleSaveSQLReturning()  : bool
Used to handle any "RETURNING ..." clause on a SQL INSERT/UPDATE query.
hasDataChanged()  : bool
Determine if the record data has changed at all.
isClientFriendly()  : bool
Check if the remote client is our main UI app controlled by us, vs. a user utilizing the API for example.
isDataDifferent()  : bool
Used to check the differences between a single key in the $old_data vs. $data arrays.
isNew()  : bool
Determines if the data is new data, or updated data. Basically determines if a database INSERT or UPDATE SQL statement is generated.
isSQLExceptionRetryable()  : bool
Determines if a SQL exception is one that can be retried or not.
isUniqueTypeDefault()  : bool
isUniqueUserName()  : bool
isValid()  : bool
Call class specific validation function just before saving.
isWarning()  : bool
Call class specific validation function just before saving.
modifyInsertQuery()  : mixed
Modifies the automatically generated SQL INSERT query for adding things like " ON CONFLICT ..."
parseCustomFieldsFromArray()  : mixed
postSave()  : bool
preSave()  : bool
removeCache()  : bool
RetryTransaction()  : mixed
Accepts a Closure and is retried at set intervals which should be in a transaction.
rewind()  : bool
Rewinds record set iterator to begining. The same as ADODB's MoveFirst() function.
RollbackSavePoint()  : bool
Save()  : bool|int|string
Determines to insert or update, and does it.
saveCache()  : bool
sendPasswordResetEmail()  : bool
serializeRS()  : string
Serialize ADODB recordset.
setAddress1()  : bool
setAddress2()  : bool
setAddress3()  : bool
setAPIMessageID()  : bool
setCacheLifeTime()  : bool
setCity()  : bool
setClient()  : bool
setCountry()  : bool
setCreatedAndUpdatedColumns()  : bool
setCreatedBy()  : bool
setCreatedDate()  : bool
setCurrency()  : bool
setCustomField()  : void
Set a single custom field by ID.
setCustomFields()  : bool
setDefault()  : bool
setDeleted()  : bool
setDeletedBy()  : bool|null
setDeletedDate()  : bool
setEmail()  : bool
setEnableClearPasswordResetData()  : bool
setEnableMinimumDataValidation()  : bool
setEnableSystemLogDetail()  : bool
setExcludeTaxPolicy()  : bool
setFaxPhone()  : bool
setFirstName()  : bool
setFirstNameMetaphone()  : bool
setGenericDataValue()  : bool
setGenericJSONDataValue()  : bool
Generic getter/setter functions for handling generic JSON data in 'other_json' SQL column.
setGenericObject()  : bool
Allow method to pre-populate/overwrite the cache if needed.
setGenericTempDataValue()  : bool
setId()  : bool
setIncludeTaxPolicy()  : bool
setInvoiceDistrict()  : bool
setIsValid()  : bool
Sets the is_valid flag, mostly used to set it to FALSE to force a full re-validation.
setLastName()  : bool
setLastNameMetaphone()  : bool
setLatitude()  : bool
setLongitude()  : bool
setMobilePhone()  : bool
setNote()  : bool
setObjectFromArray()  : bool
setPassword()  : bool
setPasswordResetDate()  : bool
setPasswordResetKey()  : bool
setPostalCode()  : bool
setProgressBarObject()  : bool
setProvince()  : bool
setQueryStatementTimeout()  : bool
setStatus()  : bool
setTag()  : bool
setTransactionMode()  : mixed
setType()  : bool
setUpdatedBy()  : bool|null
setUpdatedDate()  : bool|int|null|string
setUserName()  : bool
setWorkPhone()  : bool
setWorkPhoneExt()  : bool
StartSavePoint()  : bool
StartTransaction()  : mixed
toBool()  : int
toJSONBool()  : string
Validate()  : bool
validateCustomFields()  : mixed
castInteger()  : bool|int|string
getColumnsFromAliases()  : array<string|int, mixed>
getCustomFieldWhereSQL()  : string
getDatabaseType()  : string
getListSQL()  : bool|int|string|array<string|int, mixed>
getSortSQL()  : bool|string
getSQLStringAggregate()  : string
getSQLToEpochFunction()  : string
getSQLToTimeFunction()  : string
getSQLToTimeStampFunction()  : string
getWhereClauseSQL()  : null|string
getWhereSQL()  : bool|string
handleSQLSyntax()  : string
SQL where clause Syntax: or % as wildcard.
stripSQLSyntax()  : mixed
getInsertQuery()  : mixed
getRecordSetColumnList()  : array<string|int, mixed>|bool
getUpdateQuery()  : bool
parseColumnName()  : bool|string
Parses out the exact column name, without any aliases, or = signs in it.

Properties

$cache

public Cache_Lite_Function|Cache_Lite_Output $cache = \null

$address_validator_regex

protected mixed $address_validator_regex = '/^[a-zA-Z0-9-,_\\/\\.\'#\\ |\\x{0080}-\\x{FFFF}]{1,250}$/iu'

$city_validator_regex

protected mixed $city_validator_regex = '/^[a-zA-Z0-9-,_\\.\'#\\ |\\x{0080}-\\x{FFFF}]{1,250}$/iu'

$enable_system_log_detail

protected mixed $enable_system_log_detail = \true

$name_validator_regex

protected mixed $name_validator_regex = '/^[a-zA-Z- ,\\.\'()\\[\\]|\\x{0080}-\\x{FFFF}]{1,250}$/iu'

$pobox_validator_regex

protected mixed $pobox_validator_regex = '/^[P|p]*(OST|ost)*\\.*\\s*[O|o|0]*(ffice|FFICE)*\\.*\\s*[B|b][O|o|0][X|x]\\s*(\\d.)*/i'

Methods

__construct()

Factory constructor.

public __construct() : mixed
Return values
mixed

__toString()

Print primary columns from object.

public __toString() : bool|string
Return values
bool|string

_getFactoryOptions()

public _getFactoryOptions(string $name[, null $parent = null ]) : array<string|int, mixed>|null
Parameters
$name : string
$parent : null = null
Return values
array<string|int, mixed>|null

_getVariableToFunctionMap()

public _getVariableToFunctionMap(array<string|int, mixed> $data) : array<string|int, mixed>
Parameters
$data : array<string|int, mixed>
Return values
array<string|int, mixed>

AddCompany()

Create a new company/user based on this client contact.

public AddCompany([int $product_edition_id = 15 ]) : array<string|int, mixed>|bool
Parameters
$product_edition_id : int = 15
Return values
array<string|int, mixed>|bool

bulkDelete()

public bulkDelete(string|array<string|int, mixed> $ids) : bool
Parameters
$ids : string|array<string|int, mixed>

UUID

Tags
throws
DBError
Return values
bool

castGenericDataValue()

Generic casting function that all set/get*() functions should pass through.

public castGenericDataValue( &$value,  $cast) : mixed

However for now lets wait until we have meta data from SQL schema so we can pass those datatypes directly into this.

Parameters
$value :

mixed

$cast :

string

Return values
mixed

clearCacheSavedInTransaction()

public clearCacheSavedInTransaction() : bool
Return values
bool

clearData()

public clearData() : bool
Return values
bool

clearGeoCode()

public clearGeoCode([array<string|int, mixed> $data_diff = null ]) : bool
Parameters
$data_diff : array<string|int, mixed> = null
Return values
bool

clearNonMappedData()

Removes array elements from $data that are not in the function map.

public clearNonMappedData([array<string|int, mixed>|null $data = null ]) : array<string|int, mixed>|null
Parameters
$data : array<string|int, mixed>|null = null
Return values
array<string|int, mixed>|null

clearOldData()

public clearOldData() : bool
Return values
bool

CommitSavePoint()

public CommitSavePoint( $name) : bool
Parameters
$name :
Return values
bool

CommitTransaction()

public CommitTransaction([bool $unnest_transactions = false ]) : mixed
Parameters
$unnest_transactions : bool = false
Tags
throws
DBError
Return values
mixed

convertFlexArray()

public convertFlexArray(array<string|int, mixed> $array) : array<string|int, mixed>
Parameters
$array : array<string|int, mixed>
Return values
array<string|int, mixed>

decodeCustomFields()

public decodeCustomFields() : bool
Return values
bool

decodeGenericJSONData()

Decode generic 'other_json' column data.

public decodeGenericJSONData() : bool
Return values
bool

decodeJSONColumn()

Decodes JSON columns that are not the 'other_json' column.

public decodeJSONColumn( $column) : bool
Parameters
$column :
Return values
bool

Delete()

Deletes the record directly from the database.

public Delete([bool $disable_audit_log = false ]) : bool
Parameters
$disable_audit_log : bool = false
Tags
throws
DBError
Return values
bool

encodeCustomFields()

public encodeCustomFields() : bool
Return values
bool

encodeGenericJSONData()

Encode generic 'other_json' column data. This should only be done in Save() after all validation has occurred already and we are just about to commit it to the DB.

public encodeGenericJSONData() : bool
Return values
bool

encodeJSONColumns()

Encode any JSON columns that are not 'other_json' column. This should only be done in Save() after all validation has occurred already and we are just about to commit it to the DB.

public encodeJSONColumns() : bool
Return values
bool

encryptPasswordResetKey()

public encryptPasswordResetKey( $key) : string
Parameters
$key :
Return values
string

ExecuteSQL()

Execute SQL queries and handle paging properly for select statements.

public ExecuteSQL(string $query[, array<string|int, mixed> $ph = null ][, int $limit = null ][, int $page = null ]) : bool
Parameters
$query : string
$ph : array<string|int, mixed> = null
$limit : int = null

Limit the number of records returned

$page : int = null

Page number of records to return for pagination

Tags
throws
DBError
throws
Exception
Return values
bool

FailTransaction()

public FailTransaction() : mixed
Return values
mixed

fromBool()

public fromBool(string|int|bool $value) : bool
Parameters
$value : string|int|bool
Return values
bool

fromJSONBool()

public fromJSONBool(string|int|bool $value) : bool
Parameters
$value : string|int|bool
Return values
bool

getAffectedRows()

public getAffectedRows() : int|bool
Return values
int|bool

getAPIMessageID()

Used for updating progress bar for API calls.

public getAPIMessageID() : bool|null
Return values
bool|null

getCache()

public getCache(string $cache_id[, string $group_id = null ]) : bool|mixed
Parameters
$cache_id : string
$group_id : string = null
Return values
bool|mixed

getColumn()

Generic function get any data from the data array.

public getColumn(string $column) : bool|mixed

Used mainly for the reports that return grouped queries and such.

Parameters
$column : string
Return values
bool|mixed

getColumnList()

public getColumnList() : array<string|int, mixed>|bool
Return values
array<string|int, mixed>|bool

getCompanyGenericMapData()

Generic function to return and cache CompanyGenericMap data, this greatly improves performance of CalculatePolicy when many policies exist.

public getCompanyGenericMapData(string $company_id, int $object_type_id, string $id, string $variable) : mixed
Parameters
$company_id : string

UUID

$object_type_id : int
$id : string

UUID

$variable : string
Return values
mixed

getCreatedAndUpdatedColumns()

public getCreatedAndUpdatedColumns(array<string|int, mixed> &$data[, null $include_columns = null ]) : bool
Parameters
$data : array<string|int, mixed>
$include_columns : null = null
Return values
bool

getCreatedBy()

public getCreatedBy() : bool|mixed
Return values
bool|mixed

getCreatedDate()

public getCreatedDate() : int
Return values
int

getCurrent()

Grabs the current object

public final getCurrent() : mixed
Return values
mixed

getCurrentRow()

public getCurrentRow([int $offset = 1 ]) : int|bool
Parameters
$offset : int = 1
Return values
int|bool

getCustomField()

Get a single custom field by ID.

public getCustomField(string $id) : void
Parameters
$id : string

UUID

Return values
void

getCustomFields()

public getCustomFields( $company_id,  $data[,  $include_columns = null ]) : mixed
Parameters
$company_id :
$data :
$include_columns : = null
Return values
mixed

getCustomFieldsColumns()

public getCustomFieldsColumns(array<string|int, mixed> $columns, string $company_id[, bool $use_sort_prefix = true ][, string|null $table_name = null ]) : array<string|int, mixed>
Parameters
$columns : array<string|int, mixed>
$company_id : string
$use_sort_prefix : bool = true
$table_name : string|null = null
Return values
array<string|int, mixed>

getCustomFieldsDataForObject()

Get custom field data for this specific object, so it can be easily cached in memory without having to go to the database or unserialize it from cache for every row.

public getCustomFieldsDataForObject( $company_id[, mixed $table_name = null ]) : array<string|int, mixed>
Parameters
$company_id :
$table_name : mixed = null
Tags
throws
ReflectionException
Return values
array<string|int, mixed>

getCustomFieldsDefaultData()

public getCustomFieldsDefaultData( $company_id,  $data[, bool $get_all_fields = false ]) : mixed
Parameters
$company_id :
$data :
$get_all_fields : bool = false
Return values
mixed

getCustomFieldsParseHints()

public getCustomFieldsParseHints(array<string|int, mixed> $columns, string $company_id, string|null $table_name) : array<string|int, mixed>
Parameters
$columns : array<string|int, mixed>
$company_id : string
$table_name : string|null
Return values
array<string|int, mixed>

getCustomFieldTableName()

public getCustomFieldTableName() : string
Return values
string

getDataDifferences()

Returns the differences in data from the DB vs the in-memory object, so the data will be the OLD data. Used in Validation/postSave() functions to determine if a field has changed or not.

public getDataDifferences() : array<string|int, mixed>
Return values
array<string|int, mixed>

getDateRangeSQL()

This function takes plain input from the user and creates a SQL statement for filtering based on a date range.

public getDateRangeSQL(string $str, string $column[, string $format = 'epoch' ][, bool $include_blank_dates = false ]) : bool|string

Supported Syntax:

=01-Jan-09 <=01-Jan-09 <01-Jan-09 01-Jan-09 01-Jan-09 & <10-Jan-09

Parameters
$str : string
$column : string
$format : string = 'epoch'
$include_blank_dates : bool = false
Return values
bool|string

getDeleted()

public getDeleted() : bool
Return values
bool

getDeletedBy()

public getDeletedBy() : bool|mixed
Return values
bool|mixed

getDeletedDate()

public getDeletedDate() : bool|mixed
Return values
bool|mixed

getEmptyRecordSet()

public getEmptyRecordSet([string $id = null ]) : mixed
Parameters
$id : string = null

UUID

Tags
throws
DBError
Return values
mixed

getEnableSystemLogDetail()

public getEnableSystemLogDetail() : bool
Return values
bool

getExcludeTaxPolicy()

public getExcludeTaxPolicy() : array<string|int, mixed>|bool
Return values
array<string|int, mixed>|bool

getFullName()

public getFullName([bool $reverse = false ]) : bool|string
Parameters
$reverse : bool = false
Return values
bool|string

getGenericDataValue()

Generic getter/setter functions that should be used when Validation code is moved from get/set functions to Validate() function.

public getGenericDataValue(string $name[, null $cast = null ]) : bool|mixed
Parameters
$name : string
$cast : null = null
Return values
bool|mixed

getGenericJSONDataValue()

Generic getter/setter functions for handling generic JSON data in 'other_json' SQL column.

public getGenericJSONDataValue(string $name[, null $cast = null ]) : bool|mixed
Parameters
$name : string
$cast : null = null
Return values
bool|mixed

getGenericObject()

Generic function to return and cache class objects ListFactory, ListFactoryMethod, Variable, ID, IDMethod

public getGenericObject(string $list_factory, string|int $id, string $variable[, string $list_factory_method = 'getById' ][, string $id_method = 'getID' ]) : object|bool
Parameters
$list_factory : string
$id : string|int

UUID

$variable : string
$list_factory_method : string = 'getById'
$id_method : string = 'getID'
Return values
object|bool

getGenericOldDataValue()

public getGenericOldDataValue(string $name) : bool|mixed
Parameters
$name : string

Gets data value from old_data array, or the original value in the database, prior to any changes currently in memory.

Return values
bool|mixed

getGenericTempDataValue()

Generic getter/setter functions that should be used when Validation code is moved from get/set functions to Validate() function.

public getGenericTempDataValue(string $name) : bool
Parameters
$name : string
Return values
bool

getId()

public getId() : bool|mixed
Return values
bool|mixed

getIDSByListFactory()

public getIDSByListFactory(object $lf) : array<string|int, mixed>|bool
Parameters
$lf : object
Return values
array<string|int, mixed>|bool

getIncludeTaxPolicy()

public getIncludeTaxPolicy() : array<string|int, mixed>|bool
Return values
array<string|int, mixed>|bool

getLabelId()

public getLabelId() : bool|mixed|string
Return values
bool|mixed|string

getNextInsertId()

public getNextInsertId() : bool|string
Return values
bool|string

getObjectAsArray()

public getObjectAsArray([null $include_columns = null ]) : mixed
Parameters
$include_columns : null = null
Return values
mixed

getOptions()

public getOptions(string $name[, string|int $parent = null ]) : array<string|int, mixed>|bool
Parameters
$name : string
$parent : string|int = null
Return values
array<string|int, mixed>|bool

getPermissionColumns()

public getPermissionColumns(array<string|int, mixed> &$data, string $object_user_id, string $created_by_id[, string $permission_children_ids = null ][, array<string|int, mixed> $include_columns = null ]) : bool
Parameters
$data : array<string|int, mixed>
$object_user_id : string

UUID

$created_by_id : string

UUID

$permission_children_ids : string = null

UUID

$include_columns : array<string|int, mixed> = null
Return values
bool

getRecordCount()

public getRecordCount() : int|bool
Return values
int|bool

getSequenceName()

public getSequenceName() : bool
Return values
bool

getTable()

public getTable([bool $strip_quotes = false ]) : bool|string
Parameters
$strip_quotes : bool = false
Return values
bool|string

getTransactionMode()

public getTransactionMode([bool $force = false ]) : string
Parameters
$force : bool = false
Return values
string

getUpdatedBy()

public getUpdatedBy() : bool|mixed
Return values
bool|mixed

getUpdatedDate()

public getUpdatedDate() : int
Return values
int

getValidSQLColumns()

public getValidSQLColumns(array<string|int, mixed> $array[, bool $strict = true ][, array<string|int, mixed> $additional_fields = null ]) : array<string|int, mixed>
Parameters
$array : array<string|int, mixed>
$strict : bool = true
$additional_fields : array<string|int, mixed> = null
Tags
throws
Exception
Return values
array<string|int, mixed>

getVariableToFunctionMap()

public getVariableToFunctionMap([array<string|int, mixed> $data = null ]) : array<string|int, mixed>|bool
Parameters
$data : array<string|int, mixed> = null
Return values
array<string|int, mixed>|bool

handleSaveSQLReturning()

Used to handle any "RETURNING ..." clause on a SQL INSERT/UPDATE query.

public handleSaveSQLReturning( $rs) : bool
Parameters
$rs :
Return values
bool

hasDataChanged()

Determine if the record data has changed at all.

public hasDataChanged() : bool
Return values
bool

isClientFriendly()

Check if the remote client is our main UI app controlled by us, vs. a user utilizing the API for example.

public isClientFriendly() : bool

This is mostly used to determine if we can return columns that are resource intensive to compute when obtaining a list. (ie: Users, Jobs)

Return values
bool

isDataDifferent()

Used to check the differences between a single key in the $old_data vs. $data arrays.

public isDataDifferent( $key,  $data_diff[, null $type_id = null ][, null $new_data = null ]) : bool

This is especially important to use when trying to see if a date or timestamp field in the DB has changed, as they need to be handled in special ways.

Parameters
$key :

string

$data_diff :

array

$type_id : null = null

string

$new_data : null = null

mixed

Return values
bool

isNew()

Determines if the data is new data, or updated data. Basically determines if a database INSERT or UPDATE SQL statement is generated.

public isNew([bool $force_lookup = false ][, string $id = null ]) : bool
Parameters
$force_lookup : bool = false
$id : string = null

UUID

Return values
bool

isSQLExceptionRetryable()

Determines if a SQL exception is one that can be retried or not.

public isSQLExceptionRetryable( $e) : bool
Parameters
$e :

Exception

Return values
bool

isUniqueTypeDefault()

public isUniqueTypeDefault(string $client_id, int $type_id) : bool
Parameters
$client_id : string

UUID

$type_id : int
Return values
bool

isValid()

Call class specific validation function just before saving.

public isValid([bool $ignore_warning = true ]) : bool
Parameters
$ignore_warning : bool = true
Return values
bool

isWarning()

Call class specific validation function just before saving.

public isWarning() : bool
Return values
bool

modifyInsertQuery()

Modifies the automatically generated SQL INSERT query for adding things like " ON CONFLICT ..."

public modifyInsertQuery( $query) : mixed
Parameters
$query :
Return values
mixed

parseCustomFieldsFromArray()

public parseCustomFieldsFromArray( $data) : mixed
Parameters
$data :
Return values
mixed

removeCache()

public removeCache([string $cache_id = null ][, string $group_id = null ]) : bool
Parameters
$cache_id : string = null
$group_id : string = null
Return values
bool

RetryTransaction()

Accepts a Closure and is retried at set intervals which should be in a transaction.

public RetryTransaction( $transaction_function[, int $retry_max_attempts = 4 ][, int $retry_sleep = 1 ]) : mixed
Parameters
$transaction_function :

Closure

$retry_max_attempts : int = 4
$retry_sleep : int = 1

in seconds

Tags
throws
DBError
Return values
mixed

rewind()

Rewinds record set iterator to begining. The same as ADODB's MoveFirst() function.

public final rewind() : bool
Return values
bool

RollbackSavePoint()

public RollbackSavePoint( $name) : bool
Parameters
$name :
Return values
bool

Save()

Determines to insert or update, and does it.

public Save([bool $reset_data = true ][, bool $force_lookup = false ]) : bool|int|string

Have this handle created, createdby, updated, updatedby.

Parameters
$reset_data : bool = true
$force_lookup : bool = false
Tags
throws
DBError
throws
GeneralError
Return values
bool|int|string

saveCache()

public saveCache(mixed $data, string $cache_id[, string $group_id = null ]) : bool
Parameters
$data : mixed
$cache_id : string
$group_id : string = null
Return values
bool

serializeRS()

Serialize ADODB recordset.

public serializeRS(object $rs) : string
Parameters
$rs : object
Tags
noinspection

PhpUndefinedConstantInspection

Return values
string

setAPIMessageID()

public setAPIMessageID(string $id) : bool
Parameters
$id : string

UUID

Return values
bool

setCacheLifeTime()

public setCacheLifeTime(int $secs) : bool
Parameters
$secs : int
Return values
bool

setCreatedAndUpdatedColumns()

public setCreatedAndUpdatedColumns(array<string|int, mixed> $data[, array<string|int, mixed> $variable_to_function_map = [] ]) : bool
Parameters
$data : array<string|int, mixed>
$variable_to_function_map : array<string|int, mixed> = []
Return values
bool

setCreatedBy()

public setCreatedBy([string $id = null ]) : bool
Parameters
$id : string = null

UUID

Return values
bool

setCreatedDate()

public setCreatedDate([int $epoch = null ]) : bool
Parameters
$epoch : int = null

EPOCH

Return values
bool

setCustomField()

Set a single custom field by ID.

public setCustomField(mixed $value, string $id) : void
Parameters
$value : mixed
$id : string

UUID

Return values
void

setCustomFields()

public setCustomFields( $data) : bool
Parameters
$data :
Return values
bool

setDeleted()

public setDeleted(bool $bool) : bool
Parameters
$bool : bool
Return values
bool

setDeletedBy()

public setDeletedBy([string $id = null ]) : bool|null
Parameters
$id : string = null

UUID

Return values
bool|null

setDeletedDate()

public setDeletedDate([int $epoch = null ]) : bool
Parameters
$epoch : int = null

EPOCH

Return values
bool

setEnableClearPasswordResetData()

public setEnableClearPasswordResetData([bool $value = true ]) : bool
Parameters
$value : bool = true
Return values
bool

setEnableMinimumDataValidation()

public setEnableMinimumDataValidation( $bool) : bool
Parameters
$bool :
Return values
bool

setEnableSystemLogDetail()

public setEnableSystemLogDetail( $bool) : bool
Parameters
$bool :
Return values
bool

setExcludeTaxPolicy()

public setExcludeTaxPolicy(string $ids) : bool
Parameters
$ids : string

UUID

Return values
bool

setFirstNameMetaphone()

public setFirstNameMetaphone( $value) : bool
Parameters
$value :
Return values
bool

setGenericDataValue()

public setGenericDataValue(string $name, mixed $data[, null $cast = null ]) : bool
Parameters
$name : string
$data : mixed
$cast : null = null
Return values
bool

setGenericJSONDataValue()

Generic getter/setter functions for handling generic JSON data in 'other_json' SQL column.

public setGenericJSONDataValue(string $name, mixed $data[, null $cast = null ]) : bool
Parameters
$name : string
$data : mixed
$cast : null = null
Return values
bool

setGenericObject()

Allow method to pre-populate/overwrite the cache if needed.

public setGenericObject(object $obj, string $variable) : bool
Parameters
$obj : object
$variable : string
Return values
bool

setGenericTempDataValue()

public setGenericTempDataValue(string $name, mixed $data) : bool
Parameters
$name : string
$data : mixed
Return values
bool

setId()

public setId(string $id) : bool
Parameters
$id : string

UUID

Return values
bool

setIncludeTaxPolicy()

public setIncludeTaxPolicy(string $ids) : bool
Parameters
$ids : string

UUID

Return values
bool

setIsValid()

Sets the is_valid flag, mostly used to set it to FALSE to force a full re-validation.

public setIsValid([bool $is_valid = false ]) : bool

Required because $this->is_valid is a private variable and should stay that way.

Parameters
$is_valid : bool = false
Return values
bool

setPassword()

public setPassword( $password[, null $password_confirm = null ]) : bool
Parameters
$password :
$password_confirm : null = null
Return values
bool

setProgressBarObject()

public setProgressBarObject(object $obj) : bool
Parameters
$obj : object
Return values
bool

setQueryStatementTimeout()

public setQueryStatementTimeout([null $milliseconds = null ]) : bool
Parameters
$milliseconds : null = null
Return values
bool

setTransactionMode()

public setTransactionMode([string $mode = '' ]) : mixed
Parameters
$mode : string = ''
Return values
mixed

setUpdatedBy()

public setUpdatedBy([string $id = null ]) : bool|null
Parameters
$id : string = null

UUID

Return values
bool|null

setUpdatedDate()

public setUpdatedDate([int $epoch = null ]) : bool|int|null|string
Parameters
$epoch : int = null

EPOCH

Return values
bool|int|null|string

StartSavePoint()

public StartSavePoint( $name) : bool
Parameters
$name :
Return values
bool

StartTransaction()

public StartTransaction() : mixed
Return values
mixed

toBool()

public toBool(string|int|bool $value) : int
Parameters
$value : string|int|bool
Return values
int

toJSONBool()

public toJSONBool(string|int|bool $value) : string
Parameters
$value : string|int|bool
Return values
string

Validate()

public Validate([bool $ignore_warning = true ]) : bool
Parameters
$ignore_warning : bool = true
Return values
bool

validateCustomFields()

public validateCustomFields(mixed $company_id[, mixed $enable_required_field_check = true ]) : mixed
Parameters
$company_id : mixed
$enable_required_field_check : mixed = true
Return values
mixed

castInteger()

protected castInteger(int|string $int[, string $type = 'int' ]) : bool|int|string
Parameters
$int : int|string
$type : string = 'int'
Return values
bool|int|string

getColumnsFromAliases()

protected getColumnsFromAliases(array<string|int, mixed> $columns, array<string|int, mixed> $aliases) : array<string|int, mixed>
Parameters
$columns : array<string|int, mixed>
$aliases : array<string|int, mixed>
Return values
array<string|int, mixed>

getCustomFieldWhereSQL()

protected getCustomFieldWhereSQL(mixed $company_id, mixed $column, array<string|int, mixed> $filter_data, array<string|int, mixed> &$ph) : string
Parameters
$company_id : mixed
$column : mixed
$filter_data : array<string|int, mixed>
$ph : array<string|int, mixed>
Return values
string

getDatabaseType()

protected getDatabaseType() : string
Return values
string

getListSQL()

protected getListSQL(array<string|int, mixed>|string|int $array[, array<string|int, mixed> &$ph = null ][, string|bool $cast = false ]) : bool|int|string|array<string|int, mixed>
Parameters
$array : array<string|int, mixed>|string|int
$ph : array<string|int, mixed> = null
$cast : string|bool = false
Return values
bool|int|string|array<string|int, mixed>

getSortSQL()

protected getSortSQL(array<string|int, mixed> $array[, bool $strict = true ][, array<string|int, mixed> $additional_fields = null ]) : bool|string
Parameters
$array : array<string|int, mixed>
$strict : bool = true
$additional_fields : array<string|int, mixed> = null
Return values
bool|string

getSQLStringAggregate()

protected getSQLStringAggregate(string $sql, string $glue) : string
Parameters
$sql : string
$glue : string
Return values
string

getSQLToEpochFunction()

protected getSQLToEpochFunction(string $sql) : string
Parameters
$sql : string
Return values
string

getSQLToTimeFunction()

protected getSQLToTimeFunction(string $sql) : string
Parameters
$sql : string
Return values
string

getSQLToTimeStampFunction()

protected getSQLToTimeStampFunction() : string
Return values
string

getWhereClauseSQL()

protected getWhereClauseSQL(array<string|int, mixed>|string $columns, array<string|int, mixed>|string $args, string $type, array<string|int, mixed> &$ph[, string $query_stub = null ][, bool $and = true ]) : null|string
Parameters
$columns : array<string|int, mixed>|string
$args : array<string|int, mixed>|string
$type : string
$ph : array<string|int, mixed>
$query_stub : string = null
$and : bool = true
Tags
noinspection

PhpParamsInspection

Return values
null|string

getWhereSQL()

protected getWhereSQL(array<string|int, mixed> $array[, bool $append_where = false ]) : bool|string
Parameters
$array : array<string|int, mixed>
$append_where : bool = false
Return values
bool|string

handleSQLSyntax()

SQL where clause Syntax: or % as wildcard.

protected handleSQLSyntax(string $arg) : string

"" as exact match, no default wildcard and no metaphone

Handles '*' and '%' as wildcards, defaults to wildcard on the end always. If no wildcard is to be added, the last character should be |

Parameters
$arg : string
Return values
string

stripSQLSyntax()

protected stripSQLSyntax(string $arg) : mixed
Parameters
$arg : string
Return values
mixed

getInsertQuery()

private getInsertQuery() : mixed
Return values
mixed

getRecordSetColumnList()

private getRecordSetColumnList(object $rs) : array<string|int, mixed>|bool
Parameters
$rs : object
Return values
array<string|int, mixed>|bool

parseColumnName()

Parses out the exact column name, without any aliases, or = signs in it.

private parseColumnName(string $column) : bool|string
Parameters
$column : string
Return values
bool|string

Search results