• Модуль: timeman
  • Путь к файлу: ~/bitrix/modules/timeman/lib/service/worktime/worktimeservice.php
  • Класс: BitrixTimemanServiceWorktimeWorktimeService
  • Вызов: WorktimeService::checkActionEligibility
private function checkActionEligibility($actions)
{
	$result = new WorktimeServiceResult();
	if (empty($actions))
	{
		return $result->addProhibitedActionError(WorktimeServiceResult::ERROR_FOR_USER, WorktimeServiceResult::ERROR_EMPTY_ACTIONS);
	}
	if (count($actions) > 1)
	{
		// todo interface should send schedule/shift id, so we can choose the right action
		// todo wtf return $result->addProhibitedActionError(WorktimeServiceResult::ERROR_FOR_USER, WorktimeServiceResult::ERROR_MULTI_ACTIONS);
	}
	/** @var WorktimeAction $action */
	$action = end($actions);
	if ($action->getRecord() && !$action->getRecordManager())
	{
		return $result->addError(new Error('WorktimeAction must have WorktimeRecordManager instance ' . __FILE__ . ':' . __LINE__));
	}

	$result->setShift($action->getShift());
	$result->setSchedule($action->getSchedule());
	$result->setWorktimeRecord($action->getRecord());
	$result->setWorktimeAction($action);
	return $result;
}