nathan
1dc9dd0c6b
* Add a preference so you can choose where merged documents are put
2021-09-30 12:01:37 -06:00
nathan
fb88f8846b
Merge as PDF:
...
- improve error logging
- remove original merge result when PDF conversion succeeds
2021-09-29 11:01:07 -06:00
Ralf Becker
89923e25c4
add an additional static method Api\Mail\Smtp::mailbox_address()
...
as PHP 8.0 does not allow to call a non-static method static, even if $this is (conditionally) not used
2021-09-29 10:10:48 +02:00
nathan
707c57ecf0
* Add option to merge documents as PDF
2021-09-28 17:00:55 -06:00
nathan
2a4faf0137
* Add filemanager actions to convert editable files to PDF or PNG
2021-09-28 14:48:25 -06:00
nathan
7f930a6221
Placeholder dialog: Support for other apps, starting with Infolog
2021-09-27 14:46:41 -06:00
nathan
eb57294146
Placeholder dialog: Allow & show general fields
2021-09-27 11:09:38 -06:00
nathan
369de2e3d5
Specific ordering for contact merge placeholders
...
also, use switch to using prefix()
2021-09-27 10:54:57 -06:00
nathan
47cf12869b
Utility function to add prefix to placeholder & optionally wrap it with markers, because I was writing it out so many times
2021-09-27 10:54:57 -06:00
Ralf Becker
e640873fc0
implement and document PATCH
2021-09-25 12:38:08 +02:00
Ralf Becker
1280de46d6
REST API allow sending a JSON patch to update or create a new contact (currently only via POST or PUT, not as PATCH!)
...
allows eg. to create a contact from a simple Wordpress contact-form only supporting POST requests and a flat object, see new example in the documentation
2021-09-24 18:06:13 +02:00
Ralf Becker
d9f759f517
fix PHP 8.0 error: implode(): Argument #2 ($array) must be of type ?array, string given
2021-09-24 12:29:48 +02:00
nathan
704b6c6dc2
Add user placeholders into placeholder dialog
2021-09-22 11:15:49 -06:00
nathan
d512238dc0
* Collabora: Add address insert dialog
2021-09-21 14:07:22 -06:00
Ralf Becker
15a2e546ea
missing @type="NameComponent" and updated examples in docu with @type
2021-09-21 18:50:40 +02:00
nathan
8e67e2efad
WIP on placeholders
...
- Some TS cleanup
- Fix error in preview giving wrong results
2021-09-21 10:19:24 -06:00
Ralf Becker
8db7d13c49
Implemented @type attributes for all top-level objects from JsContact Draft 08
2021-09-21 11:09:32 +02:00
nathan
29bd739955
W.I.P on collabora placeholder insert
2021-09-20 15:34:55 -06:00
Ralf Becker
82c8ed51d2
Contacts REST API:
...
- implement missing PUT/POST of distribution list / CardGroups
- implement changes from next JsContact draft:
+ string plus extra localizations attribute instead of localizedString object
+ use "<domain>:<name>" for vendor attributes
- add/parse urn:uuid: prefix if UID is a UUID
2021-09-20 16:01:22 +02:00
Ralf Becker
0a75520a01
* Filemanager/Sharing: create different share-token for different recipients (before recipients where added to the token)
...
- allows to individually remove the token, otherwise new token for the other recipients need to be redistributed
- sending one email to multiple recipients still creates a single share-token for all the recipients (send multiple mails if that's not desired)
2021-09-20 13:27:31 +02:00
Ralf Becker
e9998161a5
finished REST API for contacts modulo docu and bugs ;)
...
- JsCardGroup now used for distribution lists
- responses are not in "responses" attribute (no longer in root of object)
- fix sometimes empty / different members between PROPFIND/REPORT/JSON-GET and GET of group (caused by wrongly implemented limit to given AB)
- JSON pretty-print only if requested by Accept: application/pretty+json
- fix invalid JSON for errors (caused by opening {"responses": already sent
2021-09-19 11:09:44 +02:00
Ralf Becker
3a88aedce1
fix PHP Deprecated: stripos(): Non-string needles will be interpreted as strings in the future
2021-09-18 09:44:46 +02:00
Ralf Becker
7617aae9d0
got POST, PUT and DELETE request to add, update and delete contacts working
...
added JSON exception handler with nicer JsCalendar parse errors
2021-09-17 20:15:36 +02:00
Ralf Becker
8793f7895b
fix excess separator, if not 2nd street-line
2021-09-17 11:58:39 +02:00
Ralf Becker
0768f5fadf
WIP REST Api for contacts
2021-09-16 20:53:43 +02:00
Ralf Becker
38e2167166
WIP REST API for contacts using JsContacts draft
2021-09-15 18:45:45 +02:00
Ralf Becker
be3514c36f
preferring get_rrows over get_rows to fix SQL error in timesheet merge
2021-09-13 18:02:39 +02:00
Ralf Becker
621d69f921
missing files from filemanager mount GUI
2021-09-13 17:41:21 +02:00
Ralf Becker
4727340f1d
* Filemanager: added user-interface to mount WebDAV or SMB shares
2021-09-13 16:16:36 +02:00
nathan
36df64085f
* Api: Fix some merge files were opened in browser instead of downloaded
2021-09-03 09:33:32 -06:00
Ralf Becker
582793d52b
Revert "Bring web-component work into master branch"
...
To many things are not working :(
- addressbook, infolog, even timesheet index lacks at least r/o textbox and problably other widgets
- smallPART (with many extra widgets) is completly unusable
- *box widget seems not to skip empty boxes
--> we need more testing and progress, before we can merge that
This reverts commit 9cee681b94
.
2021-09-03 11:28:22 +02:00
Ralf Becker
a566599b7f
* PostgreSQL/Addressbook/All Apps: fix SQL error in history tab if there are attachments
2021-09-03 09:48:47 +02:00
nathan
9cee681b94
Bring web-component work into master branch
2021-09-02 10:52:10 -06:00
Ralf Becker
e500190728
* Addressbook/PostgreSQL: fix SQL error deleting a contact finally
2021-09-01 09:33:54 +02:00
Ralf Becker
c830bdd923
allow pushing to multiple users in one request
2021-08-31 17:42:28 +02:00
Ralf Becker
6baf07090e
implement some missing features from old eTemplate:
...
- evaluate class set on a grid cell as done for the widget contained (probably more a bug-fix then a feature)
- allow to preset query for link-entry widget by passing an object with a query attribute
- allow to overwrite not only $readonlys[__ALL__] but also widget readonly attribute with a $readonlys value of false
2021-08-19 10:46:34 +02:00
nathan
9231b32fce
Vfs: Fix Stylite/Links/StreamWrapper was not respecting backup parameter
2021-08-18 15:59:54 -06:00
Ralf Becker
61cdef588a
need to catch the statement in line 1347
2021-08-18 10:48:24 +02:00
Ralf Becker
1462fb517a
* PostgreSQL: fix SQL error when accessing eg. InfoLog
...
Links class trys to delete empty attachment directories and virtual / empty attachment directories have non-integer (hash) id causing an SQL error in PostgreSQL.
2021-08-18 09:18:21 +02:00
Ralf Becker
94c98718ef
update script to remove hashes/non-email-addresses from egw_history_log.share_email
2021-08-17 09:15:25 +02:00
nathan
bea880d9b1
* Api: Fix changes in history log had a hash instead of user if the change was made after a share was opened.
2021-08-16 13:07:17 -06:00
Hadi Nategh
2515d457d5
* Knowledge Base: fix pasting/dragging image into htmlarea editor does not work
2021-08-16 11:52:26 +02:00
Hadi Nategh
d07a7ab194
WIP of replacing bower-asset packages:
...
- Get jquery-ui and touch event plugin working (although still modular import is not possible becuase of a wierd issue with jquery-ui tooltip plugin)
- Import timepicker-addon plugin as npm package
- Update composer.lock file
2021-08-12 14:51:38 +02:00
nathan
6c0aed651f
Api: Add some extra parameters to Merge::merge_entries() so overridding classes can still use the parent method, passing in IDs & merge object
2021-08-09 13:44:43 -06:00
Ralf Becker
8f93a7f7c6
* Setup: support uninstalling automatic installed apps (no more reinstalling next update)
2021-08-03 18:53:05 +02:00
Ralf Becker
93068dcfcc
need to call Vfs\StreamWrapper::init_static() after setting Vfs::$user
...
Vfs::$user should be protected and moved to Vfs\Base plus a getter and setter method added for public access,
as after setting it in 21.1+, Api\Vfs\StreamWrapper::init_static() need to be called to set the default user context!
2021-07-22 09:08:49 +02:00
nathan
b95f9e7220
Reset after every job
2021-07-20 14:23:21 -06:00
Ralf Becker
df4137baee
* Filemanager/VFS: when creating a new file as root eg. via (docker exec) filemanager/cli.php do NOT create files unreadable by webserver
2021-07-20 09:34:59 +02:00
Ralf Becker
cc27253b7b
keep original REQUEST_URI in ORIG_REQUEST_URI when modifying it
2021-07-19 14:15:16 +02:00
Ralf Becker
2f155e0d79
fix popups of apps without app.ts/js wont work as eT2 is not available
...
it get's included by the app.ts/js otherwise
2021-07-13 21:02:08 +02:00
Ralf Becker
6502eaeab8
got symlinks working for filesystem streamwrapper and fix one bug in Vfs with symlinks
2021-07-13 13:59:05 +02:00
nathan
da1e7b9fee
Implement symlink for filesystem StreamWrapper with test
...
Whether it works or not depends on filesystem though.
2021-07-09 09:47:23 -06:00
Ralf Becker
d57fe03326
use same method (prefer .min.js over .js) for app.js include in Etemplate and Framework
...
fixes double include of /mail/js/app.js and /mail/js/app.min.js
2021-07-08 16:58:05 +02:00
nathan
2e597997e0
Fix wrong permission constant used, resulting in permissions when there shouldn't be
2021-07-07 14:42:10 -06:00
Ralf Becker
a8ae92e1cc
add cache-buster to framework bundle
2021-07-07 16:51:31 +02:00
Ralf Becker
90f1d9ea37
always show deleted filter and set deleted status in calendar
...
see #29778
2021-07-07 11:21:45 +02:00
nathan
da3f8d8135
Fix symlink directory problem from 2a64e79
and add a unit test to avoid that in the future
2021-07-06 16:44:53 -06:00
nathangray
b021767ac1
Make sure nested document actions open in new tab, same as others.
2021-07-05 09:46:00 -06:00
Ralf Becker
1423616e00
remove some dead code and spelling fixes
2021-07-04 08:52:43 +02:00
nathangray
34d601b102
Api: Fix missed change in nested document actions
...
see 186e03671a
2021-07-02 12:04:38 -06:00
nathangray
2a64e79e65
Api: Fix bug where StreamWrappers that mapped onto other StreamWrappers would be parsed earlier than we want, leading to the first StreamWrapper not getting used.
2021-07-02 12:11:54 +02:00
Ralf Becker
b88716c8b6
legacy load jQueryUI as tooltip has wired context problems if loaded as module
2021-07-02 08:52:18 +02:00
Ralf Becker
68155251fa
fixing a couple of jQuery plugin includes
...
thought jQueryUI-tooltip is still broken and we either need to legacy-load jQuery(UI) or fix the tooltip
2021-07-01 16:33:15 +02:00
Ralf Becker
8c7722c8b0
1. loading dhmtlx(tree|menu) again via script tag
...
2. fixed not loaded app.js in egw_json by using import direct and not includeJS (and therefore removed additional include in et2_load)
3. adding cache-buster for egw.js and app.js endpoints to force reloads (not adding them for anything else, as it interferes with rollup
2021-07-01 14:36:51 +02:00
Hadi Nategh
83e782330d
Try to take only quoted_printable to decode and avoid decoding url params as quoted
2021-07-01 10:26:22 +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
3add958afa
The results of Guy Bedford's help
...
Egroupware will load into addressbook & show rows
Most base files should be bundled server-side & included
rollup.config.js controls the process
Still needs work:
- consider /dist directory for best-practice
- cleanup
- other built-in apps
- EPL / external apps need Guy's multi-stage work
2021-06-25 14:49:24 -06:00
nathangray
186e03671a
Change merge download/Collabora to a common generation method, avoiding need to POST.
...
This allows Kanban to download merge files
2021-06-23 11:20:09 -06:00
Hadi Nategh
a4f21bc804
Fix 404 errors caused by none existing html editor icons
2021-06-15 12:11:43 +02:00
Ralf Becker
e7a3c031b2
fix class Api\Mail\Config not found
2021-06-15 10:51:48 +02:00
Ralf Becker
cb00de85ce
* Mail/Dovecot: allow to disable caching of flags in site config to support Dovecot private seen flags on shared folders
2021-06-15 10:23:11 +02:00
Hadi Nategh
b4c4606c22
Move all egw_action constants into egw_action_constants
2021-06-14 13:45:57 +02:00
Ralf Becker
ee508c50b9
filter out legacy JS code from importmap and sort it
...
also only add extension-less includes for .ts files (was accidentally commented out) and fix some .js imports without extension
2021-06-12 11:44:28 +02:00
nathangray
d6c6e14abf
* Api: Prevent invalid customfield names
...
(cherry picked from commit ae86eb7812
)
2021-06-11 13:18:03 -06:00
nathangray
6ef766edf0
Etemplate: Better error message for parse errors in xml strings (not files)
...
This happens in things like Transformer, where we generate some XML for parsing
(cherry picked from commit 7cf7c5a638
)
2021-06-11 13:17:55 -06:00
nathangray
a024baeef6
* Api: Clear initial load URL after using it, so F5 takes you to the app's normal entry point
...
(cherry picked from commit 9219536c2f
)
2021-06-11 13:17:44 -06:00
Ralf Becker
5298336886
include jquery and other legacy js files via script tag
2021-06-10 11:38:54 +02:00
Ralf Becker
40cac6f964
generate a non-request specific importmap, as we ajax_exec apps and then not reload importmap
2021-06-09 19:00:53 +02:00
Ralf Becker
304dbb95ab
got empty nextmatch in timesheet working
2021-06-08 14:11:59 +02:00
Ralf Becker
f91bca83e1
got et2 mostly working: timesheet.edit renders
2021-06-07 17:33:53 +02:00
Ralf Becker
592b7fb97d
replace LAB.js with native es5 loading
2021-06-05 20:39:39 +02:00
nathangray
f4bcda7aaf
Api: Fix Asyncservice did not have proper filesystem access as the job user
2021-06-04 13:58:59 -06:00
Hadi Nategh
ab3ee4ffbb
Clear xml errors in buffer after using xml in Mail otherwise it may get caught wrongly further in etemplate widget
2021-06-04 11:19:11 +02:00
Ralf Becker
67a6a9f1f3
implement (increment|decrement)Cache to avoid race-conditions if multiple processes update a value
...
implemented in memcached and APCu backends, default implementation using get&set in base-class
2021-05-27 12:29:51 +02:00
Ralf Becker
3248e82d65
* Setup: skip files backup on update even if configured
...
It might takes the server down for hours and updates usually dont affect the files
2021-05-27 08:49:20 +02:00
Ralf Becker
c4bcae0598
store some lock-data, so only a single callback calculate data on cache-miss
...
done to avoid race-conditions where many processes try to fetch and therefore calculate some expensive to calculate data
eg. mass-mailings in our hosting
2021-05-26 11:38:36 +02:00
Ralf Becker
547f28fe3d
report and log enabling push (and other IMAP errors)
...
don't switch regular reload handling off in that case
2021-05-25 17:47:25 +02:00
Ralf Becker
03469add3e
* SmallPART: concatenate and minify all Java/TypeScript files to speed up loading
2021-05-25 08:21:17 +02:00
Ralf Becker
39ad3a7977
port csv-export from old eTemplate nextmatch to separate Api\Etemplate\Export class to not have to rely on old eTemplate
2021-05-23 08:58:47 +02:00
nathangray
5fbdd1376a
Fix PHP warnings for PHP 8 compatability
2021-05-21 10:43:52 -06:00
nathangray
34ec8e6cb3
Api: Fix accounts list (Sql) would be empty after refresh if there were less than 50 accounts
...
- Fix some accounts backend were not returning results indexed by account ID
2021-05-21 09:16:25 -06:00
Ralf Becker
f113d9d880
fix PHP Warning on login page
2021-05-21 09:51:48 +02:00
nathangray
2c14226ee5
Api: Respect do_symlink flag to keep links as links
...
Fixes troubles with syncing
2021-05-20 11:54:06 -06:00
Ralf Becker
8ec590a068
fix some real typos
2021-05-19 18:29:03 +02:00
Ralf Becker
bd95db7609
* AD: fix account-selection type "groupmembers" caused high load on AD
...
also caching groups now on instance level instead of session
2021-05-19 18:26:55 +02:00
Ralf Becker
166718a22c
remove config allowing to immediately delete contacts (as it's required for sync)
2021-05-18 14:02:51 +02:00
Hadi Nategh
b9eecb9771
Fix some icons in login apps bar
2021-05-18 09:49:02 +02:00
Ralf Becker
aea7a5c0f2
* ADS/LDAP: improve caching of searching/listing
2021-05-16 20:42:47 +02:00
Ralf Becker
53c20ed5f7
allow to pass JSON serialized date-array with date&timezone to constructor
2021-05-14 20:24:14 +02:00
nathangray
08800b83c9
Fix symlinks were opened read-only in Collabora
2021-05-14 09:43:30 -06:00