Commit Graph

722 Commits

Author SHA1 Message Date
ralf
1d86f1712a reset working-time title, when times are changed 2022-11-08 09:09:37 +01:00
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