Commit Graph

5890 Commits

Author SHA1 Message Date
nathan
2c919d4318 WIP on caching static option file and searching it client-side
Still needs file caching & passing correct URL
2023-08-02 08:12:46 -06:00
nathan
9c15cdb1a5 Api: Swap sparse account array/object for simple list to fix missing options in select account widget 2023-08-02 08:06:46 -06:00
ralf
bf04a60fe3 * PostgreSQL/Mail: fix SQL error querying email avatars 2023-08-02 11:50:45 +02:00
nathan
6a172f46b1 Api: Add "search" to list of link entries sent to client
Fixes broken site-search
2023-08-01 09:47:49 -06:00
ralf
75f0cc417c Changelog for 23.1.20230728 2023-07-28 14:32:56 +02:00
ralf
d660970473 fix typo 2023-07-28 09:43:53 +02:00
ralf
26800057a3 guard against CalDAV clients wrongly sending a Content-Type or Accept header for JSON 2023-07-27 20:50:49 +02:00
ralf
eeec71fb46 fix not working auth_type=(fallback|fallbackmail2sql) as Auth::backend() calls __construct(null, null) 2023-07-27 14:09:46 +02:00
ralf
ae76eea6f3 fix lavatar shows same letters for every contact not having a photo
caused by wrongly falling back to the contact with contact_id equal to account_id of current user
2023-07-27 13:28:55 +02:00
ralf
7735c57031 fix Error: Call to undefined method calendar_bo::find_or_add_categories() when specifying categories 2023-07-26 16:31:37 +02:00
ralf
44359621a3 fix TypeError: Cannot read properties of null (reading 'trim') 2023-07-26 14:22:11 +02:00
ralf
a3bc505242 Changelog for 23.1.20230726 2023-07-26 12:28:35 +02:00
nathan
d6739afe8b Calendar: Fix group calendar could be missing events under some circumstances
Static account options added to CalendarOwner were blocking the group data needed, fixed by using sent options over account options
2023-07-26 09:06:27 +02:00
nathan
0e8e46f44e Api: Fix doubled link on open and missing link app select 2023-07-25 18:53:53 +02:00
ralf
eef211fdcd * Calendar: new REST API to read, create, modify and delete events, see https://github.com/EGroupware/egroupware/blob/master/doc/REST-CalDAV-CardDAV/Calendar.md 2023-07-25 18:38:34 +02:00
ralf
f60ee71c1c WIP Calendar REST API 2023-07-25 18:38:34 +02:00
ralf
2b323f4ceb aggregate Etemplate\Widget\Url::ajax_contact() requests and search for all of them in a single AJAX request and SQL query 2023-07-25 18:35:13 +02:00
ralf
10f8d54f46 for api.queue close session to NOT block other requests (api.queue should NOT be used for changing something in session) 2023-07-25 11:47:14 +02:00
hadi
a4109439e1 Implement onlyEmail option for UrlEmailReadonly 2023-07-25 11:42:40 +02:00
hadi
29d159ea29 Make sure to show only email when using current value as email (avoids getting duplicate name in fullEmail mode) 2023-07-25 11:42:01 +02:00
ralf
0bd9ec1cf2 fix docu, spelling and some static vs. non-static calls 2023-07-21 09:00:00 +02:00
nathan
6286679b0c * Api: Restrict customfield options read from a file to only JSON files. Files should contain an array of options.
ex:
[
  { "value": "Α", "label": "α alpha" },
  { "value": "Β", "label": "β beta" }
]
2023-07-18 08:20:29 -06:00
nathan
0632068664 * Api: Customfield selectboxes can read options from a PHP file in the VFS using @[path] ex: @/home/Default/selects.php 2023-07-18 08:20:18 -06:00
nathan
43f704f0d5 If customfields has a label and only 1 field, use the label for the widget
This lets us use " " as label to hide the custom field's label
2023-07-18 08:20:12 -06:00
ralf
39aa763552 * Adressbook/CardDAV: unconditionally start output-buffering to fix problems with huge multiget reports from TB110 AB 2023-07-17 21:44:16 +02:00
nathan
e1be2276c1 More indent for sub-categories 2023-07-17 10:39:09 -06:00
StefanU
90508896d3 Update calendar.svg
File optimisation, colour corrected
2023-07-14 09:24:07 -06:00
StefanU
c205be4547 Update delete.svg
Change to new EGw design
2023-07-14 09:24:01 -06:00
StefanU
ba551a27ef Update MailFolderTrash.svg
Change to new EGw design
2023-07-14 09:23:52 -06:00
ralf
61281ac778 fix not translated context menu 2023-07-14 11:30:19 +02:00
ralf
cae7ff0c01 add Promise<Et2Dialog> return type to openDialog 2023-07-14 09:08:36 +02:00
nathan
5b401feb85 Changes for opening etemplate in a dialog
- openDialog() now returns Promise<Et2Dialog>
- fixed etemplate reload
2023-07-14 09:08:35 +02:00
ralf
4bb5f9f7b2 WIP Mail REST API: fix reported problems with calendar quick add 2023-07-14 09:08:35 +02:00
nathan
e4b128408f Et2Dialog: Fix buttons could not be adopted if dialog contains only arbitrary slotted content 2023-07-14 09:08:35 +02:00
ralf
3c732b9caf WIP Mail REST API: fix closing dialog closes popup to because dialog was already removed when response was received 2023-07-14 09:08:35 +02:00
ralf
e9b054b025 WIP Mail REST API: change calendar to use new egw.openDialog():
- renamed app.dialogExec() to app.openDialog() or egw.openDialog()
- the later is the nicer place, but fails for lost window context with popups :(
2023-07-14 09:08:35 +02:00
nathan
b35e26a7f3 Get calendar quick-add working with Ralf's changes to open an etemplate in a dialog (c63784d7e8), fix buttons from those etemplates weren't adopted 2023-07-14 09:08:35 +02:00
ralf
d178087b16 WIP new app.ts method dialogExec(_menuaction) opening a popup into a dialog 2023-07-14 09:08:35 +02:00
ralf
9904ca59de WIP Mail REST API: fix failed POST request to create a contact (gave 501 Not Implemented) 2023-07-14 09:08:35 +02:00
ralf
f518f61335 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-14 09:07:06 +02:00
ralf
d93aa1e91c WIP Mail REST Api: permanent log result of primary backend for fallback auth 2023-07-14 09:06:12 +02:00
ralf
f8c4d7c8e3 WIP Mail REST API: fix broken fallback auth 2023-07-14 09:06:12 +02:00
ralf
f0cb5755c4 WIP Mail REST API: missing files from last commit 2023-07-14 09:06:11 +02:00
ralf
f95aad8713 * Mail: REST API to send mails including attachments / sharing links, or open interactive compose windows
WIP Mail REST API: enable direct sending of mails with token authentication / no password not allowing to save mail to Sent folder
2023-07-14 09:05:02 +02:00
ralf
c5d3b58cb1 WIP REST API for mail & token auth: fix wrong namespace 2023-07-14 08:44:16 +02:00
ralf
78068ca34a * Setup/Authentication: added an authentication log and fallback authentication for all backends 2023-07-14 08:42:58 +02:00
ralf
bd700c5169 WIP REST API: show checkbox in application password to (re-)generate new token and display it 2023-07-14 08:42:13 +02:00
ralf
80fce09a2c WIP Mail Rest API: UI for application passwords/tokens for admin 2023-07-14 08:41:46 +02:00
ralf
4c981ebd44 WIP REST API: using tokens to authenticate as user or impersonate a user without the password and optional limited application rights 2023-07-14 08:41:18 +02:00
ralf
21c40e5d01 WIP Mail REST API: do NOT read attachments into memory, they might be to big 2023-07-14 08:40:53 +02:00
ralf
2858a8a599 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-07-14 08:39:58 +02:00
nathan
7693d7f012 Api: Fix et2_widget_entry sum & compare
Options property is deprecated for webComponents, and cannot be changed.
2023-07-13 10:40:59 -06:00
nathan
fb6f1654c7 Api: return a Promise from htmlarea.doLoadingFinished() so etemplate can wait for it to be initialized 2023-07-12 09:49:42 -06:00
nathan
6ee5d69e1e Api: Add a timeout for form submit
If a submit takes more than 30s, give a warning and hide the loader so the user can try to salvage their changes.
2023-07-11 08:55:16 -06:00
nathan
7ae974500e Use code 204 instead of 404 to avoid browser treating it like an error 2023-07-10 14:56:35 -06:00
nathan
2d0976f456 Handle parsing number into boolean expression 2023-07-06 08:46:12 -06:00
nathan
dffa51e3dd Api: Pre-select opened mail dialog if add email address preference is not set 2023-07-05 08:20:00 -06:00
nathan
e78b33145e * Api: When clicking an email address, ask if user wants to add email to existing compose window or start a new mail 2023-07-05 08:19:44 -06:00
ralf
fa169d0e03 * 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:46 +02:00
ralf
931e795dd7 fix restoring 1.8 database gave "Duplicate entry" error by mapping that (again) to InvalidSql exception (was changed due to PHP 8) 2023-06-30 10:01:29 +02:00
nathan
bf03f4b198 * Wiki: allow German umlauts and other non-ascii chars in page names
Api: Fix encodeId() failed with integers
2023-06-30 07:43:23 +02:00
ralf
e07410d99f allow to use non-ascii chars for link-ids e.g. the name of Wiki pages can contain them
we store them as "\uXXXX" in the ascii column
2023-06-30 07:42:48 +02:00
nathan
dc5b0a4580 Api: User selection = none fixes
- Fix display was 'false' instead of blank
- Fix widget type check was not preserving original value
2023-06-29 14:55:37 -06:00
ralf
ef06967f85 * Mail: improve performace by skiping search for avatar images in contacts in favor of loading them when they become visible
fix regular expression
2023-06-28 08:22:47 +02:00
nathan
2c6120b705 Api: Fix avatar images were not loaded 2023-06-28 08:21:59 +02:00
ralf
83dd2d9ac1 WIP improve avatar loading in mail app
currently ET2Avatar is NOT correctly handling contactId=email:<email>
2023-06-28 08:21:59 +02:00
nathan
2c4c99d00d Api: All images lazy load
Try to stop when lots of images block the rest of the rendering
2023-06-28 08:21:58 +02:00
ralf
ee51d2890c needs ungreedy, to not include quotes 2023-06-28 07:49:20 +02:00
nathan
c8bee10afc Mail: Fix event detection in multipart mixed mails
Meeting form was not presented, just request content
2023-06-27 08:02:52 -06:00
ralf
7370b42c1e * ActiveDirectory: implement fail over for multiple AD controllers (failed controllers are blacklisted for 5min) 2023-06-26 12:20:41 +02:00
nathan
c2e981bc0f Stop changing symlink mime to target mime when saving 2023-06-21 10:09:16 -06:00
ralf
bd8df81953 Changelog for 23.1.20230620 2023-06-20 12:07:16 +02:00
hadi
717bf2a717 * Mail: fix mixed up inline images and attachments in smime signed messages 2023-06-19 17:07:37 +02:00
nathan
e1690a1dc1 Don't try to load disabled templates
Allows us to disable / not load templates even if they have template / ID
2023-06-19 08:11:04 -06:00
hadi
3740586d07 Make sure the status is by_date before adding date rules into sieve vacation notice 2023-06-19 10:24:32 +02:00
ralf
983c092aca fix wrongly placed exception 2023-06-16 14:54:07 +02:00
ralf
b234c4967b fix returning unsanitized user-input 2023-06-16 09:39:18 +02:00
ralf
b4b6a2ae08 fix lots of warnings filling zpush logs 2023-06-15 16:18:20 +02:00
ralf
f6663bb81c fix lots of warnings filling zpush logs 2023-06-15 16:18:16 +02:00
nathan
fe11716130 Fix tooltip was under calendar popup 2023-06-14 09:13:42 -06:00
nathan
d2cc3f2f53 Change new favourite icon from new to add 2023-06-12 14:26:23 -06:00
nathan
0e82fd3a15 Fix link delete button to show on row hover again 2023-06-12 09:37:14 -06:00
nathan
a91d4cf574 * Api: Fix custom etemplates were still used after deletion 2023-06-12 09:11:36 -06:00
hadi
5e67e8c6b5 Let the contextmenu be activated from tapandhold in regular template in order to be able to get the contextmenu in some touch devices 2023-06-12 16:27:34 +02:00
nathan
d7f7c1fa03 Et2DateDuration: Fix value of "" caused NaN 2023-06-12 08:24:34 -06:00
nathan
16767d91a6 Skip disabled widgets in iterateOver
This fixes disabled widgets returning their value unexpectedly, and ID collisions when we have 2 widgets with the same ID, but disable one.
2023-06-12 08:24:22 -06:00
nathan
5427e220e4 Et2DateDuration: Use integers for duration when we have a separate box for each duration, float when there's one box 2023-06-12 08:24:14 -06:00
nathan
9535cd9801 Api: Fix egw.copyTextToClipboard() to work in popups too 2023-06-12 08:21:58 -06:00
ralf
7579b07b42 fix SQL error creating or deleting a user when admin accounts list is sorted by ID (account_id) 2023-06-12 15:23:25 +02:00
ralf
956d56f450 fix PHP TypeError: implode(): Argument #2 ($array) must be of type ?array, int given 2023-06-07 20:09:16 +02:00
hadi
48e0bd0e32 Apply nowrap white-space only to et2-link used in et2-link-list in order to let its content be shown in multiple lines 2023-06-06 14:45:35 +02:00
nathan
88153eddf5 Et2Link: If only breaking on a certain character, don't break on dash either (in addition to space) 2023-06-05 11:03:51 -06:00
hadi
ea5ef58904 Fix links styling to get correctly ellipsis text overflow 2023-06-05 11:03:15 -06:00
nathan
4e957510bc API: Fix incorrect updateComplete override 2023-06-05 10:53:28 -06:00
nathan
572cc61315 Et2Link: Wait for link title before we say update is complete
Overriding _getUpdateComplete() lets us wait for whatever conditions we want, so we can wait on the Promise from link_title()
2023-06-05 10:53:17 -06:00
nathan
2946316d0b Et2Date: Fix timeonly does not update value the first time when manually typing a new value 2023-06-03 21:57:03 +02:00
hadi
c808fbb1ad Fix swipe and popup contextmenu being triggered accidentally in touch devices 2023-06-01 16:29:52 +02:00
hadi
58763c8c64 Attempt to keep all touch devices happy for touch/swipe actions in mobile view(specifically in listviews) 2023-06-01 16:29:14 +02:00
nathan
09cd777677 Et2Link: Fix unwanted indent in front of et2-link-string, fix expose in et2-link-list 2023-05-30 09:12:02 -06:00
hadi
f671009c3d Fix egw message in login page is not removable 2023-05-26 14:29:44 +02:00