Time Management
REST methods for Time Management module.
Note. Those methods are operational starting from Time Management module version 17.0.2.
Method | Description | Available from version |
---|---|---|
Basic methods | ||
timeman.settings | Returns current user workday settings. | 17.0.2 |
timeman.status | Returns information about current user workday. | 17.0.2 |
timeman.open | Starts new workday or continues closed or paused workday. | 17.0.2 |
timeman.close | Closes workday. | 17.0.2 |
timeman.pause | Pauses workday. | 17.0.2 |
Office networks | ||
timeman.networkrange.check | Checks if an IP address is included into the office network IP range. | 18.5.0 |
timeman.networkrange.get | Gets the office network IP range. | 18.5.0 |
timeman.networkrange.set | Sets the office network IP range. | 18.5.0 |
Time Management | ||
timeman.timecontrol.report.add | Sends report on detected workplace absence. | 18.5.0 |
timeman.timecontrol.reports.get | Gets report on detected absence cases. | 18.5.0 |
timeman.timecontrol.reports.settings.get | Gets user settings to create an interface for the time control report. | 18.5.0 |
timeman.timecontrol.reports.users.get | Gets a list of users included into the specified department. | 18.5.0 |
timeman.timecontrol.settings.get | Gets time control settings. | 18.5.0 |
timeman.timecontrol.settings.set | Sets time control settings. | 18.5.0 |
Work schedule | ||
timeman.schedule.get | Gets work schedule by its ID. |
Several examples
Examples of operating in the legacy core.
Confirmation of workday with positive rating at the page /timeman/work_report.php
:
CModule::IncludeModule('timeman'); $ID = 8; $arFields = array( "MARK" => "G", // "G" - positive, "B" - negative, "N" - no rating, "X" - without confirmation ); if ($arFields["MARK"] != "X") { $arFields["APPROVER"] = $USER->GetID(); $arFields["APPROVE"] = "Y"; $arFields["APPROVE_DATE"] = ConvertTimeStamp(time(), "FULL"); } else { $arFields["APPROVE"] = "N"; $arFields["APPROVER"] = 0; $arFields["APPROVE_DATE"] = ""; } $result = CTimeManReportFull::Update($ID, $arFields); var_dump($result);
Handling employee workday
CModule::IncludeModule('timeman'); $USER_ID = 1; $report = ""; $obUser = new CTimeManUser($USER_ID); $obUser->OpenDay($timestamp, $report); // open workday $obUser->CloseDay($timestamp, $report); // close workday $state = $oTimeManUser->State(); // find out workday status for user $USER_ID $arInfo = $oTimeManUser->GetCurrentInfo(); // workday information about user $USER_ID // Data about active task CModule::IncludeModule('tasks'); $oTaskTimer = CTaskTimerManager::getInstance($USER_ID); $rs = $oTaskTimer->getLastTimer();
© «Bitrix24», 2001-2024