Commit Graph

2078 Commits

Author SHA1 Message Date
Ralf Becker
68a79dce6a fix PHP 8.0 TypeError: Unsupported operand types 2021-11-23 18:07:49 +01:00
Ralf Becker
4bf375c970 fix PHP 8.0 TypeError: Illegal offset type 2021-11-23 17:44:46 +01:00
Ralf Becker
ce76fa5d7f fix PHP 8.0 TypeError: Unsupported operand types: string & int 2021-11-23 17:23:49 +01:00
Ralf Becker
47b3f5c239 fix PHP 8.0 TypeError: array_keys(): Argument #1 ($array) must be of type array, null given 2021-11-19 13:00:51 +01:00
nathan
b91e1d8a5f Merge branch 'master' into web-components 2021-11-18 10:28:30 -07:00
Ralf Becker
1f50b3b0c5 fix PHP 8.0 ArgumentCountError: readlink() expects exactly 1 argument, 2 given 2021-11-17 20:24:19 +01:00
nathan
bc18846d75 Improve logging message to include values instead of 'Array' 2021-11-17 08:49:32 -07:00
Ralf Becker
bbc7fb93de fix PHP 8.0 TypeError: in_array(): Argument #2 ($haystack) must be of type array, null given 2021-11-16 18:20:35 +01:00
Ralf Becker
dfb1a3be22 fix PHP 8.0 TypeError: Cannot access offset of type string on string 2021-11-15 16:01:11 +01:00
Ralf Becker
d83f04bd49 fix PHP 8.0 TypeError: Cannot access offset of type string on string 2021-11-15 15:03:51 +01:00
Ralf Becker
be1920b687 fix PHP 8.0 TypeError: array_keys(): Argument #1 ($array) must be of type array, null given 2021-11-13 17:39:33 +01:00
Ralf Becker
11e630da2a fix PHP 8.0 TypeError: fwrite(): Argument #2 ($data) must be of type string, array given 2021-11-13 17:30:57 +01:00
Ralf Becker
587a9c0a88 fix PHP 8.0 TypeError: in_array(): Argument #2 ($haystack) must be of type array, null given 2021-11-13 17:24:31 +01:00
Ralf Becker
8063b9a8ef fix PHP 8.0 TypeError: array_merge(): Argument #1 must be of type array, null given 2021-11-13 17:18:21 +01:00
Ralf Becker
e95edf60ec fix PHP 8.0 TypeError: Unsupported operand types: string + int 2021-11-13 17:05:20 +01:00
Ralf Becker
b18d1da363 fix PHP 8.0 TypeError: ZipArchive::setCommentName(): Argument #2 ($comment) must be of type string, array given 2021-11-13 17:01:43 +01:00
Ralf Becker
392a27b77c try fixing an other case where an unrelated XML error was reported
Error passing XML file '<text type="text" id="#Kunde_Firma"/>' line 12: EndTag: '</' not found
There is obviously no line 12 ;)
2021-11-11 09:49:31 +01:00
Ralf Becker
59eff1db26 quieten permanent log of search links for non-ascii project-names etc. 2021-11-11 09:10:34 +01:00
Ralf Becker
146e94160f check we have an email to send the mdn to (otherwise Horde_Mime_Mdn throws a RuntimeException) 2021-11-11 08:30:15 +01:00
Ralf Becker
c221253a82 fix PHP 8.0 TypeError: Unsupported operand types: string & int 2021-11-11 07:59:54 +01:00
nathan
ed66beaf8f Merge branch 'master' into web-components 2021-11-10 10:25:51 -07:00
Ralf Becker
577ff9dd26 fix unrelated XML errors sometimes shown parsing eTemplates 2021-11-10 13:55:48 +01:00
Ralf Becker
c1dfa685ec fix PHP 8.0 TypeError: array_merge(): Argument #2 must be of type array, null given 2021-11-10 12:47:05 +01:00
Ralf Becker
1ea91d8721 fix/catch PHP 8.0 ValueError: mb_convert_encoding(): Argument #3 ($from_encoding) contains invalid encoding "cp1250" 2021-11-10 12:43:03 +01:00
Ralf Becker
03835c0247 fix PHP 8.0 TypeError: strpos(): Argument #1 ($haystack) must be of type string, array given 2021-11-10 12:14:58 +01:00
nathan
a717234b2f Merge branch 'master' into web-components 2021-11-09 15:02:25 -07:00
nathan
2ce96a6f8d Maybe fix SQL error from searching contacts with private + duplicates 2021-11-09 14:33:37 -07:00
Ralf Becker
867726f5c9 * LDAP/Addressbook: fix region contains for given country invalid value gives an LDAP error on update
cause by trying to write NULL, which is not allowed, unsetting the attribute the proper way now
2021-11-09 11:06:43 +01:00
Hadi Nategh
968774d829 Update jQuery-ui to 1.13.0 2021-11-09 11:06:17 +01:00
Ralf Becker
7020030c17 fix PHP 8.0 problem "new" > 0 causing mail accounts created via admin for an other user to fail 2021-11-09 08:02:49 +01:00
nathan
f4ad6c6dbc Merge branch 'master' into web-components 2021-11-08 09:23:48 -07:00
Ralf Becker
74cc2f03ff fix PHP 8.0 TypeError: Api\Accounts::username(): Argument #1 ($account_id) must be of type ?int, string given
new method for account link-title not throwing an error, for non-numeric arguments and therefore stalling all titles
2021-11-08 12:22:41 +01:00
Ralf Becker
02270f63fb fix PHP 8.0 TypeError: Exception::__construct(): Argument #2 ($code) must be of type int, string given 2021-11-08 11:36:25 +01:00
nathan
e03b8bbdc9 Merge branch 'master' into web-components 2021-11-05 11:08:31 -06:00
Ralf Becker
2f1559a490 fix PHP 8.0 TypeError: count(): Argument #1 ($value) must be of type Countable|array, null given 2021-11-05 15:18:57 +01:00
Ralf Becker
9fbd07e335 fix PHP 8.0 TypeError: Unsupported operand types: null + array 2021-11-05 14:49:56 +01:00
Ralf Becker
de7f4329ff fix PHP 8.0 TypeError: uasort(): Argument #1 ($array) must be of type array, null given 2021-11-05 14:37:21 +01:00
Ralf Becker
57ac760a78 fix PHP 8.0 ValueError: stripos(): Argument #3 ($offset) must be contained in argument #1 ($haystack) 2021-11-05 11:38:49 +01:00
Ralf Becker
4db49da7e5 fix PHP 8.0 error: trim expects string, array given
removed trim
2021-11-05 09:08:17 +01:00
Hadi Nategh
201d1f9972 Fix PHP8.0 error (TypeError): strlen(): Argument #1 ($string) must be of type string, array given 2021-11-04 17:23:45 +01:00
nathan
b7daf84d90 Merge branch 'master' into web-components 2021-11-04 09:24:37 -06:00
Hadi Nategh
62fcc3156c Fix PHP8.0 (TypeError): explode(): Argument #2 ($string) must be of type string, array given 2021-11-04 14:30:23 +01:00
Hadi Nategh
1f28336702 Fix stripos(): Argument #3 ($offset) must be contained in argument #1 ($haystack) by preventing empty html value being processed 2021-11-04 14:12:21 +01:00
nathan
672ed0aa0e - DateTime widget to handle dates with times
- Time & Date+time parser & formatter functions
- Date widget does not return a time
2021-11-03 09:05:16 -06:00
Ralf Becker
d04b98e64c * Filemanager: fix not working variables eg. $user in GUI mount (Admin > Filemanager)
also support no user/password for sharing links
2021-11-03 14:54:22 +01:00
nathan
76d7447dab Merge branch 'master' into web-components 2021-11-01 09:37:26 -06:00
nathan
be6146661d Api: Fix check of disabled attribute was misbehaving if the value was null or 0
This showed up when validating tracker config, some rows were disabled with disabled="@tracker".  When tracker=0, they did not return their value.
2021-10-28 14:02:13 -06:00
Ralf Becker
c15cb2de41 add $depth parameter to Vfs::checkLock($url, int $depth=0) and use it to query all locks in one go for filemanager_ui::get_rows() 2021-10-28 21:08:31 +02:00
nathan
a794adfcf2 API: Make sure memberships is an array to avoid other errors (PHP 8.0) 2021-10-27 13:38:05 -06:00
Ralf Becker
09cb38541b fix regression reported by @asig2016 after big warning fix 2021-10-23 09:55:20 +02:00
nathan
e3526d2bef Api: Fix "Unsupported operand types: array + bool" when infolog linked contact could not be read 2021-10-22 09:39:24 -06:00
nathan
4e54c2b5a3 Api: Fix merge action files in subdirectories had their path as part of action caption instead of just the file name 2021-10-21 09:51:05 -06:00
Ralf Becker
b1af39be37 fix big chunk of PHP 8.0 warnings 2021-10-21 10:39:57 +02:00
nathan
82423d60bb Api: Fix cf sub-entry placeholder expansion was not passing content for placeholders like {{#customer/n_fn}} 2021-10-20 14:08:43 -06:00
Ralf Becker
f6d756a0c1 closing/commiting the session to speed up calendar loading 2021-10-20 13:53:41 +02:00
nathan
7a7f80f7d9 Api: Fix replacements from sub-apps (eg: infolog contact) were missing 2021-10-19 09:17:22 -06:00
nathan
fbbc466c78 Merge branch 'master' into web-components 2021-10-18 10:56:05 -06:00
Hadi Nategh
0dd215d340 * Mail: Add set flags action into mail filters 2021-10-15 17:23:48 +02:00
nathan
33fcb4e657 Infolog: Avoid errors adding app replacements if incorrect parameters given 2021-10-15 09:09:53 -06:00
Hadi Nategh
75d119f31f * Mail: Implements date extension for vacation rule. None imap admin user can also set vacation rule by date. 2021-10-15 14:29:19 +02:00
nathan
93108177ce Remove unwanted use 2021-10-14 13:34:54 -06:00
nathan
aefeade501 Placeholder / merge translations 2021-10-14 09:05:12 -06:00
Hadi Nategh
524edf21d7 PHP8: fix lots of warnings 2021-10-14 14:14:58 +02:00
Hadi Nategh
e76ae2db32 Remove none existing mail connectionTimeout preference. Fixes warning of Undefined array key 'connectionTimeout'. 2021-10-14 11:34:56 +02:00
Ralf Becker
69782e833e fix PHP 8.0 error forwarding mail as attachment (calling count on null) 2021-10-14 09:39:01 +02:00
Ralf Becker
fe5a0b8567 fix PHP 8.0 error when converting an InfoLog into a ticket
Cannot access offset of type string on string
Also add line and file to our non-json exception handler, for easier identifying the problems
2021-10-14 08:05:22 +02:00
nathan
98ed7edda4 Fix incorrect default preference for merged document filenamer 2021-10-13 15:47:01 -06:00
nathan
965e100082 Fix expansion broken in ddddc5ba05
Caused export field checkboxes in new definition to not keep their value
2021-10-13 15:08:16 -06:00
nathan
918d91eb9b Fix ReflectionParameter::isArray() was deprecated as of PHP 8.0.0 2021-10-13 10:52:56 -06:00
nathan
047b86f38b Placeholders list common UI: different recursion check for better results
This one still puts simple customfields in, but just skips the linked apps cfs
2021-10-13 08:39:23 -06:00
nathan
7dba4b9284 Placeholders - avoid infinite recursion if apps have custom fields of other apps 2021-10-12 15:44:48 -06: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
Hadi Nategh
309e020324 Fix error "Non-static method Merge::get_all_ids() cannot be called statically" 2021-10-12 12:54:56 +02:00
Ralf Becker
7248b6649b fix a bunch of PHP Warnings 2021-10-12 11:51:28 +02:00
Ralf Becker
044aae3cf8 fix PHP 8.0 error: Undefined constant "EGroupware\Api\Contacts\cat_id" 2021-10-11 18:40:21 +02:00
Ralf Becker
f29a2b5ea8 fix PHP Warning: Illegal string offset 'tmp_name' 2021-10-11 14:02:46 +02:00
Ralf Becker
59794cc3a4 output line and file of exception as trace not always contain it 2021-10-09 08:43:32 +02:00
Ralf Becker
a04cbc0ab4 an other chunk of PHP 8.0 Warnings fixed 2021-10-08 15:43:48 +02:00
Hadi Nategh
f62ff90444 Accept mail externalImages with long url 2021-10-08 14:30:04 +02:00
Ralf Becker
cb991f1243 fix Api\Accounts::username(): Argument #1 ($account_id) must be of type ?int, string given 2021-10-08 14:10:45 +02:00
Ralf Becker
fac81f660d fix PHP 8.0 errors around ACL dialog and policy:
- bitwise AND operator gives TypeError if both values are neither a number nor a numeric string, eg: null, "run"
- Etemplate::setElementAttribute() must NOT be called before instantiating an Etemplate object, you will get fatal error otherwise, because no request object
2021-10-08 09:05:58 +02:00
nathan
d43c27a31b Fix nested placeholders (customfields from other apps) were not being displayed properly 2021-10-07 14:51:16 -06:00
nathan
c73a7beac8 Add placeholder list for calendar & filemanager 2021-10-07 13:47:14 -06:00
Ralf Becker
417bbccbe3 fix PHP 8.0 Fatal error: Declaration of Api\Etemplate\Request\Session::read($id = null) must be compatible with Api\Etemplate\Request::read($id = null, $handle_not_found = true) 2021-10-07 18:39:40 +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
40af04e38e Fix broken Merge::get_app_class(), we need it to autoload the class 2021-10-07 09:31:43 -06:00
Ralf Becker
460d8cbe0d fix not working preferences GUI after ddddc5ba05 2021-10-07 17:28:06 +02:00
Ralf Becker
a8d14ffa0a fix TypeError: Argument 1 passed to EGroupware\Api\Accounts::username() must be of the type int, null given 2021-10-07 16:53:33 +02:00
Ralf Becker
d915b25bba fix PHP 8.0 error Illegal string offset
folder object need to be cast to string (folder name) as objects are not allowed as array keys
2021-10-07 12:37:10 +02:00
Ralf Becker
b1780a35bc fix Api\Storage\Merge::document_editable_action(): Argument #1 ($action) must be of type array, null given 2021-10-07 12:17:33 +02:00
Ralf Becker
e4f95d9c20 fix missing icons after previous commit 2021-10-07 11:57:20 +02:00
Ralf Becker
d00d6f65f0 fix PHP 8.0 error when deleting a Kanban card
- link deletion failed when link_id was "" as in PHP 8.0 "" < 0 --> gave the error
- link to card was never deleted as board_id is not stored in card
2021-10-07 10:44:23 +02:00
Ralf Becker
91bd7c7aeb an other chunk of fixed PHP 8.0 Warnings 2021-10-07 10:14:43 +02:00
nathan
02dce82010 Merge branch 'master' into web-components 2021-10-06 14:02:22 -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
cb8cac15dc fix mail account creation under PHP 8.0
PHP 8.0: "new" > 0 === true
PHP<8.0: "new" > 0 === false
2021-10-06 12:31:23 +02:00
Hadi Nategh
d3fd2aa76a PHP8: fix error Illegal offset typePHP, happens while moving mail from one account to another 2021-10-06 11:38:54 +02:00
Hadi Nategh
ffeb929b49 Fix wrong condition on checking url strlen 2021-10-06 11:09:32 +02:00
nathan
a0a89a6b74 Placeholder dialog: Add placeholders for projectmanager, timesheet, tracker 2021-10-05 16:09:39 -06:00
Ralf Becker
b37e7ff57a quieten permanent error_log 2021-10-05 14:20:29 +02:00
Ralf Becker
ddddc5ba05 next big chunk of fixed PHP 8.0 Warnings 2021-10-05 14:11:11 +02:00
Ralf Becker
357fefaad0 fixing some conditions in the previous commit stalling InfoLog list 2021-10-05 11:14:40 +02:00
nathan
6126bc2ac9 Placeholder dialog: Placeholder groups can now have groups
References (info_contact)/ customfields to other apps are expanded so all their placeholders are available as well
2021-10-04 14:45:57 -06:00
Ralf Becker
1747a2236a fixing a ton of PHP Warnings slowing us down in PHP 8.0 2021-10-04 18:50:51 +02:00
Ralf Becker
ac7faf6036 fix PHP 8.0 error: count(): Argument #1 ($value) must be of type Countable|array, string given 2021-10-04 13:02:34 +02:00
Ralf Becker
1cd5755ae4 fix PHP 8.0 Warning: Argument #2 of array_merge must be of type array, boolean given 2021-10-04 11:01:32 +02:00
Ralf Becker
782c284d37 improve parsing if only a fullName is given to support the following:
- Becker, Ralf --> surname: Becker, personal: Ralf
- Ralf Becker  --> surname: Becker, personal: Ralf
- Becker --> surname: Becker
2021-10-04 10:41:22 +02:00
Ralf Becker
c647ddab60 improving parsing of country data:
- if we got a country-name but no -code, look up the code
- if we got a country-name like "Name (Name2)" try both separate first
- if we have a valid country-code set the -name to be the untranslated one as our UI does
2021-10-04 09:46:17 +02:00
Ralf Becker
9ca8b07de9 fix parsing with no street data and of custom fields 2021-10-03 18:45:34 +02:00
nathan
117b193a63 Add some missing general placeholders 2021-10-01 13:37:17 -06:00
nathan
96bdcd7c0e Fix some placeholder dialog bugs:
- Fix user placeholder does not use selected entry, so looks like a bug.  Now hiding entry for user placeholders.
- Fix user & general showed up in entry app selectbox
- Fix insert address dialog was not passing selected entry
2021-10-01 13:35:27 -06:00
Ralf Becker
2d2b16a2f6 if no separate name-components given, simply split first word off as n_given and rest as n_family 2021-10-01 18:27:36 +02:00
nathan
71ef7ccd0d Fix some merge action bugs:
- default document wasn't working properly, missing caption
- Email documents were giving "Unable to generate merge file"
2021-10-01 10:06:29 -06:00
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
25773a929f Merge remote-tracking branch 'origin/master' into web-components 2021-09-23 10:22:18 -06: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
nathan
373cf6590d Merge remote-tracking branch 'origin/master' into web-components 2021-09-13 14:56:08 -06: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
ef1239b017 fix URL if custom template from VFS is used 2021-09-03 11:02:06 +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
nathan
b52000ceb7 Merge branch 'master' into web-components 2021-09-02 10:38:34 -06:00
Ralf Becker
86c92dcdf6 allow pushing to multiple users in one request 2021-09-02 09:39:43 -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
nathan
538e483499 Merge branch 'master' into web-components 2021-08-23 15:41:27 -06:00
nathan
e34ca22499 Split textarea off from textbox & start implementing
Splitting the two made things a lot simpler to deal with
2021-08-20 15:52:22 -06: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
Ralf Becker
d060d98fad modify eTemplates server-side to add et2- prefix for widgets converted to web-components
- uses a regular expression to identify the widgets already converted (using XML parsing is slower and more complicated)
- replaces automatic old <menulist...><menupopup type="select-*"/></menulist> with <select type="select-*" .../> to not build support for that into web-component code
- currently only box and button are converted, as converting v/hbox gives a JavaScript error with nextmatch headers (seems a problem with the children)
- caching is currently also disabled, as you would need to clear the filesystem-cache, when you modify the list of supported widgets (browser cache needs to be cleared!)
2021-08-15 14:59:23 +02:00
nathan
4f225054f8 WIP on Date widget
Something's not right with the parser/formatter, they're not getting called.

Times not handled yet
2021-08-13 15:26:18 -06:00
nathan
fac1dfb8d4 Merge branch 'master' into web-components 2021-08-12 10:35:46 -06: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
nathan
5fee9fcafe Make et2-textbox as a WebComponent
Not all attributes are handled yet, but value cycle is working
2021-07-22 14:54:10 -06: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
nathan
ad00156113 Merge branch 'master' into web-components 2021-07-19 14:15:52 -06:00
Ralf Becker
cc27253b7b keep original REQUEST_URI in ORIG_REQUEST_URI when modifying it 2021-07-19 14:15:16 +02:00
nathan
723ec70009 Get button to validate server-side 2021-07-15 10:12:47 -06: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
nathangray
45e477f0c0 * Api: Sidebox accessibility improvements
- Using nav elements for sidebox categories
- Add keyboard support for expand/collapse menu categories
- Use lists for entries
- Added some roles for screenreaders
2021-05-12 13:14:03 -06:00
Hadi Nategh
89e67616de WIP login Ui:
- Re-arrange registration links
- Fix bg colors
- Fix social icons padding
2021-05-12 12:37:35 +02:00
Ralf Becker
b3f1738f05 fix typo causing number of failed attempts on IP whitelist not to be used 2021-05-11 11:20:25 +02:00
Hadi Nategh
20c464a161 WIP login Ui:
- Get login messages the same style as egw messages
- Arrange logo and social icons
2021-05-10 16:35:05 +02:00
Hadi Nategh
d69b16f881 Add extra icons for login apps content 2021-05-07 12:15:20 +02:00
nathangray
3ada84be0f Tracker: Fix notification dates could be in wrong timezone 2021-05-05 11:57:21 -06:00
Ralf Becker
9bc7583711 * AD/Login: fix login always reports "account is expired", if account-selection "group-members" is set for AD 2021-05-05 15:45:30 +02:00
Hadi Nategh
82ab8d9092 WIP login Ui: add motion into apps list 2021-05-03 17:13:04 +02:00
Hadi Nategh
635ca0a89d WIP login ui:
- Move login.json file into pixelegg
- Include icons into json file
2021-05-03 13:21:01 +02:00
Hadi Nategh
1d843eabcd WIP login Ui:
- Arrange apps in the json file and add more details
- Open app's url in a new window
2021-05-03 12:03:28 +02:00
nathangray
84e03fe334 Addressbook: Fix contact categories were cleared when DAVx5 synced some Android clients 2021-04-30 09:26:00 -06:00
Hadi Nategh
41ab849ecc WIP login Ui
- Implements apps tooltip
2021-04-30 14:58:41 +02:00
Hadi Nategh
faadfbdc23 Fix loading login json file 2021-04-29 18:22:38 +02:00
Hadi Nategh
39eef44217 WIP login page Ui 2021-04-29 15:24:25 +02:00
Hadi Nategh
59dbd27719 Fix mail integration fails for mails with having not encoded ampersands on their html content 2021-04-27 17:41:34 +02:00
Hadi Nategh
a49ac9648e Implement throbber for mobile framework 2021-04-22 16:00:52 +02:00
Ralf Becker
df5cce7a74 * SAML/Shibboleth: fix metadata-URL to container eduPersonUniqueId or a custom OID, if specified 2021-04-20 17:34:20 +02:00
Ralf Becker
8df0ba3d70 fixes required for EPL firewall 2021-04-20 15:51:36 +02:00
nathangray
f89c8cfb03 Add hrules to sidebox menus 2021-04-19 16:02:41 -06:00
nathangray
df8251603f Add missing parameter type 2021-04-19 16:01:17 -06:00
nathangray
35fd51da86 Add table name in when parsing search
Also, some code quality fixes
2021-04-19 14:34:53 -06:00
nathangray
51f9177634 Try harder for nextmatch template name so it can be passed to hooks. If it can't be found in value, look in original attributes. 2021-04-19 10:42:48 -06:00
Hadi Nategh
fb83d97150 Implement loading aware framework animation 2021-04-19 10:17:47 +02:00
Ralf Becker
fb30713cbb fix not working load_via parameter 2021-04-18 21:07:38 +02:00