APISchedule
extends APIFactory
in package
Table of Contents
- $data : mixed
- $api_message_id : mixed
- $current_company : mixed
- $current_user : mixed
- $current_user_prefs : mixed
- $main_class : mixed
- $main_class_obj : mixed
- $pager_obj : mixed
- $permission : mixed
- $progress_bar_obj : mixed
- __construct() : mixed
- APISchedule constructor.
- addPunchesFromScheduledShifts() : array<string|int, mixed>|bool
- Creates punches from an array of scheduled shift ids.
- convertAPIReturnHandlerToValidatorObject() : bool|Validator
- Take a API ReturnHandler array and pulls out the Validation errors/warnings to be merged back into another Validator This is useful for calling one API function from another one when their are sub-classes.
- convertToMultipleRecords() : array<string|int, mixed>
- convertToSingleRecord() : mixed
- deleteSchedule() : array<string|int, mixed>|bool
- Delete one or more schedules.
- exportRecords() : array<string|int, mixed>|bool
- Download a result_set as a csv.
- exportSchedule() : array<string|int, mixed>
- Export wage data to csv
- getAPIMessageID() : bool|null
- Returns the API messageID for each individual call.
- getCombinedSchedule() : array<string|int, mixed>|bool
- Get combined recurring schedule and committed schedule data for one or more schedulees.
- getCommonScheduleData() : array<string|int, mixed>
- Get only the fields that are common across all records in the search criteria. Used for Mass Editing of records.
- getCurrentCompanyObject() : bool|CompanyFactory
- getCurrentUserObject() : bool|UserFactory
- getCurrentUserPreferenceObject() : bool|UserPreferenceFactory
- getMainClassObject() : string
- getNextInsertID() : string
- getOptions() : array<string|int, mixed>|bool
- Bridge to main class getOptions factory.
- getOptionsBatch() : array<string|int, mixed>
- Bridge multiple batched requests to main class getOptions factory.
- getOverlappingShifts() : array<string|int, mixed>|bool
- Get overlapping schedule data for one or more schedulees.
- getPagerData() : array<string|int, mixed>|bool
- getPagerObject() : Pager
- getPermissionChildren() : array<string|int, mixed>
- getPermissionObject() : bool|null|Permission
- getProgressBarObject() : null|ProgressBar
- getProtocolVersion() : int
- getSchedule() : array<string|int, mixed>|bool
- Get schedule data for one or more schedulees.
- getScheduleDefaultData() : array<string|int, mixed>
- Get default schedule data for creating new schedulees.
- getScheduleTotalTime() : array<string|int, mixed>|bool
- Get schedule total time
- getVariableToFunctionMap() : array<string|int, mixed>
- Bridge to main class getVariableToFunctionMap factory.
- handlePermissionFilterColumns() : array<string|int, mixed>|null
- In cases where data can be displayed in just a list_view (dropdown boxes), ie: branch, department, job, task in In/Out punch view restrict the dropdown box to just a subset of columns, so not all data is shown.
- handleRecordValidationResults() : array<string|int, mixed>
- initializeFilterAndPager() : array<string|int, mixed>|bool
- isProgressBarStarted() : bool
- returnHandler() : array<string|int, mixed>|bool
- Controls returning information to client in a standard format.
- setAPIMessageID() : bool
- setMainClassObject() : bool
- Allow storing the main class object persistently in memory, so we can build up other variables to help out things like getOptions() Mainly used for the APIReport class.
- setPagerObject() : bool
- setProgressBarObject() : bool
- setSchedule() : array<string|int, mixed>|bool
- Set schedule data for one or more schedulees.
- setValidationArray() : array<string|int, mixed>|bool
- stripReturnHandler() : mixed
- swapSchedule() : array<string|int, mixed>
- Swap schedules with one another. This doesn't work with recurring schedules, and is not used by Flex currently.
- validateSchedule() : array<string|int, mixed>
- Validate schedule data for one or more schedulees.
Properties
$data
public
mixed
$data
= []
$api_message_id
protected
mixed
$api_message_id
= \null
$current_company
protected
mixed
$current_company
= \null
$current_user
protected
mixed
$current_user
= \null
$current_user_prefs
protected
mixed
$current_user_prefs
= \null
$main_class
protected
mixed
$main_class
= 'ScheduleFactory'
$main_class_obj
protected
mixed
$main_class_obj
= \null
$pager_obj
protected
mixed
$pager_obj
= \null
$permission
protected
mixed
$permission
= \null
$progress_bar_obj
protected
mixed
$progress_bar_obj
= \null
Methods
__construct()
APISchedule constructor.
public
__construct() : mixed
Return values
mixed —addPunchesFromScheduledShifts()
Creates punches from an array of scheduled shift ids.
public
addPunchesFromScheduledShifts(array<string|int, mixed> $schedule_arr) : array<string|int, mixed>|bool
Parameters
- $schedule_arr : array<string|int, mixed>
-
should have 2 sub arrays of ids, one labeled 'schedule', one labeled 'recurring'
Return values
array<string|int, mixed>|bool —convertAPIReturnHandlerToValidatorObject()
Take a API ReturnHandler array and pulls out the Validation errors/warnings to be merged back into another Validator This is useful for calling one API function from another one when their are sub-classes.
public
convertAPIReturnHandlerToValidatorObject( $api_retarr[, bool $validator_obj = false ]) : bool|Validator
Parameters
Return values
bool|Validator —convertToMultipleRecords()
public
convertToMultipleRecords(array<string|int, mixed> $data) : array<string|int, mixed>
Parameters
- $data : array<string|int, mixed>
Return values
array<string|int, mixed> —convertToSingleRecord()
public
convertToSingleRecord(array<string|int, mixed> $data) : mixed
Parameters
- $data : array<string|int, mixed>
Return values
mixed —deleteSchedule()
Delete one or more schedules.
public
deleteSchedule(array<string|int, mixed> $data) : array<string|int, mixed>|bool
Parameters
- $data : array<string|int, mixed>
-
schedule data
Return values
array<string|int, mixed>|bool —exportRecords()
Download a result_set as a csv.
public
exportRecords(string $format, string $file_name, array<string|int, mixed> $result, array<string|int, mixed> $filter_columns) : array<string|int, mixed>|bool
Parameters
- $format : string
- $file_name : string
- $result : array<string|int, mixed>
- $filter_columns : array<string|int, mixed>
Return values
array<string|int, mixed>|bool —exportSchedule()
Export wage data to csv
public
exportSchedule([string $format = 'csv' ][, array<string|int, mixed> $data = null ][, bool $disable_paging = true ]) : array<string|int, mixed>
Parameters
- $format : string = 'csv'
-
file format (csv)
- $data : array<string|int, mixed> = null
-
filter data
- $disable_paging : bool = true
Return values
array<string|int, mixed> —getAPIMessageID()
Returns the API messageID for each individual call.
public
getAPIMessageID() : bool|null
Return values
bool|null —getCombinedSchedule()
Get combined recurring schedule and committed schedule data for one or more schedulees.
public
getCombinedSchedule([array<string|int, mixed> $data = null ][, int $base_date = null ][, null $type = null ][, null $strict = null ]) : array<string|int, mixed>|bool
Parameters
- $data : array<string|int, mixed> = null
-
filter data
- $base_date : int = null
-
EPOCH
- $type : null = null
- $strict : null = null
Return values
array<string|int, mixed>|bool —getCommonScheduleData()
Get only the fields that are common across all records in the search criteria. Used for Mass Editing of records.
public
getCommonScheduleData(array<string|int, mixed> $data) : array<string|int, mixed>
Parameters
- $data : array<string|int, mixed>
-
filter data
Return values
array<string|int, mixed> —getCurrentCompanyObject()
public
getCurrentCompanyObject() : bool|CompanyFactory
Return values
bool|CompanyFactory —getCurrentUserObject()
public
getCurrentUserObject() : bool|UserFactory
Return values
bool|UserFactory —getCurrentUserPreferenceObject()
public
getCurrentUserPreferenceObject() : bool|UserPreferenceFactory
Return values
bool|UserPreferenceFactory —getMainClassObject()
public
getMainClassObject() : string
Return values
string —getNextInsertID()
public
getNextInsertID() : string
Return values
string —getOptions()
Bridge to main class getOptions factory.
public
getOptions([bool $name = false ][, string|int $parent = null ]) : array<string|int, mixed>|bool
Parameters
- $name : bool = false
- $parent : string|int = null
Return values
array<string|int, mixed>|bool —getOptionsBatch()
Bridge multiple batched requests to main class getOptions factory.
public
getOptionsBatch([array<string|int, mixed> $requested_options = [] ]) : array<string|int, mixed>
Parameters
- $requested_options : array<string|int, mixed> = []
Return values
array<string|int, mixed> —getOverlappingShifts()
Get overlapping schedule data for one or more schedulees.
public
getOverlappingShifts([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 —getPagerData()
public
getPagerData() : array<string|int, mixed>|bool
Return values
array<string|int, mixed>|bool —getPagerObject()
public
getPagerObject() : Pager
Return values
Pager —getPermissionChildren()
public
getPermissionChildren() : array<string|int, mixed>
Return values
array<string|int, mixed> —getPermissionObject()
public
getPermissionObject() : bool|null|Permission
Return values
bool|null|Permission —getProgressBarObject()
public
getProgressBarObject() : null|ProgressBar
Return values
null|ProgressBar —getProtocolVersion()
public
getProtocolVersion() : int
Return values
int —getSchedule()
Get schedule data for one or more schedulees.
public
getSchedule([array<string|int, mixed> $data = null ][, bool $disable_paging = false ]) : array<string|int, mixed>|bool
Parameters
- $data : array<string|int, mixed> = null
-
filter data
- $disable_paging : bool = false
Return values
array<string|int, mixed>|bool —getScheduleDefaultData()
Get default schedule data for creating new schedulees.
public
getScheduleDefaultData([array<string|int, mixed> $data = null ]) : array<string|int, mixed>
Also see APIRequestSchedule->getRequestScheduleDefaultData()
Parameters
- $data : array<string|int, mixed> = null
Return values
array<string|int, mixed> —getScheduleTotalTime()
Get schedule total time
public
getScheduleTotalTime(int $start, int $end[, int $schedule_policy_id = null ][, string $user_id = null ]) : array<string|int, mixed>|bool
Parameters
- $start : int
-
Start date epoch
- $end : int
-
End date epoch
- $schedule_policy_id : int = null
-
Schedule policy ID
- $user_id : string = null
-
UUID
Return values
array<string|int, mixed>|bool —getVariableToFunctionMap()
Bridge to main class getVariableToFunctionMap factory.
public
getVariableToFunctionMap(string $name[, string|int $parent = null ]) : array<string|int, mixed>
Parameters
- $name : string
- $parent : string|int = null
Return values
array<string|int, mixed> —handlePermissionFilterColumns()
In cases where data can be displayed in just a list_view (dropdown boxes), ie: branch, department, job, task in In/Out punch view restrict the dropdown box to just a subset of columns, so not all data is shown.
public
handlePermissionFilterColumns(array<string|int, mixed> $filter_columns, array<string|int, mixed> $allowed_columns) : array<string|int, mixed>|null
Parameters
- $filter_columns : array<string|int, mixed>
- $allowed_columns : array<string|int, mixed>
Return values
array<string|int, mixed>|null —handleRecordValidationResults()
public
handleRecordValidationResults(object|bool $validator, array<string|int, mixed> $validator_stats, int $key, array<string|int, mixed>|bool $save_result[, bool $user_generic_status_batch_id = false ][, mixed $system_job_queue = false ]) : array<string|int, mixed>
Parameters
- $validator : object|bool
- $validator_stats : array<string|int, mixed>
- $key : int
- $save_result : array<string|int, mixed>|bool
- $user_generic_status_batch_id : bool = false
- $system_job_queue : mixed = false
Return values
array<string|int, mixed> —initializeFilterAndPager()
public
initializeFilterAndPager(array<string|int, mixed> $data[, bool $disable_paging = false ]) : array<string|int, mixed>|bool
Parameters
- $data : array<string|int, mixed>
- $disable_paging : bool = false
Return values
array<string|int, mixed>|bool —isProgressBarStarted()
public
isProgressBarStarted() : bool
Return values
bool —returnHandler()
Controls returning information to client in a standard format.
public
returnHandler([bool $retval = true ][, bool $code = false ][, bool $description = false ][, bool $details = false ][, bool $validator_stats = false ][, bool $user_generic_status_batch_id = false ][, bool $request_data = false ][, bool $system_job_queue = false ]) : array<string|int, mixed>|bool
FIXME: Need to return the original request (with any modified values due to restrictions/validation issues) Also need to return paging data variables here too, as JSON can't make multiple calls. In order to do this we need to always return a special data structure that includes this information. static function returnHandler( $retval = TRUE, $args = array( 'code' => FALSE, 'description' => FALSE, 'details' = FALSE, 'validator_stats' => FALSE, 'user_generic_status_batch_id' => FALSE ) ) { The above will require too many changes, just add two more variables at the end, as it will only really be used by API->get*() functions. FIXME: Use a requestHandler() to handle all input requests, so we can parse out things like validate_only, ignore_warning (for user acknowledgable warnings) and handling all parameter parsing in a central place. static function returnHandler( $retval = TRUE, $code = FALSE, $description = FALSE, $details = FALSE, $validator_stats = FALSE, $user_generic_status_batch_id = FALSE, $request = FALSE, $pager = FALSE ) {
Parameters
- $retval : bool = true
- $code : bool = false
- $description : bool = false
- $details : bool = false
- $validator_stats : bool = false
- $user_generic_status_batch_id : bool = false
- $request_data : bool = false
- $system_job_queue : bool = false
Return values
array<string|int, mixed>|bool —setAPIMessageID()
public
setAPIMessageID(string $id) : bool
Parameters
- $id : string
-
UUID
Return values
bool —setMainClassObject()
Allow storing the main class object persistently in memory, so we can build up other variables to help out things like getOptions() Mainly used for the APIReport class.
public
setMainClassObject(object $obj) : bool
Parameters
- $obj : object
Return values
bool —setPagerObject()
public
setPagerObject(object $lf) : bool
Parameters
- $lf : object
Return values
bool —setProgressBarObject()
public
setProgressBarObject( $progress_bar_obj) : bool
Parameters
Return values
bool —setSchedule()
Set schedule data for one or more schedulees.
public
setSchedule(array<string|int, mixed> $data[, bool $validate_only = false ][, bool $ignore_warning = true ]) : array<string|int, mixed>|bool
Parameters
- $data : array<string|int, mixed>
-
schedule data
- $validate_only : bool = false
- $ignore_warning : bool = true
Return values
array<string|int, mixed>|bool —setValidationArray()
public
setValidationArray(array<string|int, Validator> $validator_obj_arr[, string $record_label = null ]) : array<string|int, mixed>|bool
Parameters
- $validator_obj_arr : array<string|int, Validator>
-
Array of Validator objects.
- $record_label : string = null
-
Prefix for record label if performing a mass function to differentiate one record from another.
Return values
array<string|int, mixed>|bool —stripReturnHandler()
public
stripReturnHandler(mixed $retarr) : mixed
Parameters
- $retarr : mixed
Return values
mixed —swapSchedule()
Swap schedules with one another. This doesn't work with recurring schedules, and is not used by Flex currently.
public
swapSchedule(array<string|int, mixed> $src_ids, array<string|int, mixed> $dst_ids) : array<string|int, mixed>
Parameters
- $src_ids : array<string|int, mixed>
-
Source schedule IDs
- $dst_ids : array<string|int, mixed>
-
Destination schedule IDs
Return values
array<string|int, mixed> —validateSchedule()
Validate schedule data for one or more schedulees.
public
validateSchedule(array<string|int, mixed> $data) : array<string|int, mixed>
Parameters
- $data : array<string|int, mixed>
-
schedule data