improved duration and minute selector (#2264)

* do not close modal if form is dirty
* deprecated TimesheetConfiguration
* inject timezone in form types
* cleanup usage of UserDateTimeFactory
* allow to configure increment steps for minutes
* use 15 minutes step for datetimepicker in project edit form
* use rounding rules for increments in minute select for begin and end
* allow duration in multi user and admin timesheet forms
* make dropdown values configurable
This commit is contained in:
Kevin Papst
2021-01-17 14:04:13 +01:00
committed by GitHub
parent e2324b7d51
commit 8d72d114c7
95 changed files with 1381 additions and 510 deletions

View File

@@ -11,7 +11,6 @@ declare(strict_types=1);
namespace App\API;
use App\Configuration\TimesheetConfiguration;
use App\Entity\User;
use App\Event\RecentActivityEvent;
use App\Event\TimesheetMetaDefinitionEvent;
@@ -62,10 +61,6 @@ class TimesheetController extends BaseApiController
* @var ViewHandlerInterface
*/
private $viewHandler;
/**
* @var TimesheetConfiguration
*/
private $configuration;
/**
* @var TagRepository
*/
@@ -86,24 +81,20 @@ class TimesheetController extends BaseApiController
public function __construct(
ViewHandlerInterface $viewHandler,
TimesheetRepository $repository,
TimesheetConfiguration $configuration,
TagRepository $tagRepository,
TrackingModeService $trackingModeService,
EventDispatcherInterface $dispatcher,
TimesheetService $service
) {
$this->viewHandler = $viewHandler;
$this->repository = $repository;
$this->configuration = $configuration;
$this->tagRepository = $tagRepository;
$this->trackingModeService = $trackingModeService;
$this->dispatcher = $dispatcher;
$this->service = $service;
}
protected function getTrackingMode(): TrackingModeInterface
{
return $this->trackingModeService->getActiveMode();
return $this->service->getActiveTrackingMode();
}
/**