nathan
f6a15f3c94
Api: Swap sparse account array/object for simple list to fix missing options in select account widget
2023-07-11 14:16:10 -06:00
ralf
96bb3a6884
WIP new app.ts method dialogExec(_menuaction) opening a popup into a dialog
...
ToDo: overwrite Framework actions in etemplate2.handle_load() to eg. close dialog, but not window, or refresh window instead of opener
2023-07-11 13:38:09 +02:00
milan
5e3c67a5cf
converted egw_action from javascript to typescript
...
classes are now uppercase and in their own files. lowercase classes are deprecated.
Interfaces are now actual interfaces that should be implemented instead of creating and returning an ai Object every time
2023-07-10 16:54:22 +02:00
nathan
1b3ce756f9
Api: Pre-select opened mail dialog if add email address preference is not set
2023-07-05 08:12:44 -06:00
nathan
0e6f74da02
* Api: When clicking an email address, ask if user wants to add email to existing compose window or start a new mail
2023-07-04 08:27:59 -06:00
ralf
4616fb03d0
* mailto: fix wrong URL registered for on premise installation (you need to delete it in the browser first!)
...
Chrome: Datenschutz und Sicherheit > Website-Einstellungen > Zusätzliche-Berechtigungen (aufklappen!) > Protokoll-Handler
2023-06-30 11:19:18 +02:00
ralf
dfef4ce0c5
WIP REST API for mail
...
currently we can launch (interactive) compose windows, if user is online
ToDo:
- send mails for a user
- authentication as arbitrary user with an API token
2023-06-29 12:50:04 +02:00
hadi
a8a5a14b12
Fix egw message in login page is not removable
2023-05-25 16:34:28 +02:00
nathan
bea2659fe3
Api: Fix egw.copyTextToClipboard() to work in popups too
2023-05-18 13:47:15 -06:00
ralf
e2580aedea
* Mail: work around Firefox not offering an option to not ask again installing EGroupware as mail-handler
2023-05-09 10:47:35 +02:00
nathan
7a75f50362
Api: Always resolve jsonq, even if empty array
...
Fixes callback was not called if response was []
2023-04-25 09:10:33 -06:00
hadi
2e570a0343
Fix toolbar actions not getting their icons displayed when the toolbar is being opened from its none origin apps
2023-04-19 17:50:57 +02:00
nathan
aac751f864
Api: Fix Et2Link did not open PDFs in Collabora, but always downloaded them
2023-04-18 11:48:25 -06:00
nathan
0026591f03
Api: Remove call to jQuery.dialog from app_base.js
...
Replaced with alert warning to port app to typescript (egw_app.ts)
2023-04-05 13:16:47 -06:00
nathan
8ec449403f
Api: Remove call to jQuery.dialog
2023-04-05 11:52:55 -06:00
ralf
b95cdcb3c0
also declare and export app and framework
2023-03-17 08:52:52 +01:00
nathan
0117c4bde3
Move client-side holidays cache to MODULE_GLOBAL egw.holidays(year)
2023-02-27 15:15:36 -07:00
nathan
ab812c8dec
Just the timer dialog gets timesheet color, leave others alone
2023-02-23 10:12:21 -07:00
ralf
5cf63cc45e
* Timesheet: allow to set preference to never ask again to start working time on login
2023-02-20 12:42:21 +01:00
nathan
570edaa1e0
Et2Favorites: Update sidebox favorite icons when user changes default favorite
2023-02-09 16:47:59 -07:00
nathan
bf764df720
Mail: Multiple attachments changes
...
- Offer to open in Collabora any file, not just editable (PDF)
- Put collabora option first in the option list if user prefers to open in collabora
- Change label to "Open with Collabora Office" with translation from Birgit
2023-02-09 14:47:43 -07:00
Hadi Nategh
e397e43c1b
Fix PGP back/restore dialog
2023-02-01 14:15:56 +01:00
ralf
4e1b31bb37
also legacy-load old phpgwapi JS code like tabs using in KB
2023-01-12 08:43:17 -06:00
nathan
28678c48f4
remove debug
2022-12-19 13:08:21 -07:00
nathan
e756962f86
Change egw.accounts() to always return a Promise
2022-12-15 10:22:19 -07:00
nathan
54498a005c
Et2Dialog: Second try waiting on template load
...
Now creating the template promise immediately on setting template name and using a resolver function to resolve after template is loaded
2022-12-14 10:39:15 -07:00
ralf
26d4082cda
fix not working buttons in timer dialog
2022-12-08 20:13:32 +01:00
nathan
390fbf3608
Dialog work
...
- Switch from LionDialog to SlDialog as base
- First input should get focus
- First button gets set as primary (if no default set), Enter key will act as a click on it
- Escape key closes dialog
2022-11-30 15:59:25 -07:00
nathan
bd584e468c
Check if websocket is connected as part of pushAvailable() check
2022-11-11 08:46:34 -07:00
ralf
5f6ab54c83
fix undefined response error caused by empty response body
2022-11-09 11:03:54 +01:00
ralf
5302675aac
new method egw.pushAvailable() : bool to check availability of push-server on client-side
2022-11-07 21:31:23 +01:00
Hadi Nategh
8b83ed85d3
Fix egw messages in popup are wrongly positioned
2022-11-07 16:44:00 +01:00
nathan
2659a8ab63
Filemanager: Add copy to clipboard button to share link dialog
2022-10-28 10:05:03 -06:00
ralf
38e7a977d1
when time get overwritten/updated, we need to set last time, to avoid error that time can not be set before last action
2022-10-25 20:16:23 +02:00
nathan
24fb01d190
Filemanager: Add push support
2022-10-24 09:58:11 -06:00
nathan
323e45caf7
Don't show warning when main window is lost
2022-10-18 13:45:06 -06:00
ralf
05b316f7ff
move egw_get_file_editor_prefered_mimes() to egw.file_editor_prefered_mimes() as everything in old jsapi.js is deprecated and should be removed
...
.
2022-10-18 08:30:15 +02:00
nathan
6034702a7c
Et2Link: Fix editable files were downloaded instead of opened in Collabora
2022-10-17 14:47:34 -06: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
ralf
7404cc1119
WIP timesheet timers: do NOT round hours for hh:mm display, as 30min will give 1:30, instead of 0:30
2022-10-13 16:42:37 +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
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
nathan
ec388c955a
Fix open compose windows created new drafts after main window was reloaded
2022-10-05 14:30:43 -06: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
0a9526c152
WIP timesheet timer: persistence and opening a new timesheet when stoping the specific timer
2022-09-30 19:07:33 +02:00
Hadi Nategh
b6398c4059
Fix couple of mobile template issues
2022-09-30 11:39:51 +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
1308b09493
WIP timesheet timer
2022-09-29 18:04:57 +02:00
Hadi Nategh
2ed1a12617
Fix topmenu dropdowns click handler
2022-09-26 13:36:10 +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
nathan
79b6cef5fd
Switch egw.user(..., async=true) to always return a Promise for consistency
...
Switch Et2ButtonTimestamper to use egw.user(...,async=true)
2022-09-20 08:05:59 -06:00
nathan
a3e2850b05
Send info to open popups to inform user that main window has been reloaded.
2022-09-15 15:14:16 -06:00
Hadi Nategh
f7c8c09a4b
Drop tutorials
2022-09-12 13:24:00 +02:00
Hadi Nategh
3435c475f5
Implement cursor position center for egw_tooltip
2022-09-08 16:16:34 +02:00
ralf
9f4fb1343d
fix Mailvelope in infolog.edit
2022-09-08 11:27:02 +02:00
nathan
080dea2378
Fix add favorites
...
Changed to use a proper template & dialog, now that we have et2-details widget.
2022-08-25 11:47:21 -06:00
ralf
6c3df5ad8b
fix not translated quick add
...
caused by _callback not waiting for promise
2022-08-22 14:24:35 +02:00
ralf
2a7d05a545
fix not camelCase attribute name, sanitize app-names to 16 chars and use "infolog" for CRM-view
...
still not fully working, as NM controller somehow overwrites it again :(
2022-08-16 10:10:36 +02:00
nathan
d5d6d54902
Avoid error if title widget is not an input widget
2022-08-15 10:40:13 -06:00
ralf
e1c8acddc1
fix egw.request() to return simple / non-json-responses, like egw.json() does
2022-08-08 17:28:51 +02:00
ralf
2017bd8261
remove legacy widgets dropdown_button and favorites
2022-08-07 12:09:02 +02:00
ralf
f699c36a47
fix getAppName sometimes reports "phpgwapi" from this.appName causing eg. attachment icon in filemanager to come from old phpgwapi directory
2022-08-02 14:52:20 +02:00
ralf
ab0bf89d17
fix missing icons in quick_add after move of images
...
also added invisible emptyLabel to not select first one
2022-08-01 12:02:40 +02:00
ralf
49762fa4dc
fix Safari (at least 15.5) gives error link-registry not defined
...
caused by not implemented navigator.registerProtocolHandler()
2022-07-28 14:23:36 +02:00
ralf
f5cf39f224
allow to disable installing EGroupware as mailto handler globally
2022-07-26 10:05:43 +02:00
ralf
1058347c0a
trying to fix FF poping up install mailto-link message constantly, when changing content in an iframe / reading mail
2022-07-25 08:35:34 +02:00
ralf
ec8c38b882
* Mail: register EGroupware as protocol handler for mail, you need to click on the double-diamond in the url bar and confirm it
2022-07-22 09:43:37 +02:00
Hadi Nategh
5038d060fe
Use et2-select webcomponent for quick add button
2022-07-19 16:50:02 +02:00
Hadi Nategh
6d1674bc45
Fix egw.tooltip documentation
2022-06-03 17:11:31 +02:00
ralf
5859ce0c37
fix CRM view shown with [object Promise] instead of title
2022-06-03 11:21:09 +02:00
Hadi Nategh
2b85b0b920
Fix options not available
2022-06-02 18:00:34 +02:00
Hadi Nategh
f6340e21d0
Add some options into tooltip
2022-06-02 18:00:34 +02:00
Hadi Nategh
1afcc3ebce
Replace all jquery-ui sortable used in fw
2022-05-23 17:45:56 +02:00
nathan
a7940fe4f6
Update declaration signature
2022-05-12 11:03:18 -06:00
ralf
849291889e
fix some TypeScript errors displayed by IDE in new ExposeMixing
2022-05-07 11:35:27 +02:00
ralf
3eaed09185
fix not working et2-date-since and rename et2-date-time_today to et2-date-time-today
...
create a new method egw.getTimezoneOffset() return current offset according to user preferences on server-side, like (new Date).getTimezoneOffset()
2022-05-05 11:38:48 +02:00
ralf
b2044db11e
remove jQueryUI date picker
2022-05-03 15:38:47 +02:00
ralf
3777ba7691
fix not working callback syntax with egw.jsonq() and changing callback to promise (after the fix)
2022-05-02 16:22:12 +02:00
ralf
74ad3ba7b0
change egw.jsonq() and egw.link_title() to return promises
...
* egw.jsonq() now always returns a promise like egw.request(), still supporting old callback syntax
* egw.link_title(_app, _id, _callback, _context, _force_reload) supports boolean values for _callback (to not break existing code)
- false: just a cache lookup (like current call with just 2 parameters), returning null, if no title is cached, or the title
- true: always return a promise, which might already be resolved, if title was cached
- function: also returns a promise and calls the callback
--> calling egw.link_title(_app, _id) without 3rd parameter is deprecated now (gives a console.trace), to be changed in future to always return a promise, unless called with false, to just return a cache-lookup
* Et2SelectAccountReadonly and et2_link_widget is changed to use the new/updated syntax with promises
2022-05-02 11:27:33 +02:00
ralf
e4c2432f4c
replace jQuery.ui.keyCode.X with EGW_KEY_X
2022-04-30 10:33:07 +02:00
ralf
c62b305b4a
return a Promise from egw.accountData and deprecated, but still support, the use of a callback
...
egw.accounts can be called with a second parameter async=true to query accounts async and return a Promise
2022-04-27 17:33:07 +02:00
nathan
7d86272b28
CSS / Layout cleanup
...
- Fix select with tags=true causes hidden WebComponents to display
Chosen wants to do sizing calculations which wasn't working properly on w.c.
2022-04-25 10:46:51 -06:00
Hadi Nategh
8b147bc285
Fix removeSessionItem not working
2022-04-05 10:24:06 +02:00
nathan
9693cfe538
Switch nextmatch print & select all to using Et2Dialog
2022-03-23 13:28:15 -06:00
nathan
96039e0729
egw_open doesn't like the import...
2022-03-17 16:54:43 -06:00
nathan
255add7d98
Api: Switch from et2_dialog to Et2Dialog
...
Might be some I missed or can't change just yet
2022-03-17 16:18:39 -06:00
nathan
d2020727fe
Fix some missing translation problems
2022-02-11 13:02:21 -07:00
nathan
c964ccd584
- Fix 'Forgot password' could not complete due to redirect
...
- Avoid error if no groups selected in registration configuration
2022-02-08 15:26:52 -07:00
Ralf Becker
1f4cb50e74
use $method parameter of Api\Etemplate::exec() plus new et2_process handler as menuaction GET parameter
...
allows determining the called function on the URL to eg. send it to different FPM pool
(before the menuaction of et2 was always "EGroupware\Api\Etemplate::ajax_process_content")
2022-01-09 16:38:14 +02:00
nathan
50f4b5cd47
Fix missing calendar participant + button
...
set_readonly() was missing, getWindowTitle() was using .options.value instead of get_value()
2021-12-07 13:36:53 -07:00
nathan
a73f0771e6
Fix TypeError: Cannot read properties of undefined (reading 'position')
...
Caused by LitElement not having a styles property. Just skip those to avoid the error
2021-12-06 14:42:17 -07:00