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

@@ -9,7 +9,7 @@
namespace App\Validator\Constraints;
use App\Configuration\TimesheetConfiguration;
use App\Configuration\SystemConfiguration;
use App\Entity\Timesheet as TimesheetEntity;
use Symfony\Component\Security\Core\Authorization\AuthorizationCheckerInterface;
use Symfony\Component\Validator\Constraint;
@@ -23,11 +23,11 @@ final class TimesheetLockdownValidator extends ConstraintValidator
*/
private $auth;
/**
* @var TimesheetConfiguration
* @var SystemConfiguration
*/
private $configuration;
public function __construct(AuthorizationCheckerInterface $auth, TimesheetConfiguration $configuration)
public function __construct(AuthorizationCheckerInterface $auth, SystemConfiguration $configuration)
{
$this->auth = $auth;
$this->configuration = $configuration;
@@ -53,14 +53,14 @@ final class TimesheetLockdownValidator extends ConstraintValidator
return;
}
if (!$this->configuration->isLockdownActive()) {
if (!$this->configuration->isTimesheetLockdownActive()) {
return;
}
$lockedStart = $this->configuration->getLockdownPeriodStart();
$lockedEnd = $this->configuration->getLockdownPeriodEnd();
$lockedStart = $this->configuration->getTimesheetLockdownPeriodStart();
$lockedEnd = $this->configuration->getTimesheetLockdownPeriodEnd();
$gracePeriod = $this->configuration->getLockdownGracePeriod();
$gracePeriod = $this->configuration->getTimesheetLockdownGracePeriod();
if (!empty($gracePeriod)) {
$gracePeriod = $gracePeriod . ' ';
}