Commit Graph

82 Commits

Author SHA1 Message Date
Kevin Papst
16e8e8a5e5 fix deprecations (move same controller) (#2440) 2021-03-16 14:06:15 +01:00
Kevin Papst
3e9371bd6a Timesheet validator: prevent overbooking budgets (#2422) 2021-03-13 14:41:29 +01:00
Kevin Papst
8d72d114c7 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
2021-01-17 14:04:13 +01:00
Kevin Papst
996f05c73a added project importer and grandtotal converter (#1468) 2020-10-11 22:08:00 +02:00
Kevin Papst
2b033710e2 events: extend system configurations and set invoice formatter (#1995) 2020-09-25 19:51:23 +02:00
Kevin Papst
9ef32e75c5 added drag and drop for new records via calendar (#1962) 2020-09-17 01:13:48 +02:00
Kevin Papst
476e6ca150 remove usage of getenv from codebase (#1861) 2020-08-02 01:02:04 +02:00
Honza Kopecký
091740f407 timesheet lockdown with grace period (#1644) 2020-07-02 18:54:17 +02:00
Kevin Papst
e22830790b new system-config to prevent overlapping records (#1720) 2020-06-28 22:09:50 +02:00
Kevin Papst
0f3fa8fdbe Code improvements (#1649)
* use global namespace for faster lookups
* phpstan level 5
2020-04-19 14:37:14 +02:00
Kevin Papst
057c824e9f replaced mailer library, added email templates (#1462) 2020-02-12 16:05:13 +01:00
Kevin Papst
1b4f4bba22 added option to use only pre-defined tags (#1463) 2020-02-12 15:35:42 +01:00
Kevin Papst
6a44dbfe83 detail pages for customers and projects (#1371) 2020-01-16 16:25:28 +01:00
Kevin Papst
261b4646e4 added chinese translations (#1310) 2019-12-09 12:56:38 +01:00
Kevin Papst
af0f89774e User roles and permission management via Admin UI (#1231) 2019-11-10 18:53:56 +01:00
Kevin Papst
c6c4098759 rounding rules via admin screen, round begin when starting record (#1229) 2019-11-10 13:57:05 +01:00
Kevin Papst
f4fcfeba9d dynamic branding options (#1205) 2019-10-30 14:22:34 +01:00
Kevin Papst
e99b170d0a refactored search with free search term support (#1064) 2019-09-04 18:54:06 +02:00
Kevin Papst
561ec3b1e9 added team permissions (#996) 2019-08-16 01:22:33 +02:00
Kevin Papst
1bd784eef3 added calendar slot_duration config (#989) 2019-07-26 23:51:29 +02:00
Kevin Papst
19843760e5 allow to configure default values for users (#919) 2019-07-05 02:42:50 +02:00
Kevin Papst
90980f40f5 allow to disable user preferences by permission (#895) 2019-07-01 19:37:20 +02:00
Kevin Papst
59d2946b91 add "duration + fixed start time" tracking mode (#859) 2019-06-15 23:04:53 +02:00
Kevin Papst
833968a87d fix LDAP install for systems without ldap extension (#846) 2019-06-11 01:25:49 +02:00
Kevin Papst
0c0e9c2f71 LDAP authentication support (#815) 2019-06-07 22:48:39 +02:00
Kevin Papst
d9dca96a32 added punch-in punch-out / time-clock mode (#812) 2019-05-27 01:36:43 +02:00
Kevin Papst
d2ad87d09c improved calendar (#784) 2019-05-19 16:16:20 +02:00
Kevin Papst
09da7cd242 javascript and api to stop and display active records (#772) 2019-05-10 13:45:09 +02:00
Kevin Papst
b8811924c3 reduce config complexity by converting php format to js format (#734) 2019-04-29 00:24:23 +02:00
Kevin Papst
32f0d80729 configs: overwrite via prepend, mode instead of duration_only (#715) 2019-04-26 16:14:28 +02:00
Kevin Papst
13d9f8f3f7 added database driven system configurations with admin screen (#647) 2019-03-22 20:58:38 +01:00
Kevin Papst
bde791fa55 added begin, end and export filter for API timesheets (#639) 2019-03-14 03:34:54 +01:00