Commit Graph

2561 Commits

Author SHA1 Message Date
nathan
735b52b38b Remove block_change_event
It doesn't seem to be needed now, and is actually stopping the first user change from firing (change alarm time in calendar edit)
2023-09-25 09:37:48 -06:00
nathan
5601897dbb Put additonal options to static select before the static options 2023-09-25 08:50:36 -06:00
hadi
8b5819094d Fix broken fullEmail feature 2023-09-25 14:35:18 +02:00
nathan
054d124afe Initial attempt at a nice dev reference.
Many thanks to all the other developers who made this possible, especially Shoelace
2023-09-22 13:51:38 -06:00
hadi
a00fdb9eb2 Clean up etemplate2 sessions before closing the top level window 2023-09-22 16:11:14 +02:00
ralf
e3138fe886 fix calendar.edit wont open, caused by new hidden attribute:
- parent can be undefined
- typo parent.getArr(a)yMgr()
- parseBoolExpression() does NOT support boolean values
- returning null gives errors later on, commented it out for now :(
2023-09-22 10:28:00 +02:00
nathan
92cf528fe8 Introduce widget.hidden to hide widgets, and widget.set_disabled() now also hides widgets. 2023-09-21 10:43:09 -06:00
nathan
0f66624047 Get some more automatic tests working again, remove JS files 2023-09-21 08:18:09 -06:00
nathan
e2d3c5f1e8 Get some automatic tests working again 2023-09-20 14:24:01 -06:00
nathan
5349c7a966 Fix selects with no emptyLabel but an option with value="" did not return a value 2023-09-20 08:20:22 -06:00
nathan
cdd13e5109 Fix doubled options with freeEntries 2023-09-19 16:04:19 -06:00
nathan
a4b0a2a1f0 Get country flags showing again 2023-09-19 15:20:36 -06:00
nathan
36f42f77db Fix quick add did not always work the second time 2023-09-19 13:53:15 -06:00
nathan
cb484c8f6c Fix some selectbox non-values causing issues 2023-09-19 13:01:49 -06:00
nathan
dc9736260a Fix textarea did not take vertical space 2023-09-19 10:08:18 -06:00
nathan
3b54165468 Fix textarea did not take vertical space 2023-09-19 10:00:08 -06:00
nathan
368c9fae63 Fix link to did not link 2023-09-19 08:46:41 -06:00
hadi
e72671bc20 Fix styling of readonly selectbox 2023-09-19 14:03:26 +02:00
nathan
f75567a863 Select improvements
- Add _styleTemplate for easier extension
- re-organize file
- Fix weird tag style
- some cleanup
2023-09-18 16:09:43 -06:00
nathan
01797f071d Fix mail attachment dropdown actions did nothing 2023-09-18 13:57:34 -06:00
nathan
19552059b3 Fix no results sometimes showed even if there were results 2023-09-15 08:09:55 -06:00
nathan
1d1b3f5947 Avoid JS error on blur 2023-09-14 14:33:16 -06:00
nathan
472ee73dda Improve styling & behaviour of Et2SelectEmail 2023-09-14 14:30:20 -06:00
nathan
01375295fe Fix widget label positioning 2023-09-14 11:56:25 -06:00
nathan
fade177f10 Fix first select option was not set 2023-09-14 11:48:30 -06:00
Milan
0f1f45a0cc WIP sl-Tree 2023-09-14 17:36:28 +02:00
Nathan Gray
e323cd1d79
Feature/shoelace 2.4 upgrade (#135)
Update shoelace to 2.9.0
2023-09-13 11:55:33 -06:00
nathan
0f77eca5c4 Api: Fix custom date & datetime fields with data format set caused a JS error
TypeError: Cannot set property format of #<Et2DateTime> which has only a getter
2023-09-13 09:08:00 -06:00
nathan
d80078893e Api: Fix customfield with no data sent breaks entire customfield tab 2023-09-08 08:41:54 -06:00
nathan
896f77f2fd Fix date & time formatting on mobile
- Date & DateTimeOnly did not show value
- timesheet view was missing start time
2023-09-05 11:21:09 -06:00
nathan
b5758a2268 Fix addressbook list type filter gave error when changing 2023-09-05 08:35:58 -06:00
nathan
e4e270da2a Api: Fix legacy onchange in nextmatch got nextmatch instead of changed widget 2023-08-30 10:30:07 -06:00
nathan
0b036f49b8 Et2Select: Fix some static option selects did not show their values when readonly 2023-08-28 13:50:09 -06:00
hadi
b34789e676 Fix properties do not get set for inherited widgets from Et2Button 2023-08-28 12:19:18 +02:00
hadi
b33f0fa8cf Fix js error happens when there's no label set on select options 2023-08-28 12:17:42 +02:00
nathan
8a1869dcdc passwordToggle - Get the attribute right for Shoelace 2.0.0
It's togglePassword in the current version
2023-08-21 11:54:24 -06:00
nathan
c8d4682672 Fix class case 2023-08-18 08:47:37 -06:00
nathan
9a53dc3ffd Fix canceled close still destroyed session 2023-08-16 10:23:58 -06:00
ralf
fdad8b3e40 fix TypeError in et2_dialog.handleClose because the Lion container was not found 2023-08-16 14:15:52 +02:00
nathan
2c5170f15b * Api: Store recoverable password (encrypted) for shares so you don't have to change it when you forget 2023-08-14 13:42:00 -06:00
milan
b9a723a16f fix use selection instead of drag/drop while pressing crt/alt
egwPreventSelect on mousedown seems to be no longer necessary in nextmatch
2023-08-09 16:56:15 +02:00
nathan
dfc30a37d1 Pass event along from deprecated et2_dialog to Et2Dialog 2023-08-04 13:07:24 -06:00
nathan
7a17dcc7cb Fix handling of email addresses with names
- read-only was leaving out quotes on name, failing validation
- Commas in name caused problems when adding in to existing values due to simplistic CSV splitting
2023-08-03 16:57:53 -06:00
nathan
1393fb6921 Et2Dialog: Fix dialog open event was fired if a selectbox opened
Fixes flickering field in Collabora insert address dialog
2023-08-03 14:39:47 -06:00
nathan
b2e1cef233 SearchMixin: If the value is changed while the search / options are open, recalculate positioning
Fixes bug where it looks like the value hasn't changed, until the dropdown closes.
2023-08-03 14:05:10 -06:00
nathan
afdca98629 Fix up password customfield
- passwd->et2-password custom field type
- passwordToggle attribute (changed name, icon didn't change)
2023-08-02 15:05:33 -06:00
nathan
b92d45c44a Api: make longTask (merge to email) more robust
Should continue in the face of network error
2023-08-02 14:08:59 -06:00
nathan
c5e4af397a Api: Fix adding links did not always work after triggering a form reload 2023-08-01 16:49:16 -06:00
nathan
63e71dc96b Etemplate: If countdown time changes, avoid multiple updates / alarms 2023-08-01 11:20:51 -06:00
nathan
583072ce9d Fix insert multiple entries into email document failed at "Please wait ... loading" 2023-08-01 09:11:09 -06:00
nathan
6b183db6e0 SearchMixin: Limit number of JSON search results 2023-07-31 10:11:04 -06:00
nathan
8335281787 Fix email tags marked as invalid 2023-07-27 13:19:43 -06:00
nathan
46795ec108 SearchMixin: Fix select option not having class causes JS error
Fixes addressbook edit popup does not resize
2023-07-27 10:04:58 -06:00
ralf
0f692fbb74 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
also fix TypeError if remote search does not return an array
2023-07-27 12:45:40 +02:00
ralf
322fefa62c Revert "Et2SelectEmail: Pass email to lavatar to get contact picture in email select option"
This reverts commit 5de789f7f7.
2023-07-27 11:08:23 +02:00
nathan
5de789f7f7 Et2SelectEmail: Pass email to lavatar to get contact picture in email select option 2023-07-26 13:39:00 -06:00
nathan
575c8fa976 SearchMixin: Move missing value check after update so select_options gets a chance to populate first
This should speed up the initialization a little, avoiding some unneeded checks
2023-07-26 08:32:00 -06:00
ralf
d071757bb9 fix TypeError: Cannot read properties of null (reading 'trim') 2023-07-26 14:20:13 +02:00
nathan
e0d284d3ae 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-25 11:15:51 -06:00
nathan
b44ea1b2b0 Api: Fix doubled link on open and missing link app select 2023-07-25 10:27:05 -06:00
ralf
a89b69528e 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:18:29 +02:00
nathan
2a5d0062dd Api: SearchMixin improvements to work with Et2LinkSearch more efficiently
Moving handling of missing options to overridable method so Et2LinkSearch can use its more efficient method
2023-07-25 09:38:11 -06:00
nathan
3aaf0b2b60 Api: More missing changes from SearchMixin.remoteQuery() / static options from json file 2023-07-25 09:14:13 -06:00
nathan
df9ec35704 Api: Fix Et2LinkSearch initialization with value failed, giving blank widget 2023-07-25 08:48:51 -06:00
ralf
a61445c0d0 fix TypeError if field.values is null causing some nextmatch features like search not to render 2023-07-25 16:39:56 +02:00
ralf
f35de819a7 adapt Et2LinkSearch.remoteQuery() to Nathans change not run cleanSelectOptions() in Et2Select.processRemoteResults() any more
@Nathan: not sure if this needs to be applied in more places, or your change should detect it needs running ...
2023-07-25 10:39:13 +02:00
nathan
edcc260b7b WIP on caching static option file and searching it client-side
Get it working in nextmatch
2023-07-24 15:13:28 -06:00
nathan
f04b25089a WIP on caching static option file and searching it client-side
Avoid type error in CalendarOwner
2023-07-24 08:51:27 -06:00
nathan
f0be2fcdca WIP on caching static option file and searching it client-side
Still needs file caching & passing correct URL
2023-07-21 16:40:29 -06:00
nathan
9d61a2ef17 Changes for opening etemplate in a dialog
- openDialog() now returns Promise<Et2Dialog>
- fixed etemplate reload
2023-07-13 16:18:11 -06:00
ralf
efaa3ae386 WIP Mail REST API: fix reported problems with calendar quick add 2023-07-13 18:44:00 +02:00
nathan
15cf0ca1ff Api: Fix et2_widget_entry sum & compare
Options property is deprecated for webComponents, and cannot be changed.
2023-07-13 10:38:58 -06:00
nathan
8dee34407e Et2Dialog: Fix buttons could not be adopted if dialog contains only arbitrary slotted content 2023-07-13 08:27:56 -06:00
ralf
865d2b3d8d WIP Mail REST API: fix closing dialog closes popup to because dialog was already removed when response was received 2023-07-13 15:36:55 +02:00
ralf
3e27def4f9 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-13 15:22:21 +02:00
nathan
e6f142c7a4 Api: Fix nm columnselection still showed disabled columns 2023-07-12 15:08:31 -06:00
nathan
50e3a1b204 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-11 17:07:51 -06:00
ralf
c63784d7e8 WIP new app.ts method dialogExec(_menuaction) opening a popup into a dialog 2023-07-11 22:45:54 +02:00
nathan
da2ab2004b Api: return a Promise from htmlarea.doLoadingFinished() so etemplate can wait for it to be initialized 2023-07-11 12:02:36 -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
nathan
0c050ad9f3 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-10 09:07:22 -06: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
186a7d46dd Handle parsing number into boolean expression 2023-07-06 08:29:30 -06:00
nathan
f4699543c3 Et2Dialog fixes
- Fix noCloseButton attribute was not implemented
- Fix hideOnExcape=false still allowed closing on escape
- Fix using Et2Dialog.BUTTONS_OK showed no buttons
2023-06-30 11:02:04 -06:00
nathan
3cfdca0ae9 * Api: Customfield selectboxes can read options from a PHP file in the VFS using @[path] ex: @/home/Default/selects.php 2023-06-29 13:36:28 -06:00
nathan
85cc2a33cd 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-06-29 10:52:20 -06:00
ralf
acfcebce4a fix regular expression 2023-06-28 07:29:38 +02:00
nathan
d994f3f92e Api: Fix avatar images were not loaded 2023-06-27 09:46:30 -06:00
ralf
23895c94be WIP improve avatar loading in mail app
currently ET2Avatar is NOT correctly handling contactId=email:<email>
2023-06-27 08:59:59 +02:00
nathan
325fdcb02c Api: User selection = none fixes
- Fix display was 'false' instead of blank
- Fix widget type check was not preserving original value
2023-06-26 10:49:25 -06:00
nathan
cfcd56fd00 Projectmanager: Fix hoursPerDay was not properly considered for durations 2023-06-23 14:35:04 -06:00
hadi
3ecb093d35 Implement onlyEmail option for UrlEmailReadonly 2023-06-22 14:37:15 +02:00
hadi
0d60d3baf4 Make sure to show only email when using current value as email (avoids getting duplicate name in fullEmail mode) 2023-06-22 12:34:56 +02:00
nathan
bb0436661d Home: Fix missing portlet settings button 2023-06-19 09:16:32 -06:00
nathan
b83887d44a Api: All images lazy load
Try to stop when lots of images block the rest of the rendering
2023-06-15 09:28:38 -06:00
nathan
e2f82ca985 Fix link delete button to show on row hover again 2023-06-12 09:30:17 -06:00
nathan
dd4a2de988 API: Fix incorrect updateComplete override 2023-06-05 10:43:52 -06:00
nathan
0f145323b2 Et2Date: Fix timeonly does not update value the first time when manually typing a new value 2023-06-02 09:50:59 -06:00
nathan
846852ca22 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-02 09:05:14 -06:00
nathan
2eeff5ca38 Et2Link: If only breaking on a certain character, don't break on dash either (in addition to space) 2023-06-01 09:19:05 -06:00
hadi
8e0a3a2755 Fix swipe and popup contextmenu being triggered accidentally in touch devices 2023-06-01 15:28:42 +02:00
nathan
27cd57d428 Et2Link: Fix unwanted indent in front of et2-link-string, fix expose in et2-link-list 2023-05-26 11:36:25 -06:00
hadi
7f8909ebd4 Make ellipsis link titles used in link-list readable by using hover tooltip 2023-05-25 14:07:58 +02:00
hadi
b2dd9f65b6 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-05-25 13:14:28 +02:00
nathan
9a5ed1efa3 Api: Wait for et2-link-strings to finish updating before we continue with the print
Avoids printing before the link titles are loaded
2023-05-24 15:54:36 -06:00
hadi
10d3f40973 Fix links styling to get correctly ellipsis text overflow 2023-05-24 14:40:19 +02:00
hadi
023e45ebc0 Fix null being represented into remark's column in links 2023-05-24 13:38:13 +02:00
hadi
f23c562105 Do not activate statustext for mobile template 2023-05-23 12:36:04 +02:00
hadi
26e52d6692 Fix the title for file drag out 2023-05-22 15:22:11 +02:00
hadi
b5f46c1bad Make et2link file type draggable 2023-05-22 11:45:56 +02:00
nathan
79d22e17a0 Fix missing spinner icons in date 2023-05-19 08:16:02 -06:00
ralf
8b22a258c6 fixing the fix, item is a regular (not DOM-)object and not undefined 2023-05-19 09:26:21 +02:00
ralf
71278c8041 fix TypeError: item.querySelector is not a function 2023-05-19 09:20:47 +02:00
nathan
be25869a1d Et2Select: If the value contains something that does not pass validation, show it as an invalid tag so it can be removed. 2023-05-18 10:48:33 -06:00
nathan
ab3a75a7b3 Focus test WIP 2023-05-18 08:08:18 -06:00
nathan
8da10cf863 Reconfigure Link to include icon & comment for easier drag & drop 2023-05-17 16:55:05 -06:00
nathan
89483d80d3 Api: Fix missing spinner icons 2023-05-17 10:08:34 -06:00
hadi
7caa6ad4ac Make files in link list draggable 2023-05-17 16:30:09 +02:00
nathan
ffb9fa706a Filemanager: Fix new file button stopped working after being readonly
Moved option render inside render() since we have it, simplifys things a lot
2023-05-16 15:01:24 -06:00
nathan
6ecb2d8cf9 Et2Select: Fix missing options filter to handle option groups too 2023-05-16 11:02:20 -06:00
nathan
eddcc97163 Et2ButtonIcon: Fix missing icons
There was a conflict between Et2InputWidget setting the widget name & image
2023-05-16 10:02:34 -06:00
hadi
60643d86b2 Fix toolbar icons are no longer shown in mobile theme 2023-05-15 17:29:13 +02:00
nathan
3bd2ee5aad Fix confirm dialog sometimes mis-placed initiating button in value 2023-05-12 10:06:55 -06:00
nathan
d5d217c589 Some "invalid option" fixes:
- Don't notify user, just log it to the console
- Fix calendar owner filtered out not loaded options
2023-05-11 10:56:42 -06:00
nathan
91b94a5126 Et2Select: Use same z-index for search box as dropdown 2023-05-10 13:43:46 -06:00
nathan
01ab3ab85a Et2Select: Fix selection of first option when no value provided, broken by 134cd9d249 2023-05-10 09:19:43 -06:00
nathan
820bd35689 Fix filtered out invalid values were still left in value 2023-05-09 14:28:02 -06:00
nathan
3e1b1e56dc Fix focussed select does not close when it loses focus
Mail reply moves focus from To: to body, and To dropdown stayed open
2023-05-09 14:04:02 -06:00
nathan
134cd9d249 Fix invalid option check did not work for multiple 2023-05-09 08:57:55 -06:00
nathan
4ce6bb3f3d Et2Select: Remove values that use options that aren't there to avoid the validation error 2023-05-05 11:08:47 -06:00
hadi
a8e83ad59f Fix readonly links styling 2023-05-04 12:41:30 +02:00
nathan
9aa4c6f403 Et2DateDuration: Fix value of "" caused NaN 2023-05-03 08:42:15 -06:00
ralf
d11c74f0bc fix error trying to submit 2023-05-03 11:16:47 +02:00
nathan
46b7c5258b 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-05-02 14:21:03 -06:00
nathan
ab195097f5 Et2DateDuration: Use integers for duration when we have a separate box for each duration, float when there's one box 2023-05-02 14:17:40 -06:00
hadi
8e8c664e95 Fix broken 3dots menu for nm in mobile theme 2023-05-02 18:53:42 +02:00
nathan
05e262d5ee Some tests for Et2EmailTag 2023-05-01 15:27:17 -06:00
nathan
5cb6415fef Et2Link: Fix projectmanager did not open in pm tab
Broken by 12e42d6
2023-05-01 10:28:36 -06:00
nathan
2fc44da034 Api: Fix clicking Select dropdown button while open did not close dropdown 2023-05-01 08:55:25 -06:00
nathan
8e9071acc8 Calendar: More sidebox owner fixes
- another instance of remote class causing problems
- remove duplicates to avoid warning message
2023-04-28 11:27:26 -06:00
nathan
96c66eeaf8 Fix LinkEntry change caused double change event 2023-04-28 09:27:17 -06:00
nathan
86dac02826 Calendar: Fix second selected owner in sidemenu went missing 2023-04-27 14:02:41 -06:00
ralf
a50fa29419 null and undefined are objects too
fixes TypeError: Cannot read properties of null (reading 'length')
2023-04-26 09:22:30 +02:00
nathan
7d86d69b49 Add statustext to list of detached attributes 2023-04-25 13:53:16 -06:00
nathan
12e42d6396 Fix Et2Link always opening in the same popup 2023-04-25 09:54:05 -06:00
nathan
5b9cf0ae0b Et2InputWidget: Give clones of object values so receiver cannot use the reference
Fixes failing change detection in EgwApp.update_state, since the value was the same object
2023-04-25 09:09:18 -06:00
hadi
998039b464 Do not translate category names 2023-04-25 12:02:35 +02:00
nathan
8fdfcc5c61 Fix missing entry values 2023-04-24 13:27:57 -06:00
nathan
027fc4dfab Always strip comma regardless of number preference so parse float always works. 2023-04-24 09:42:09 -06:00
nathan
61deaad2a2 Fix et2container.getValueById() failed with error on (some) webcomponents 2023-04-19 11:30:37 -06:00