Commit Graph

4581 Commits

Author SHA1 Message Date
nathan
ff6d0ef785 Fix handling of modified widget type.
It wasn't working if a Transform changed the widget type to a webcomponent
2022-07-08 09:24:03 -06:00
ralf
a80d810926 fix broken setting of CSP via hook since commit a304f34e6b
(fix PHP Error: [] operator not supported for strings)
2022-07-08 14:15:30 +02:00
ralf
d85b2b4cf2 fix type et2-nextmatch-header-account(filter) 2022-07-08 10:38:06 +02:00
ralf
c9b61be8d2 fix PHP Deprecated warning: Automatic conversion of false to array is deprecated 2022-07-08 10:10:17 +02:00
nathan
ed16ce52a2 Change nextmatch headers to use web components 2022-07-07 13:18:42 -06:00
nathan
19a45164f9 Change static cat select options to always use promise 2022-07-07 10:49:28 -06:00
nathan
dc8809ef87 Et2Select + Search: Always need to bind our own change handler to catch & cancel search textbox changes or they bubble 2022-07-07 10:47:14 -06:00
nathan
4936c0e043 Et2SelectCategory: keep options sent from server
For example, addressbook index does this.
2022-07-07 10:06:41 -06:00
nathan
e3b095dae7 Fix link app did not start with preferred app, implement placeholder 2022-07-07 09:54:18 -06:00
Hadi Nategh
7a4193073b Make sure we don't reevaluate the value when there's already a value set (eg. given object of options with value attribute set) 2022-07-07 11:54:24 +02:00
ralf
aab768d87f WIP implement VLV search for LDAP too and also filtering by >=modifyTimestamp used for account-import 2022-07-07 07:57:33 +02:00
ralf
c151f7786f fix not always working instantiation for contacts and accounts objects differing from global configured repository 2022-07-06 21:27:44 +02:00
nathan
46b172c88e Et2Select: In some cases the change event from the search input was triggering an extra widget change event 2022-07-06 11:22:10 -06:00
ralf
6fb464d90b * ActiveDirectory/LDAP: implemented deleting of accounts via full/initial import, periodic import does NOT delete 2022-07-06 17:08:44 +02:00
ralf
489eb615ac fix validation in et2-select had problems with value being an array
eg. mail.compose always displayed "Invalid email"
running validator now for each array element or "" for an empty array
2022-07-06 10:33:06 +02:00
nathan
6c8e85311f Change nextmatch column selection to use webcomponents 2022-07-05 15:26:10 -06:00
nathan
761b0ee6cc Fix for double-submit caused by change handler bound twice 2022-07-05 13:15:32 -06:00
nathan
5dc1c74167 SearchMixin: Actually pass search options 2022-07-05 10:16:05 -06:00
nathan
c8ccf78550 Accept search & search options from SearchMixin
We want it in the signature, even if we don't use it right now.
2022-07-05 10:13:06 -06:00
ralf
c616f1c6b5 fix some typos and IDE warnings 2022-07-05 15:18:50 +02:00
ralf
94e74f8db4 * Mail/Dovecot: allow to use admin credentials to access mail when no session password is available, e.g. for SSO 2022-07-05 15:16:01 +02:00
ralf
a5fbb5c4ef fix 404 Not Found / wrong redirect after expired/no longer existing eT2 session 2022-07-05 08:43:53 +02:00
nathan
af33cec90d Avoid JS errors if value is not a string 2022-07-04 15:12:10 -06:00
nathan
31e476089c Et2Select: Fix missing initial value when initial value is not in select_options
Our custom setter was not being called for some reason so option cleaning was not being done.
2022-07-04 15:09:16 -06:00
ralf
3af236e609 allow disabled=false for not disabled buttons 2022-07-04 22:19:16 +02:00
ralf
9a407d8ebb fix adding/removing group-memberships were not imported as change is on the group not the user 2022-07-04 11:18:02 +02:00
ralf
2756b9b247 quote double quotes, if replacing single quotes with double quotes
attr='Some "important" text' --> attr="Some "important" text"
2022-07-01 14:39:54 +02:00
Hadi Nategh
cb2fe3f93c * Mobile view: fix broken Security & Password menu 2022-07-01 09:34:50 +02:00
nathan
36c6df9685 Remove InvokerMixin from Et2Select, we cover the functionality in other ways.
InvokerMixin still used in other widgets
2022-06-30 09:39:22 -06:00
nathan
a691b6da04 Fix missing apps in Et2LinkAppSelect 2022-06-30 09:38:50 -06:00
ralf
242e055f53 * ActiveDirectory: allow to configure an optional group-context
also fixes problems with Univention AD storing stock groups (eg. Domain Users) in a different OU=Groups than users
2022-06-30 16:44:51 +02:00
nathan
76a19e86fb Fix selectboxes didn't show server-side validation messages 2022-06-30 08:40:17 -06:00
ralf
970c22b2a2 some fixes for LDAP/ADS account import:
- fix not working "Users, groups and memberships" option
- calling add/edit account/group hooks to eg. create home-directories and mail-accounts
2022-06-30 15:17:19 +02:00
nathan
7c7b81201f Implement missing validation error for Et2Select 2022-06-29 11:49:24 -06:00
nathan
0842eb4376 Finish missing doc 2022-06-29 09:24:12 -06:00
ralf
a304f34e6b fix PHP Error: [] operator not supported for strings 2022-06-29 08:59:59 +02:00
ralf
2dd3a25b35 WIP ADS/LDAP account import:
- implement import from groups and memberships
--> ToDo: deleting of accounts and testing with LDAP
2022-06-28 22:21:08 +02:00
nathan
2cd5c861aa Favorites: Add icons to dropdown, fix icon styling in sidebox menu 2022-06-28 14:09:29 -06:00
nathan
4f4b83733c Mail: Re-size header labels in display popup, change mail date widget to date-time-today 2022-06-28 10:18:42 -06:00
ralf
2e2f6e0e70 WIP ADS/LDAP account-import:
- missing hook registration
2022-06-28 17:09:19 +02:00
ralf
e28329b1d7 WIP ADS/LDAP account-import:
- refactored to a class
- added async import and logging
--> ToDo: groups, deleting of users and testing with LDAP
2022-06-28 16:58:38 +02:00
ralf
ee58655ce6 WIP ADS/LDAP account-sync:
- using (simple) paged result for initial sync
- incremental sync uses modification time
- currently only user and no periodic sync yet
2022-06-27 21:08:34 +02:00
nathan
bb48e4ecee Select + search: don't try to open search when readonly 2022-06-24 14:27:49 -06:00
nathan
0f5cb9f9d3 Select styling improvements
- support for Shoelace's size property
- relative sizing for EmailTag's add icon height
2022-06-24 14:12:04 -06:00
nathan
9ffc7decf2 Shrink minimum size for date widget to fit-content, add label if set 2022-06-24 14:08:06 -06:00
nathan
d11be10fa1 Et2SelectEmail: Add button on hover to add a new contact with the email
(multiple)
2022-06-24 12:10:10 -06:00
nathan
9ca78de12f Et2Select: Fix empty label was not being shown for invalid values 2022-06-23 15:56:28 -06:00
ralf
8dd6dcf97c remove unnecessary adding of free entries to select_options 2022-06-23 21:28:01 +02:00
nathan
3567a75e33 Et2Widget: I figured out how to bind external listeners defined as template attributes directly on load.
Not sure we want to turn it on yet though.
2022-06-23 11:00:47 -06:00
nathan
1cc2cd5e3e Et2Select + Search: Fix change event fired while widget still had old value
The search box was firing its own change event, triggering the handler.  Now SearchMixin swallows that event preventing it from triggering.
2022-06-23 10:36:54 -06:00
ralf
f2e20eddba fix addressbook edit for new Et2SelectCountry&State:
- using allowFreeEntries for custom country-names and storing, as before, region-name not the -code
- also fix flags to show nothing for custom / free country-names
Not entirely happy about it, but not willing to spend/waste more time on this tiny feature
2022-06-23 10:06:01 +02:00
ralf
9157a37480 fix URL of flags.css include 2022-06-23 07:19:47 +02:00
nathan
9b3de5db95 Et2SelectCountry: Use CSS for flag images 2022-06-22 16:13:58 -06:00
ralf
e54fbaffb1 fix Et2LinkEntry/Et2LinkSearch still showed "??", after link_title returned the title 2022-06-22 22:37:18 +02:00
nathan
e9af38081e Move email-specific D-n-d into Et2SelectEmail class 2022-06-22 14:36:38 -06:00
nathan
29bd389c36 Don't set attributes on sub-classes - it's not needed, and interferes with taglist-account 2022-06-22 14:33:58 -06:00
nathan
874371483a Et2Select: Fix multiple + allowFreeEntries did not work together 2022-06-22 14:28:37 -06:00
nathan
5b0427fe0c Hopefully fix boolean reflected attributes not properly getting set
The previous way worked eventually, but attributes did not get immediately synced to properties
2022-06-22 14:26:27 -06:00
Hadi Nategh
6c058fffa8 Fix draggable items in toolbar get move icon by default 2022-06-22 16:49:38 +02:00
ralf
1218cce8bb fix typo "editModeEnabled" 2022-06-22 16:35:05 +02:00
ralf
2db52d939b improve automatic conversation from taglist, by setting multiple=true, allowFreeEntries=true and enableEditMode=true
fix Admin > Mail account by using et2-select-email instead of taglist, as et2-select-multiple does NOT yet support allowFreeEntries and enableEditMode
2022-06-22 16:28:34 +02:00
ralf
673e0b859c fix only_app attribute not taking into account when setting value, which is in that case just an id 2022-06-22 15:29:21 +02:00
ralf
296cffc109 run egw destructor explizit for merge-downloads to allow eg. notifications emails in shutdown handler 2022-06-22 09:57:33 +02:00
nathan
d9400430e5 Mail: Use et2-select-email for displaying addresses in preview 2022-06-21 16:34:57 -06:00
nathan
34b0dc3e35 Remove debug 2022-06-21 11:07:30 -06:00
nathan
4fe62a0322 Reset dirty after load to avoid unwanted close prompt 2022-06-21 09:22:39 -06:00
nathan
61f22d67f3 Double thickness of colored category border in Et2SelectCategory 2022-06-21 09:22:39 -06:00
Hadi Nategh
ac171a1076 Implements DND for et2-select-email tags 2022-06-21 16:21:23 +02:00
ralf
1894a19a86 fix ValueError: str_repeat(): Argument #2 ($times) must be greater than or equal to 0
Also replace HTML entities, as we're converting to text
2022-06-21 14:15:28 +02:00
nathan
5cd417ec72 Et2LinkEntry: Pass only_app & application_list properties onto internal Et2LinkAppSelect 2022-06-20 15:19:57 -06:00
nathan
261b104875 Looks like SearchMixin no longer needs special handling for change event and it was not working with onchange attribute in some cases. 2022-06-20 11:18:15 -06:00
nathan
e44ca6183a Promote select category to its own file 2022-06-20 09:35:38 -06:00
nathan
fff8048505 Remove debug 2022-06-20 09:05:06 -06:00
ralf
8228104b82 add extra parameter return_promise to StaticOptions.cached_server_side and using that for Et2SelectCountry to add flags and their css class 2022-06-20 17:01:28 +02:00
nathan
ce474a1cd1 Fix IDE reformatting of templates could cause template mangler to discard attributes that were reflowed to a new line 2022-06-20 08:56:56 -06:00
ralf
96109e0f26 Several account or contact edit fixes
- fix no groups were selected (as they have numeric values)
- fix size of country and state selection
- WIP adding flags to select-country
- WIP fixing selecting a country set country_code for state selection
2022-06-18 15:06:50 +02:00
ralf
48b82ef104 fix <select type="select-something" was wrongly converted to <et2-selectsomething 2022-06-18 12:21:05 +02:00
ralf
d3cfbbe5e6 enable taglist-thumbnail --> et2-select-thumbnail conversation
also convert select with options to et2-select and move select/taglist conversation to always run, independent of legacy=true
2022-06-17 22:54:54 +02:00
ralf
7dc591b2c9 fix TypeError this === undefined 2022-06-17 22:43:35 +02:00
nathan
fdd6f23560 Better readonly styling 2022-06-17 14:06:12 -06:00
nathan
f13bf7b154 Et2SelectThumbnail 2022-06-17 13:07:33 -06:00
nathan
cfce00f7ea Et2Select: Deal with initial value of multiple set as CSV 2022-06-17 11:41:29 -06:00
nathan
f2c57c5e75 Et2Select: Fix search icon appearing everywhere 2022-06-17 08:53:15 -06:00
nathan
d30335db01 Fix nm row category color marking 2022-06-16 14:07:02 -06:00
nathan
45bdc86203 Et2Button: Fix hideOnReadonly still showed up when readonly 2022-06-16 13:59:31 -06:00
nathan
d525918391 SearchMixin: Stick with repeat() over map(), it's slightly more efficient 2022-06-16 11:05:13 -06:00
nathan
851a054599 Select / Search bugs:
- search result would only be shown once even if next search included it
- selected values disappear when starting a new search
- loading spinner was not shown
2022-06-16 11:05:13 -06:00
nathan
6b950900ee SearchMixin: Avoid error if tag can't be found when we go to scroll to it 2022-06-16 11:05:13 -06:00
ralf
26492c4260 fix for US numbers formatted as "+1 123-456-7890" 2022-06-16 15:04:49 +02:00
nathan
260d8f523a Get category icons & colors working for select category
Also some refactoring of things to where they should be
2022-06-15 16:43:39 -06:00
nathan
2a79264674 Select / Search CSS:
- Add some spacing
- Fix disappearing images, when they were in the search results
- Pass option classes to tag
- Move tag image to its own method for overriding
2022-06-14 17:31:39 -06:00
nathan
e109b1d85b Always use avatar for user image in Et2SelectAccount tag 2022-06-14 17:29:58 -06:00
nathan
67b9102a69 Et2Select: Allow dropdown option list to be wider than the field 2022-06-14 15:14:17 -06:00
nathan
3f3e7559f1 Select / Search CSS:
- Refocus search when clearing a single value
2022-06-14 10:06:27 -06:00
nathan
5f77d0c644 Select / Search CSS:
- Limit height of tag area (3 lines), use scrollbar if we get too many
2022-06-14 09:37:21 -06:00
nathan
003f1255d7 Select / Search CSS:
- Let search input take full space for single-value search selects
2022-06-14 09:09:11 -06:00
nathan
a7874ecb63 Select / Search CSS:
- Keep tags visible while searching, adding or editing a free entry
- hide selected options from dropdown
- double-click to edit free entries
2022-06-13 17:22:35 -06:00
nathan
a26b775505 Select / Search tag CSS:
- Pill tags
- Keep tag from overflowing
- Fix remove icon cut off
2022-06-13 17:22:35 -06:00
nathan
89a73ac47d Select / Search CSS:
- Hide selected options from dropdown
- Tab & Comma (,) now end a freeEntry, was just Enter before
2022-06-13 09:58:46 -06:00
nathan
8828770c4f Select / Search CSS:
- Fix tag remove button alignment
2022-06-13 08:25:16 -06:00
ralf
980f7cb0df fix first category was always selected in calendar.edit as somehow select_options were set before multiple
removed the deduplicate select-first-option code now in favor of the one in firstUpdate
also automatic convert empty_label for et2-select multiple into a placeholder
2022-06-13 14:39:01 +02:00
ralf
669f679fbc change our CSP to allow data: for connect-src, which is used by Shoelace to "load" icons 2022-06-13 13:19:54 +02:00
ralf
b24b6b42e4 fix ReferenceError: value is not defined 2022-06-13 12:34:25 +02:00
Hadi Nategh
30da3bb923 Make toolbar dropdown menu a dropzone 2022-06-13 11:22:52 +02:00
ralf
f6471eabb1 replace single quote enclosing attribute values with double quotes 2022-06-13 09:57:24 +02:00
ralf
493455d3e0 enable Nathan's new taglist/select multiple now for all taglist, but taglist-thumbnail 2022-06-13 08:20:53 +02:00
nathan
1215626473 Select / Search CSS:
- Promote image styling from Et2LinkAppSelect to all Selects
- fix double scrollbar if there are a lot of options
- different cursor for editable tags
- align +# right to make it stand out a little more
2022-06-10 14:11:57 -06:00
nathan
a7cafb590c Et2SelectAccount: Enable searching 2022-06-10 13:56:55 -06:00
nathan
3efe81c293 Fix Et2Image was using et2_clickable class without href or onclick 2022-06-10 13:25:54 -06:00
nathan
b47d6fc702 Et2SelectAccount: Fix TypeError: Cannot set property select_options of #<Et2SelectAccount> which has only a getter 2022-06-10 10:42:37 -06:00
nathan
cf151afff8 Clean up some TypeScript type issues
Putting the constructor type fixes some complaints about our widgets not being LitElements
2022-06-10 10:25:31 -06:00
nathan
531cc473e2 Et2Select: Implement allowFreeEntries & editModeEnabled properties
Also added Et2SelectEmail, which uses them
2022-06-10 10:11:34 -06:00
ralf
d98978ddd3 fix current user in timesheet not selected (was a numeric value) and empty_label not used, if no matching option for the value 2022-06-10 13:07:27 +02:00
ralf
a3a893ae14 allow to request merged download in a different format eg. PDF 2022-06-10 10:52:26 +02:00
ralf
0105124a7d fix et2-link shows ?? for no or empty value 2022-06-09 23:05:55 +02:00
ralf
240f79efbf change link attribute only_app to et2-link attribute app and map r/o link-entry to link
also fix et2-link to not display ??, if it has no value
2022-06-09 23:02:01 +02:00
Hadi Nategh
17194f1ed3 Fix toolbar widget styling 2022-06-09 14:23:24 +02:00
ralf
597a983264 no longer load TinyMCE styles for preview and change TinyMCE margin to 10px we have in preview 2022-06-09 09:48:52 +02:00
nathan
45ccceb1c7 Fix Et2Select was losing options set in template
All JS tests now pass.  yay.
2022-06-08 14:57:26 -06:00
nathan
b7258692a4 Et2Select: Fix double change event
Caused double submit (which failed) in infolog when you changed type
2022-06-08 14:01:00 -06:00
nathan
0188e6df2d Stop TS from complaining about data children by giving better type info 2022-06-08 13:24:25 -06:00
ralf
136b6e82d0 also replace <description/> and remove unnecessary empty <description/> from infolog.index 2022-06-08 18:27:14 +02:00
Hadi Nategh
7268cde359 Set some min width for toolbar action list 2022-06-08 17:44:28 +02:00
nathan
408eda8eb3 Fix some JS tests
- Basic selectbox tests failed to set label
2022-06-07 16:55:58 -06:00
nathan
ec608e905a Fix some JS tests
- Description tests were not updated after description moved from shadowDOM to lightDOM
- Missing egw caused errors
2022-06-07 16:39:04 -06:00
ralf
412a4a50ce permanently enable all link-* widgets
(not yet dropped old et2_link_widget class)
2022-06-07 22:25:43 +02:00
ralf
be5e049a07 fix link-entry legacy-options where not translated 2022-06-07 22:16:55 +02:00
Hadi Nategh
d32d2f554b Fix drag and drop for toolbar widget 2022-06-07 17:19:05 +02:00
nathan
94d534d897 Et2Select bugs:
- multiple always had the first option selected
- removing multiple options did not trigger change event
2022-06-06 16:41:29 -06:00
nathan
796c0a33df Et2SelectCat: Add in category colors & icons 2022-06-06 16:09:08 -06:00
nathan
c631bd8b7f Et2LinkTo: Seems to be working
Fixed some bugs:
- File buttons were added twice if connectedCallback was called twice
- Clearing selected entry focuses search & hides link button
2022-06-06 14:42:43 -06:00
nathan
b58045c19f Et2LinkTo: Start of link-to
still needs to work for new entries
2022-06-06 13:31:33 -06:00
nathan
ef0a549d1c Et2Button: fix unable to clear image once set
It would always show a broken image instead.
2022-06-06 13:26:44 -06:00
ralf
6ae098db93 enable taglist and taglist-cat mapped to et2-select-* multiple=true
also adding cat_N class to categories (need there CSS adapted)
2022-06-06 18:21:31 +02:00
nathan
e9d3db9b6d Et2Select: Add missing support for options on static type options (number, percent) 2022-06-03 10:19:05 -06: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
nathan
f07aacaeaf Work on Search/LinkEntry
- Fix events were messed up after search
2022-06-02 15:45:23 -06:00
nathan
5f7b9bd5f4 Work on LinkEntry
- Show / hide app select depending on has current value
- Hide current value when searching to get more space
2022-06-02 11:52:27 -06:00
nathan
d5055b9b95 Fix Et2LinkEntry did not always show initial value
If link title was not already in cache, it might get left at ??.  It was not using passed title, and sometimes was not getting title from server fast enough.
2022-06-02 10:19:34 -06: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
nathan
23f9015331 Fix Et2Select / Et2LinkEntry clear button did nothing
Automatic select first entry was re-setting the value after clearing
2022-06-02 09:59:08 -06:00
nathan
9f4ce778cc Work on LinkEntry
- fix initial value
2022-06-02 09:16:28 -06:00
nathan
850f6effeb Work on LinkEntry
- fix title missing on load when we didn't have it client side
2022-06-02 09:14:01 -06:00
ralf
9579fc0caf fix app-selection in et2-link-entry does not set it's value from the user prefs / keep the last selected value 2022-06-02 17:06:55 +02:00
ralf
a720a7f48a remove unnecessary getValue() 2022-06-02 16:31:27 +02:00
ralf
fc227f82d0 fix TypeError, if no options are set and remove unnecessary getValue() 2022-06-02 16:29:58 +02:00
ralf
a9e180a9fb fix mixup of this.value, Lion this.modelValue and old get/set_value
causing eg. numeric values not to be cast to string and therefore not selecting their option
2022-06-02 16:12:38 +02:00
ralf
c251e2f185 remove removing of empty description and label widgets
also make sure option.value is a string, as sl-select seems to use === to calculate matches so option with value 0 is not selected by a value of '0'
2022-06-02 13:45:34 +02:00