setTrackingMode($configuration->getTimesheetTrackingMode()); $model->setDefaultBeginTime($configuration->getTimesheetDefaultBeginTime()); $model->setActiveEntriesHardLimit($configuration->getTimesheetActiveEntriesHardLimit()); $model->setIsAllowFutureTimes($configuration->isTimesheetAllowFutureTimes()); $model->setIsAllowOverlapping($configuration->isTimesheetAllowOverlappingRecords()); $view = new View($model, 200); $view->getContext()->setGroups(['Default', 'Config']); return $viewHandler->handle($view); } /** * Fetch configured color codes */ #[OA\Response(response: 200, description: 'Returns the configured color codes and names', content: new OA\JsonContent(type: 'object', example: ['Red' => '#ff0000'], additionalProperties: new OA\AdditionalProperties(type: 'string')))] #[Route(path: '/config/colors', methods: ['GET'])] public function colorConfigAction(SystemConfiguration $configuration, ViewHandlerInterface $viewHandler): Response { $view = new View($configuration->getThemeColors(), 200); $view->getContext()->setGroups(['Default']); return $viewHandler->handle($view); } }