Release 2.4.0 (#4427)
* button to duplicate old timesheets, even those from lockdown period * bump composer packages * fixes tooltip remains in view #4426 * fix js error if all widgets were removed * allow to open timesheet edit dialog from export listing * css classes for timesheet context menu, so they can be hidden * added flag to force a user to set password upon login * enable lazy-ghost-objects to fix deprecation * change user, username, internal_rate export column labels * helper method to find user by displayname * log improvements and format changes * deactivate broken schema validation
This commit is contained in:
@@ -399,7 +399,7 @@ final class SystemConfiguration
|
||||
|
||||
public function getTimesheetTrackingMode(): string
|
||||
{
|
||||
return (string) $this->find('timesheet.mode');
|
||||
return $this->getString('timesheet.mode', 'default');
|
||||
}
|
||||
|
||||
public function isTimesheetMarkdownEnabled(): bool
|
||||
@@ -442,19 +442,6 @@ final class SystemConfiguration
|
||||
return (int) $this->find('timesheet.rounding.default.duration');
|
||||
}
|
||||
|
||||
private function getIncrement(string $key, int $fallback, int $min = 1): int
|
||||
{
|
||||
$config = $this->find($key);
|
||||
|
||||
if ($config === null || trim($config) === '') {
|
||||
return $fallback;
|
||||
}
|
||||
|
||||
$config = (int) $config;
|
||||
|
||||
return max($config, $min);
|
||||
}
|
||||
|
||||
public function getTimesheetIncrementDuration(): int
|
||||
{
|
||||
return $this->getIncrement('timesheet.duration_increment', $this->getTimesheetDefaultRoundingDuration(), 0);
|
||||
@@ -511,4 +498,36 @@ final class SystemConfiguration
|
||||
{
|
||||
return $this->find('project.copy_teams_on_create') === true;
|
||||
}
|
||||
|
||||
// ========== Helper functions ==========
|
||||
|
||||
private function getIncrement(string $key, int $fallback, int $min = 1): int
|
||||
{
|
||||
$config = $this->find($key);
|
||||
|
||||
if ($config === null || trim($config) === '') {
|
||||
return $fallback;
|
||||
}
|
||||
|
||||
$config = (int) $config;
|
||||
|
||||
return max($config, $min);
|
||||
}
|
||||
|
||||
private function getString(string $key, string $fallback): string
|
||||
{
|
||||
$config = $this->find($key);
|
||||
|
||||
if ($config === null) {
|
||||
return $fallback;
|
||||
}
|
||||
|
||||
$config = (string) $config;
|
||||
|
||||
if (trim($config) === '') {
|
||||
return $fallback;
|
||||
}
|
||||
|
||||
return $config;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user