Commit Graph

721 Commits

Author SHA1 Message Date
ralf
6a93275d93 only consider last linked entry, for timers created on an app entry
as rest of code wont deal with multiple ones
2022-11-04 15:57:38 +01:00
nathan
cbe8e841c6 Timesheet: Fix details/no details filter did not change description display 2022-11-03 14:18:10 -06:00
ralf
693cf1f116 run same logic for timer timesheets started on an other app's entry, as used for timesheets manually booked on them 2022-11-03 13:51:45 +01:00
ralf
a767bdef1e quiten error / dont stall, if 22.1 update is not yet run 2022-11-01 18:21:59 +01:00
nathan
4c1e2a268e Timesheet: Adjust vertical position of single-element headers to better line up with headers that include totals 2022-10-25 11:57:58 -06:00
ralf
03580169c1 fix not shown timer preferences 2022-10-21 12:49:33 +02:00
ralf
e66d03ec8d WIP timesheet timer: use date-duration with display-format="h:m" and data-format="s" instead of date-timeonly to avoid timezone problems 2022-10-17 15:21:10 +02:00
ralf
2834af46bc WIP timesheet timers: fix overwriting time via clicking on time displayed under the button 2022-10-17 11:39:09 +02:00
ralf
c2fea85c2a WIP timesheet timers: show time under each button and allow overwriting it via a click on the time
ToDo:
- Stop on paused timer does not behave write, overwriting stop needs testing, as timesheet need to be updated too, because it's already stored
- not checks or min/max values and config on overwrite time
2022-10-14 21:59:15 +02:00
ralf
bc9e252da9 WIP timesheet timers: dont ask again to start working time, if user denied it in this session or last 18 hours 2022-10-14 14:26:13 +02:00
ralf
664bb86b2a WIP timesheet timers: create a single working time timesheet per configured periode of day, week or month 2022-10-14 10:12:11 +02:00
nathan
2dc50f52cc Timesheet: Change duration to show h:mm 2022-10-13 14:51:38 -06:00
nathan
68f424173e Timesheet: Fix missing emptyLabel in pricelist select 2022-10-13 10:50:28 -06:00
ralf
383dfb9a04 WIP timesheet timers: round duration and total time to full minutes
done because our UI only shows full minutes
2022-10-13 17:37:48 +02:00
ralf
49f608159c WIP timesheet timer: ask user to start/stop working time with session/login/logout
if working time is not disabled in timesheet config, or asking is disabled in user preferences
2022-10-13 16:31:17 +02:00
ralf
075ba0f330 WIP timesheet timers: do not allow to enter a time before the last time entered
eg. a stop- or pause-time before the start-time or a start-time before the last stop- or pause-time
2022-10-11 16:20:17 +02:00
ralf
4de7dc5ba7 WIP timesheet timers: delete timer-events on timesheet deletion 2022-10-11 14:53:21 +02:00
ralf
65c1233ced WIP timesheet timer: allow to start timer as alternative to add a timesheet directly
timesheet will be added on stopping the timer
2022-10-09 15:30:46 +02:00
ralf
d8e993dc75 WIP timesheet timers: allow to add more time on an existing timesheet with right click "Start timer" 2022-10-07 19:36:57 +02:00
ralf
d6bfa7d9ee WIP timesheet timers: give an error, if user overwrite stop- or pause-time before the start 2022-10-06 13:56:44 +02:00
ralf
ccee240055 WIP timesheet timers: fix overwrite and display overwritten time and time of recording 2022-10-06 09:03:51 +02:00
ralf
59da89fe8b WIP timesheet timers: config to disable timers and overwrite of start&stop time 2022-10-05 14:55:42 +02:00
ralf
8fad43b705 WIP timesheet timer: start, pause and stop now via a dialog showing both timers and all buttons 2022-10-05 12:51:59 +02:00
ralf
caef7296ce invalidating/deleting et2-select-cat's cache on adding, updating or deleting categories
Also pushing cat-changes as app "api-cats" to client-side
ToDo: client-side code to update category list in admin or preferences
2022-10-04 12:54:30 +02:00
ralf
8890ba801b do NOT stall whole UI if update / creation of egw_timesheet_events table is not yet run 2022-10-03 10:11:33 +02:00
ralf
7dc781acd5 WIP timesheet timer: storing working time now w/o user interation when it is stopped 2022-10-03 10:01:46 +02:00
ralf
0a9526c152 WIP timesheet timer: persistence and opening a new timesheet when stoping the specific timer 2022-09-30 19:07:33 +02:00
ralf
780f14b4c5 WIP timesheet timer: add (project, task, ticket) specific timer to existing overall timer 2022-09-29 21:09:35 +02:00
ralf
3c79bd4345 WIP timesheet timer
just a prototype for now, no persistence beside the session to test reloads
2022-09-26 08:54:05 +02:00
Hadi Nategh
342eb8461a WIP Ui: Fix dialogs getting scrollbars in initiation 2022-08-30 10:39:57 +02:00
nathan
db7b9f0abb Timesheet: Avoid error when opening list caused by incorrect 'All' value in filter 2022-08-23 08:59:25 -06:00
Hadi Nategh
bf6f50f14e Adopt buttons used in mobile template to new buttonIcon widget 2022-08-23 13:14:34 +02:00
Hadi Nategh
082d6aa791 WIP Mobile template: Fix some of apps add buttons 2022-08-22 16:19:23 +02:00
Hadi Nategh
17c462d04e Drop pixelegg extra styles from timesheet 2022-08-10 15:28:00 +02:00
Hadi Nategh
e7bf61e9f4 Remove size from textbox as it would literally set a width for the input field 2022-08-10 13:36:03 +02:00
ralf
bcff7ab4dc fixing pixelegg less/css files to address images in default/images
remove no longer necessary pixelegg/images symlink to default/images
revert hint.png as the pixelegg one was never used
2022-07-31 10:49:35 +02:00
ralf
0113a93ffd move images from pixelegg to default and drop png or gif, if we have an svg 2022-07-28 17:56:34 +02:00
ralf
485fa5e857 fix et2-button attribute hideOnReadonly was removed from the template
add hideOnReadonly to timesheet.edit buttons
also move link widgets to legacy-regexp, so we can drop the old expose code
2022-05-12 18:16:34 +02:00
ralf
6f878cd7f1 fix not working translation of Admin > Apps > TimeSheet > Edit status 2022-03-05 15:27:45 +02:00
ralf
89613dd368 fix et2-date-duration showing NaN:NaN in timesheet
boolean attributes should not have a default of true, because DOM does NOT reflect false and we need to reflect for use in NM
--> changed default for select_unit for r/o duration to false and set it in timesheet.index to true
--> changing it for r/w too would require a lot of xet files to be updated (we don't need reflection there)
2022-03-02 11:02:24 +02:00
nathan
ecd8b08373 Fix timesheet edit could not select start date
Unimplemented "mode" legacy option was conflicting with flatpickr "mode" attribute
2022-02-22 10:01:55 -07:00
nathan
be4633c9fa Implement et2-date-duration 2022-02-16 16:45:40 -07:00
Hadi Nategh
4853cefa0c Add missing icons for applications add buttons 2022-01-20 13:32:27 +01:00
Ralf Becker
0748db0c70 pending translations from our translation server 2022-01-09 19:31:13 +01:00
nathan
df0db494f7 Fix "Uncaught TypeError: Cannot read properties of undefined (reading 'value')" caused by trying to access widget.options 2021-12-06 14:49:59 -07:00
Ralf Becker
382c39e817 fix PHP 8.0 TypeError: Unsupported operand types: string * float 2021-11-16 18:27:40 +01:00
Ralf Becker
383a6350f5 fix PHP 8.0 Error: Undefined constant "TIMESHEET_APP" 2021-11-15 17:49:43 +01:00
nathan
9e2bb05ded Placeholders list common UI
Should reduce maintenance by using a common UI to show placeholders based on the placeholder list
2021-10-12 14:18:18 -06:00
Ralf Becker
98e00f08d0 fix PHP 8.0 TypeError: when exporting multiple users
Argument 1 passed to EGroupware\Api\Accounts::username() must be of the type int or null, array given
2021-10-11 18:33:59 +02:00
Ralf Becker
90ab703a14 fix PHP Warning count(): Parameter must be an array or an object that implements Countable 2021-10-11 13:58:33 +02:00
nathan
da6a16e62d - Add generation target path preference to all apps
- Use common method to get merge preferences to reduce duplication
2021-10-07 10:22:45 -06:00
nathan
45f039da95 * Add preference to set the filename of merged documents using placeholders 2021-10-06 11:59:29 -06:00
Ralf Becker
5b3a6c02b4 PHP 8.0 Fatal error: Declaration of timesheet_tracking::get_subject($data, $old) must be compatible with Api\Storage\Tracking::get_subject($data, $old, $deleted = null, $receiver = null) 2021-10-06 16:32:14 +02:00
Ralf Becker
d2c85cfe86 fix PHP 8.0 errors: key(): Argument #1 ($array) must be of type array, null given
guarding key() from calling with null eg. $button = key($content['button']) --> key($content['button'] ?? []) or check before !empty($content['button'])
2021-10-06 16:08:32 +02:00
nathan
a0a89a6b74 Placeholder dialog: Add placeholders for projectmanager, timesheet, tracker 2021-10-05 16:09:39 -06:00
Ralf Becker
05405b955a remove generated .js files from git 2021-07-01 08:38:08 +02:00
Ralf Becker
d7cd90ebe7 fix skipping timestamps, but preferring .min.js over .js
added more apps to rollup.config.js (ones givening errors are commented out)
2021-06-29 15:21:19 +02:00
nathangray
9be653e226 Adapt app-specific merges to 186e03671a 2021-06-23 11:31:47 -06:00
nathangray
218e17798d Api: Fix Asyncservice did not have proper filesystem access as the job user 2021-06-18 14:56:14 +02:00
Hadi Nategh
0de8f242aa Fix missing dhtmlx menu object 2021-06-10 13:59:12 +02:00
Hadi Nategh
0730d4880e Remove couple of more jquery import statements 2021-06-10 13:57:33 +02:00
Ralf Becker
8fa2bb466b fixed includeJS causing jQuery to be included twice and breaking plugins 2021-06-08 15:11:37 +02:00
Ralf Becker
f91bca83e1 got et2 mostly working: timesheet.edit renders 2021-06-07 17:33:53 +02:00
Ralf Becker
1f010a4391 Bump version to 21.1 2021-05-08 15:02:24 +02:00
nathangray
583fbea046 Use Merge number formatting instead of export formatting. It takes export file type into consideration. 2021-04-21 10:33:31 -06:00
nathangray
f89c8cfb03 Add hrules to sidebox menus 2021-04-19 16:02:41 -06:00
nathangray
826d9e27cc * Timesheet: Fix created was overlapping with status 2021-04-13 13:28:56 -06:00
nathangray
aff06ec4cc Import/export fixes
- Fix for missing floats by Jürgen Dlugi
- Fix broken timesheet export was always 0 results
2021-04-08 16:53:06 -06:00
Ralf Becker
868135775c PHP 8 fixes 2021-03-29 16:47:19 +02:00
Ralf Becker
84845d05b5 Fix PHP 8.0 Fatal error: Unparenthesized a ? b : c ?: d is not supported 2021-03-21 21:46:10 +01:00
Ralf Becker
ab9c089f70 fix PHP 8 Fatal error Array and string offset access syntax with curly braces is no longer supported 2021-03-21 21:13:07 +01:00
nathangray
df54dcace4 Apply client-side push refactoring to calendar, infolog, timesheet 2021-03-04 11:27:35 -07:00
nathangray
779f2691bd * Timesheet: Fix created time was wrong in user timezone was not the same as server timezone 2021-01-28 09:39:17 -07:00
nathangray
b247554141 Timesheet: more timezone date fixes
This time start time was improperly processed, fixed end_time too
2021-01-27 10:23:22 -07:00
nathangray
1079abc161 Timesheet: Fix editing timesheet had start time in wrong timezone if user timezone differed from server timezone 2021-01-12 15:00:42 -07:00
Ralf Becker
ab8f644f32 pending translations from our translation server 2020-10-28 13:51:14 +01:00
nathangray
151889b39c Api: Move list of common merge placeholders into parent class to reduce duplication, add link/<format> options 2020-10-06 10:56:08 -06:00
Hadi Nategh
6b910cc5fe Make sure we reset filter or not setting it when choosing select All 2020-08-20 13:53:45 +02:00
Ralf Becker
af4a605561 * Timesheet: fix list not always refreshed via push, caused by owner filter 2020-08-14 12:38:29 +02:00
nathangray
bec67d63ee Etemplate: Change how nextmatch handles update & refresh push messages 2020-08-07 09:19:15 -06:00
nathangray
cd20749ca0 Timesheet: Change context menu category change to go over AJAX instead of POST to take advantage of push 2020-08-06 09:15:52 -06:00
Ralf Becker
3ee29ccacb disable autorefresh in infolog and timesheet 2020-08-06 10:07:26 +02:00
nathangray
c5f03f6413 Timesheet: ACL data changed is an object 2020-07-29 09:51:48 -06:00
Ralf Becker
6d4aaade1b avoid second full refresh by sending delete action via ajax 2020-07-24 14:47:50 +02:00
nathangray
f0b924008b Etemplate: Add a callback so apps can decide where to put new push rows 2020-07-21 15:32:22 -06:00
nathangray
b0a678c0ec Timesheet: Fix push owner filter was preventing updating 2020-07-20 13:44:28 -06:00
Ralf Becker
361d5cb351 bump version to 20.1 2020-06-28 10:04:21 +02:00
Ralf Becker
d83c567703 pending translations from our translation server 2020-06-12 12:29:47 +02:00
nathangray
32267f02c8 * Timesheet: Fix update via import without category or status cleared original 2020-04-14 14:32:46 -06:00
nathangray
0eb65b9efe * Timesheet: Fix import condition checks 2020-04-09 13:22:46 -06:00
nathangray
34ec346821 Fix favourites (& probably some more inherited stuff) broken by TypeScript conversion
Note that any properties declared in a sub-class aren't generally available until after the super() call is done, i.e. in the super constructor they're undefined.
2020-03-20 11:38:38 -06:00
Hadi Nategh
cd93c942fa Fix error template.index is undefined in timesheet 2020-03-12 15:56:07 +01:00
Ralf Becker
e9c4d3f07e complete push implementation for timesheet incl. ACL check 2020-01-24 13:31:56 +01:00
nathangray
76a5793a0a New push method, with base implementation of delete client side 2020-01-23 11:03:29 -07:00
nathangray
ff50df67d0 Use correct refresh methods for delete so app can handle it 2020-01-23 09:21:41 -07:00
Ralf Becker
6e0936bd98 first take on pushing app-changes to all clients 2020-01-23 11:26:44 +01:00
Ralf Becker
901825bcfa first try with TypeScript: timesheet app.js incl. new egw_app base-class 2020-01-23 09:14:58 +01:00
nathangray
06f8f7456d * Timesheet: Fix project link was missing when changing project after clicking "Save & New" 2019-12-13 09:48:01 -07:00
nathangray
11e145967e Remove unused preferred export definition preference 2019-08-02 10:17:16 -06:00
Ralf Becker
efcb0471b3 bump version to 19.1 2019-07-16 10:46:59 +02:00