ralf
21def67f83
fixed a couple more calls to egw.link_title() without 3rd parameter
2022-05-02 11:43:51 +02:00
ralf
74ad3ba7b0
change egw.jsonq() and egw.link_title() to return promises
...
* egw.jsonq() now always returns a promise like egw.request(), still supporting old callback syntax
* egw.link_title(_app, _id, _callback, _context, _force_reload) supports boolean values for _callback (to not break existing code)
- false: just a cache lookup (like current call with just 2 parameters), returning null, if no title is cached, or the title
- true: always return a promise, which might already be resolved, if title was cached
- function: also returns a promise and calls the callback
--> calling egw.link_title(_app, _id) without 3rd parameter is deprecated now (gives a console.trace), to be changed in future to always return a promise, unless called with false, to just return a cache-lookup
* Et2SelectAccountReadonly and et2_link_widget is changed to use the new/updated syntax with promises
2022-05-02 11:27:33 +02:00
ralf
78c9b4ac50
fix displayed [] instead of [Login]
2022-05-02 09:15:46 +02:00
ralf
e4c2432f4c
replace jQuery.ui.keyCode.X with EGW_KEY_X
2022-04-30 10:33:07 +02:00
nathan
f54c7f40bb
Improve holidays() return documentation
2022-04-29 14:37:52 -06:00
nathan
b44f4ea30d
Move holidays to its own file, show holidays in all date selection calendars
2022-04-29 14:37:52 -06:00
nathan
de2dade286
Et2SelectReadonly: Make sure we're dealing with string value
2022-04-29 14:37:52 -06:00
ralf
baf07a4a2c
only load localization, if we have one
2022-04-29 17:40:43 +02:00
nathan
e5f238584e
Et2Date: Avoid error localizing English
2022-04-29 09:14:51 -06:00
ralf
ef7c175814
remove jQueryUI DateTime picker and splitter and use them also for eTemplates marked as legacy
2022-04-29 17:05:43 +02:00
Hadi Nategh
c707af32b6
Add hideOnEscape and noCloseButton options into ET2Dialog
2022-04-29 14:28:43 +02:00
ralf
21d362b5fa
Merge remote-tracking branch 'origin/master'
2022-04-29 12:44:59 +02:00
ralf
4fd00df861
fix diverse undefined array-key or variable warnings
2022-04-29 12:44:43 +02:00
nathan
63b2755dbf
Et2Date: Add localization
2022-04-28 15:46:39 -06:00
Hadi Nategh
36f41a9470
Handle appendTo attribute used in legacy dialog properly
2022-04-28 18:00:37 +02:00
ralf
0758e17d24
* CalDAV/Calendar: expand-property report used by iCal app (Mac) did not return rights on other users calendar
...
but other users/groups which have rights on the queried users calendar
Also on longer enumerate group-members in group-memberships as calendar-proxy-(read|write) groups, as iCal app understands group-memberships.
2022-04-28 16:10:16 +02:00
ralf
a32bb2abde
do NOT log not found template because of missing $row_cont expansion on server-side
2022-04-28 10:39:08 +02:00
nathan
278f75546a
Fix submit proceeded even if legacy widget failed validation
2022-04-27 11:56:03 -06:00
nathan
fd53dfe82b
Fix PHP error if cf['type2'] is a single value, not array
2022-04-27 11:55:03 -06:00
nathan
9dd6f44715
Calendar: Sidemenu calendar CSS adjustments
2022-04-27 09:53:19 -06:00
ralf
c62b305b4a
return a Promise from egw.accountData and deprecated, but still support, the use of a callback
...
egw.accounts can be called with a second parameter async=true to query accounts async and return a Promise
2022-04-27 17:33:07 +02:00
ralf
03099756d7
fix PHP 8.1 Error: Serialization of 'LDAP\Connection' is not allowed
2022-04-27 13:00:10 +02:00
nathan
1c42668a97
Change sidebox calendar from jQuery to webcomponent / flatpickr
2022-04-26 15:27:49 -06:00
nathan
0017b78b53
Et2Date: Add support for inline dates & passing a format to parseDate
2022-04-26 15:24:58 -06:00
ralf
2d0de5f287
another chunk of fixed PHP Warning: Undefined array key or variable in api
2022-04-26 20:24:37 +02:00
ralf
917a833f89
fix "a ton" of PHP Warning: Undefined array key or variable in mail code
2022-04-26 18:46:38 +02:00
Hadi Nategh
fcf195cf47
Fix toolbar menulist doesn't get closed after clicking away from it
2022-04-26 14:53:01 +02:00
Hadi Nategh
a835d5bc6e
WIP replacing jQuery-ui: fix et2_toolbar styling with new details tag
2022-04-26 11:18:43 +02:00
nathan
7d86272b28
CSS / Layout cleanup
...
- Fix select with tags=true causes hidden WebComponents to display
Chosen wants to do sizing calculations which wasn't working properly on w.c.
2022-04-25 10:46:51 -06:00
Hadi Nategh
ca794817eb
WIP replacing jQuery-ui:
...
- Replace accordion with html details
2022-04-25 17:24:29 +02:00
nathan
65c683b9a2
Change styling on validation messages
2022-04-25 08:47:12 -06:00
ralf
941142c5be
fix CallbackIterator to return mixed, as it can be overwritten with a callback
2022-04-24 21:27:53 +02:00
ralf
128b6b06df
fix PHP 8.x TypeError: string & int
2022-04-24 20:52:49 +02:00
ralf
d92c5a94a6
fix PHP 8.1 Deprecated by adding return type declarations
2022-04-24 18:15:47 +02:00
nathan
aafbc58cdd
Validation message styles
...
- Changed to absolute position to avoid reflow
- "Better" style
2022-04-22 16:07:57 -06:00
nathan
4f17302bb1
CSS / Layout cleanup - better autosize
...
- More consistent sizing/position for invoker
2022-04-22 15:22:31 -06:00
nathan
ec8b32c01d
CSS / Layout cleanup - better autosize
...
- let things inside box shrink, actual widget can decide minimums
- Slotted inputs take up full width by default
- More consistent sizing/position for invoker
2022-04-22 15:21:46 -06:00
nathan
f8f04071be
CSS / Layout cleanup
...
- Remove margin from input,button,select
- Fix some spacing issues
- Switch selects from display:inline-block to display:block so they take up all parent's space
- Let background (required) color show through select tag
- Some layout tweaks on mail account template
2022-04-22 13:07:22 -06:00
nathan
6feb9f468a
Handle missing nextmatch controller when setting up auto-refresh by trying again later.
...
(Missing controller caused by new template loading)
2022-04-22 10:52:16 -06:00
nathan
f18dd19536
Et2Split: Make bar darker on hover
2022-04-22 10:46:41 -06:00
ralf
eb894c50ca
fix an other case of "Network error" when downloading as ZIP
2022-04-22 11:00:09 +02:00
nathan
166db3f4d2
Et2Description: Fix extra space while preserving line breaks
2022-04-21 10:41:30 -06:00
nathan
19ae591bdf
Et2Split: Add a background color to the splitter bar
2022-04-21 09:09:59 -06:00
ralf
f05ce485ca
do not generate a custom fileAs for new contacts
2022-04-21 15:45:20 +02:00
ralf
f42f26d86b
always generate minified CSS, if grunt is installed
...
- still run other npm tasks (install & build), if grunt is not installed
- run "npm install --legacy-peer-deps", to cope with dependency mismatch caused by downgraded grunt-newer
--> if developer install should not use minified CSS: remove grunt and the previous generated .min.css files
--> if downgraded grunt-newer caused CSS "problems": run once manually: grunt cssmin
2022-04-21 13:45:38 +02:00
nathan
416136dc24
Et2Description: Fix missing styles from extending classes (Et2Url) while also keeping decrypt on hover working
2022-04-20 16:23:53 -06:00
nathan
234684061d
Et2Split: Bugfixes
...
- better handling of nested dynheight
- handling orientation property
- avoid resizing when not visible
2022-04-20 14:15:49 -06:00
nathan
94f843cd50
Et2Widget: Add modifications in when transforming attributes
2022-04-20 14:09:45 -06:00
nathan
ce14c1c9f6
Et2Split: Convert splitter to webcomponent
2022-04-19 09:36:44 -06:00
nathan
44c8b2f372
Et2Widget: More complete handling of child object styles property when it is missing
2022-04-19 09:31:10 -06:00
nathan
18f6d1ee0b
Et2Image: Fix "TypeError: this._imageTemplate is not a function"
...
I'm not sure how that happened. Autocorrect?
2022-04-14 08:50:34 -06:00
nathan
748e2ee70e
Et2Image: Use slotted image so most CSS still works
2022-04-13 10:37:55 -06:00
nathan
0d6d18e3fa
Et2Image: Show as clickable if image has href OR onclick
2022-04-13 08:34:24 -06:00
nathan
0f362f9717
Put Et2Description content into light DOM to fix decrypt on hover
2022-04-12 16:28:36 -06:00
nathan
319bd51f80
Et2Image bugfixes
...
- No src or default_src gives nothing, not missing image
- Fix etemplate.php parser so buttons that get converted to images still submit
2022-04-12 10:00:43 -06:00
nathan
75e573b6a1
* Api: Merge placeholder that checks for EMPTY {{IF fieldname~EMPTY~True text~False text}}
...
EMPTY check was already there, just adding it explicitly into the placeholder list
2022-04-12 09:04:18 -06:00
nathan
e3be42721e
Fix Et2Image did not double-transform src for as legacy image did
...
eg:
if $content[0][type] = "group"
${row}[type] => "0[type]" (single transform)
0[type] => "group" (double transform)
Also, fix type from addressbook list to not need double-transform
2022-04-11 15:03:24 -06:00
nathan
6ed888a80e
Fix missing Et2Image label
2022-04-11 13:38:24 -06:00
nathan
49d40c18e8
Set nextmatch as parent so newly cloned webcomponents in nm row have it before we start setting properties.
...
Fixes egw.image() not having correct app.
2022-04-11 11:21:39 -06:00
Hadi Nategh
8175a592d5
Fix some mail actions e.g. "view as source" or "Html" no longer working
2022-04-11 12:43:18 +02:00
ralf
abba483377
limit et2-buttononly w/o background_image conversation to et2-image to non-list / -NM templates
2022-04-09 09:15:18 +03:00
nathan
77a11cb5fe
Fix image src not getting set
2022-04-08 14:03:29 -06:00
nathan
2ba299f876
Change buttons that used to be just an image to be just an image
...
- Remove Et2ButtonImage, it's not needed. Buttons without labels look the same
- Add Et2Image to take its place
- Change etemplate modifier to use Et2Image for buttononly
- Some styling for mail account placeholder button
2022-04-08 13:03:20 -06:00
ralf
150f741f5a
Changelog for 21.1.20220408
2022-04-08 13:23:18 +03:00
ralf
28b42f4276
* Filemanager/SMB: fix not working sharing of SMB shares (with fixed credentials!)
...
sanitize URL before sending them to PHP / other stream-wrappers like the smb one, which chokes on our ro=1 parameter
2022-04-08 12:42:53 +03:00
nathan
70c5cedec7
Better styles for disabled buttons
2022-04-07 16:45:24 -06:00
nathan
3f86e98257
Deal with et2-button-image showing label
2022-04-07 16:24:45 -06:00
nathan
fe91205192
Check & set context for filesystem:// too
2022-04-07 14:18:13 -06:00
nathan
0d32bb6e5c
Api: Make sure mountpoint URL query and target URL query don't double ? in path query
2022-04-07 14:18:13 -06:00
ralf
e782cb9105
add processing of new et2-button-image tag and new/changed et2-button attributes
2022-04-07 21:05:32 +03:00
nathan
911a2970b0
Et2Dialog: Turn on modal now that style issue is fixed
2022-04-06 15:13:51 -06:00
nathan
d1b5c796dd
Expand super.styles
2022-04-06 15:12:39 -06:00
nathan
22ae7fbf89
Use Et2Button.noSubmit instead of Et2Button.doSubmit
2022-04-06 15:08:18 -06:00
nathan
54ea13bfa8
Et2Widget: Fix the missing style property
...
... by not overriding it
2022-04-06 15:06:25 -06:00
nathan
3c28d4b9a9
Et2Button: change doSubmit (default false) to noSubmit (default true) because of nextmatch complications with boolean properties
2022-04-06 14:48:57 -06:00
nathan
725b32941f
Api: Fix sharing folders by making sure compression is off
2022-04-06 14:44:46 -06:00
ralf
1f46fdc7d6
Changelog for 21.1.20220406
2022-04-06 16:58:06 +03:00
nathan
e68e125a0a
Add accesskey property
2022-04-05 10:09:49 -06:00
nathan
57e231aced
New Et2ButtonImage that shows only image
...
Also doesn't stretch like the others do.
2022-04-05 09:15:08 -06:00
nathan
72736566e2
Convert <buttononly/> => <button doSubmit="false"/>
2022-04-05 09:13:14 -06:00
Hadi Nategh
8b147bc285
Fix removeSessionItem not working
2022-04-05 10:24:06 +02:00
nathan
a763b84be4
Et2Button properties hideOnReadonly, noValidation
...
Added hideOnReadonly, default false. Disabled/readonly buttons are now visible but disabled, unless you set hideOnReadonly="false" to get previous behaviour.
Added noValidation, default false. It's just passed to etemplate2.submit() as before
2022-04-04 16:24:01 -06:00
Ralf Becker
76e76a9e18
pending changes from our translation server
2022-04-04 13:26:38 +02:00
ralf
64c9507912
fix PHP 8.1 error/mysqli_sql_exception: Invalid character set was provided (utf-8 instead of utf8)
2022-04-04 10:19:26 +03:00
ralf
73662af7b2
LDAP resources are objects (no longer resources) from PHP 8.1+
2022-04-04 09:23:10 +03:00
nathan
17834f1be8
Fix nextmatch changing value back before it could be submitted
2022-04-01 14:52:40 -06:00
nathan
a83f9a1ec9
Get tests passing again
...
- Dates have their input as slotted, not internal
- Selects have .select_options, not .get_select_options()
- Remove this.egw().lang() use from Et2InvokerMixin._invokerTemplate()
2022-04-01 12:52:47 -06:00
ralf
9e8b291201
calling etemplate2.submit(,,no_validation=true) caused no submit (as invalid is no promise, but null)
2022-04-01 21:28:25 +03:00
ralf
b2a85e68b8
fix vfs-path widget to correctly deal with smallPART paths (hierarchical structure inside entry directory)
2022-04-01 21:00:45 +03:00
nathan
0c8824c496
Fix addressbook contact type filter was sometimes 'D' after being initialized to 'n'
...
When nextmatch moved the template in the DOM, we were re-adding already existing options which re-set the value.
2022-04-01 11:12:19 -06:00
nathan
9cd746f0b4
Fix missing nm filters
2022-03-31 08:46:36 -06:00
nathan
6120d820aa
Change to Et2Dialog
...
- History diff
- Fix some bugs in placeholder widget
- Change load listener target, the dialog content node might have been moved out before the event gets triggered
2022-03-30 15:11:15 -06:00
nathan
bfdb53b1cf
Change over some more dialogs
2022-03-30 13:24:52 -06:00
nathan
763ed85668
Fix splitter widget did not restore size from preference
...
Two problems:
1. Preference was stored as percent which splitter did not like to load directly
2. Etemplate was triggering the final finish-up, which triggered resize(), which stored the default as preference before the splitter got to its _init_splitter(),
2022-03-30 09:09:33 -06:00
nathan
632ab571db
Fix nextmatch webcomponent children stalled etemplate load, preventing et2_init() from being called.
2022-03-30 08:30:25 -06:00
ralf
790f9b2ff9
fix broken tracker mailhandling caused by protected constructor
...
also disable reading from DB, in case no (numeric) acc_id given, like from tracker mailhandling
2022-03-30 10:57:41 +03:00
ralf
e7dc51ad14
Revert "Fix splitter widget did not restore size from preference"
...
This reverts commit e8635be8c1
.
2022-03-30 10:21:22 +03:00
nathan
c12d4cebfb
Et2DateDuration: Enforce the order of display to be greatest to least
...
For example hours:days is not allowed anymore, auto-corrected to days:hours
2022-03-29 11:00:59 -06:00
ralf
22c8d8808f
Allow overwriting values in all mail accounts through an optional file /var/www/mail-overwrites.inc.php
2022-03-29 19:39:39 +03:00
nathan
e8635be8c1
Fix splitter widget did not restore size from preference
...
Two problems:
1. Preference was stored as percent which splitter did not like to load directly
2. Etemplate was triggering the final finish-up, which triggered resize(), which stored the default as preference before the splitter got to its _init_splitter(),
2022-03-29 09:17:04 -06:00
ralf
49e7aab2cc
* Addressbook: allow keeping custom fileAs value (LDAP: displayname) by adding it as first option
2022-03-29 10:25:52 +03:00
ralf
20d3394e2b
fix IDE warning/error: constructor returning something
2022-03-29 09:12:02 +03:00
nathan
13d1289910
Dialog / button fixes
...
- Get dialog contents visible in Firefox
Something in how Firefox parsed or inserted the style and children caused an error:
Node.insertBefore: Child to insert before is not a child of this node
which caused the dialog contents to be missing from the shadow DOM. This fixes the missing contents by putting the style in using a different way.
2022-03-28 11:29:21 -06:00
ralf
4f3e9fa06c
do NOT attempt to use credentials encrypted with user password in an async context
...
(where user password is not available)
otherwise an s/mime certificate or user specific password will stall sending notification, even if no smtp authentication required
2022-03-28 17:58:41 +03:00
ralf
9a07c4a1dd
do NOT overwrite everything, if vfs-upload is used without id:
...
- using fallback id of "file_widget" the client-side uses
- ignore validation, if there is no id
2022-03-28 13:32:05 +03:00
nathan
f714729c26
Dialog / button fixes
...
- Fix vfsSelect did not close (seen in collabora save as)
- Turn off destroy_on_close, vfsSelect was destroying opening session (seen in mail compose 404)
- Add doSubmit property to Et2Button, dialog no longer gives error on every button click
2022-03-25 09:55:02 -06:00
ralf
55da72a661
replace jQuery.Deferred with regular Promise
...
trying to fix not working restore of splitter size in mail, thought it did NOT help in that regard :(
2022-03-25 10:02:14 +02:00
nathan
467e2ca8e2
Fix some bugs in nextmatch dialog action
...
Wrong action was used, leading to an error. Plus, it kept a copy of the nextmatch in memory across the reload.
2022-03-24 14:48:02 -06:00
nathan
21da0b067a
Get vfsSelect dialog working again
2022-03-24 13:01:41 -06:00
nathan
5e2b690b2a
Et2Dialog Increase min-width
2022-03-24 11:41:29 -06:00
nathan
67dba61ef6
Et2Dialog changes
...
- dialog can now adopt buttons from the template. Preferrably set slot="buttons", but it'll find them anywhere if you don't
- Reduce size & padding for non-template content
2022-03-24 11:21:32 -06:00
nathan
38a3af6981
Set modelValue if the inputWidget has a _callParser() method.
...
This makes sure the internal modelValue is set when we call set_value(), and preserves value if the widget is re-connected (like Et2Dialog does)
2022-03-24 09:46:27 -06:00
nathan
53a7405a61
Et2Dialog: Adjust header style
...
added a line below header, title slightly larger, adjusted padding
2022-03-23 14:50:00 -06:00
nathan
be6b49ca21
Remove debugger
2022-03-23 14:48:45 -06:00
nathan
db27086fe5
Change another reference to et2_dialog in nextmatch
2022-03-23 13:43:23 -06:00
nathan
79fab93351
Fix missing button labels from legacy dialog
2022-03-23 13:42:12 -06:00
nathan
9693cfe538
Switch nextmatch print & select all to using Et2Dialog
2022-03-23 13:28:15 -06:00
nathan
db7c68bdc7
legacy dialog - Fix missing buttons
2022-03-23 13:22:14 -06:00
nathan
6d538f29f0
Fix legacy dialog gave error without parent
2022-03-23 13:02:12 -06:00
nathan
cdbdf53d46
Et2Dialog: Make sure value has a content before loading template, otherwise we get an error from etemplate2
2022-03-23 13:02:12 -06:00
ralf
a5d6fea958
do not prefix empty path with preprocessor script, as it prevents client-side expansion
2022-03-23 20:57:00 +02:00
Hadi Nategh
d13d039349
Fix Taglist new free entry replacing other selected options
2022-03-23 18:16:19 +01:00
nathan
f5c1e21ee8
Switch placeholder widget to using Et2Dialog
2022-03-23 11:01:36 -06:00
nathan
39baec10ab
Add some documentation to legacy dialog
2022-03-23 11:00:41 -06:00
nathan
2c92ddfe92
Et2Dialog: Fix template's DOMContainer ID still had .xet in it
2022-03-23 10:53:00 -06:00
nathan
85e247d4d6
Legacy dialog
...
- Fix load event was not bubbling through to the listener
- Fix value was missing
2022-03-23 09:50:11 -06:00
ralf
2f616281e0
fix click eg. in mail on attachment as long as we have no blueimp/expose
2022-03-23 15:26:16 +02:00
nathan
3c4f85155d
Get legacy et2_dialog working with createWidget()
2022-03-22 17:21:59 -06:00
nathan
56ed4e1267
Et2Dialog: Fix incorrect properties declaration
2022-03-22 17:19:53 -06:00
nathan
322fa3c8f4
Get nm_action dialogs working
2022-03-22 15:49:42 -06:00
nathan
8a033b6b9a
Fix sometimes missing namespace causing some child widgets to have their value in the wrong place
2022-03-22 15:46:39 -06:00
Hadi Nategh
f4e877bcdf
Adapt vfs dialogs with new Et2Dialog widget
2022-03-22 12:50:42 +01:00
Hadi Nategh
6b1dd6a5fd
Fix error "explode(): Argument #2 ($string) must be of type string, array given", happens sometimes while merging contacts
2022-03-22 10:54:44 +01:00
nathan
ff274c2bc8
Et2Dialog changes
...
- Add some margin, border & box-shadow
- Smaller header & close button
2022-03-21 14:51:43 -06:00
nathan
b600059b68
Et2Dialog changes
...
- improve documentation
2022-03-21 09:52:09 -06:00
nathan
ff471946b5
Make et2_widget_dialog a stub that extends Et2Dialog so 3rd party apps might still work
2022-03-21 09:50:58 -06:00
Hadi Nategh
10453c41e3
Give maximum available height to BOX's parent node
2022-03-21 16:21:55 +01:00
nathan
e9a381da69
Et2Dialog changes
...
- Set template's DOM ID so CSS can style it
This is the best way to set [minimum] dimensions, though you can set width & height on the Et2Dialog.
2022-03-21 08:46:03 -06:00
Hadi Nategh
d7400503ac
Use data value instead of index for close/edit handling as indexes might get change
2022-03-21 14:13:45 +01:00
nathan
9e989596c2
Et2Dialog changes
...
- Fix Et2Dialog.show_prompt() incorrectly returned too much, should be just the prompt value
2022-03-18 14:40:54 -06:00
ralf
a45d26511b
fix not set invoker for expand_multiple_rows attribute
2022-03-18 22:26:15 +02:00
nathan
fefc822d9c
Et2Dialog changes
...
- Fire a close event on close
- When closing, clear the template (if present)
2022-03-18 14:05:57 -06:00
Hadi Nategh
53ecdba510
WIP Et2Taglist: trying to get allowFreeEntries feature working
2022-03-18 19:13:30 +01:00
ralf
5650e8c616
ignore click action for an empty value
2022-03-18 09:53:09 +02:00
nathan
96039e0729
egw_open doesn't like the import...
2022-03-17 16:54:43 -06:00
nathan
255add7d98
Api: Switch from et2_dialog to Et2Dialog
...
Might be some I missed or can't change just yet
2022-03-17 16:18:39 -06:00
nathan
0479671ac4
Et2Dialog changes
...
- implement Et2Dialog.long_task()
- change to use Et2Dialog._buttons.label instead of Et2Dialog._buttons.text for better consistency
2022-03-17 15:21:15 -06:00
nathan
4fd50db1c3
Et2Dialog - only try to add an image to button if one is specified
...
Avoids error in button set image()
2022-03-17 13:06:29 -06:00
nathan
56571c6fc7
Et2Dialog changes
...
- Fix some event listeners
- Add getCompleted() promise that resolves when the dialog closes.
- Et2Dialog.alert() returns the promise directly, other static methods return the Et2Dialog to avoid breaking existing code
You can now wait for a dialog with:
Et2Dialog.show_prompt(null,"Name?").getComplete().then(([button_id,value]) => console.log(value));
or using async:
[button_id, value] = await Et2Dialog.show_prompt(null,"Name?").getComplete();
if(button_id === Et2Dialog.BUTTON_OK) {...}
2022-03-17 13:03:47 -06:00
ralf
ee36e83cbb
fix Et2Date.set_value('') did not clear
2022-03-16 23:21:15 +02:00
ralf
b9cca9c5ff
using set/get select_option plus a set_selection_options marked as deprecated
...
- get_select_options seems to be nowhere in use, so I did not implement it
- Et2Select* widgets with static options assign them in their constructor (like the r/o ones)
- removed a jQuery.proxy call, which we dont want in new code
2022-03-16 22:36:43 +02:00
nathan
5fdc594d00
Get templates working in Et2Dialog
2022-03-16 13:53:50 -06:00
nathan
c120f13466
Get separate egw object & some styling sorted out
2022-03-15 14:10:53 -06:00
nathan
ed72d63522
Add missing label property
2022-03-15 13:48:58 -06:00
Hadi Nategh
5dd67f2d3d
Fix alarm not being fired sometimes
2022-03-15 18:56:47 +01:00
Hadi Nategh
1d559e9263
Allow multiple alarms being set for countdown widget
2022-03-15 16:58:05 +01:00
ralf
89ebb61f76
implement full_email attribute for et2-url-email with changed default of false
2022-03-15 14:39:42 +02:00
ralf
7a749a8f54
fix instead of all only last option was selected sometimes
...
because multiple property was not yet synced to DOM node
2022-03-15 11:43:55 +02:00
ralf
e5a6f195dc
fix delete-account did not show 0 entries for InfoLog, also give a total per InfoLog type
2022-03-15 10:50:57 +02:00
nathan
2c1f9b2579
WIP on dialog
...
You can try it with
et2_dialog.show_dialog(null, "This is the message", "Title")
2022-03-14 17:07:25 -06:00
ralf
293e9f2fc6
Implement multi-select value as string[] or comma-separated
...
Had to overwrite some formMixin methods, which considered everything not string as invalid and set/get value to do the right thing for multi-select
Not sure if code should go to Et2WidgetWithSelectMixing to be shared with TagList ...
2022-03-14 21:13:47 +02:00
ralf
940e1b12c1
Implement expand_multiple_rows attribute for Et2Select using Et2InvokerMixin
2022-03-12 14:49:25 +02:00
nathan
4cf4c5090a
Remove extra image declaration, now using auto-generated internal image property
2022-03-11 14:36:50 -07:00
Hadi Nategh
3705448aff
Fix filemanager's view no longer works
2022-03-11 14:22:04 +01:00
ralf
dd7ebad1e7
Implement et2-select-account
2022-03-10 20:20:32 +02:00
ralf
6ebd09b275
size and align icons for url-widgets
2022-03-10 18:14:28 +02:00
Hadi Nategh
1be92b5b61
Style MixinInvoker widgets
2022-03-10 15:39:54 +01:00
ralf
9285b87a92
implement multiple attribute for et2-select reflecting it to selectbox
...
fixing TypeError set_multiple is not a function
2022-03-10 15:48:27 +02:00
ralf
0099b094b9
Fix TypeError: Cannot set property options
2022-03-10 14:57:00 +02:00
ralf
782958d7fc
Fix/remove email validator and implement trailing_slash attribute
2022-03-10 14:26:06 +02:00
ralf
ebaebf65ca
Implement et2-url-* incl. r/o
...
ToDo: implement allow_path and trailing slash attributes for et2-url
2022-03-10 10:15:59 +02:00
nathan
f34d7f4d9c
Solution for boolean attributes that need row data: Use the default but hold on to the value that couldn't be parsed, defer processing until later.
2022-03-09 14:23:45 -07:00
nathan
944c0ad68e
Add disabled to detached attributes
2022-03-09 10:17:59 -07:00
nathan
4d25d2ea8b
Wait on parsing boolean attributes with ${row} if we're not actually in a row, same as string attributes.
...
Fixes boolean attributes don't follow $row values
2022-03-09 10:16:40 -07:00
nathan
d8517edafa
Fix template load failed if it didn't had a template to load, now just resolving quietly.
...
Fixes calendar sidebox integration stalled eTemplate load
2022-03-09 09:02:36 -07:00
Hadi Nategh
7293b34493
Fix broken egwActionObject import, import statement being removed accidentally in f7f4053d1a
2022-03-09 11:21:06 +01:00
ralf
5fd4423775
fix indention making debugging wired otherwise
2022-03-09 09:43:39 +02:00
nathan
f7f4053d1a
Swap Promise for jQuery.Promise in loadingFinished() & doLoadingFinished()
...
This lets us add LitElement's updateComplete Promise into the list of things to wait for, and solves the problem of app init code being run before widgets are complete.
https://lit.dev/docs/components/lifecycle/#reactive-update-cycle-completing
2022-03-08 15:11:32 -07:00
ralf
1b74f1f1a7
WIP URL widget for email and phone (not yet styled)
2022-03-08 20:20:06 +02:00
Hadi Nategh
e9fbc81565
WIP Taglist: implements get and set value
2022-03-08 16:19:03 +01:00
Hadi Nategh
7bdfceda87
WIP Taglist:
...
- fix dropdown menu not positioned correctly
- fix more styling
2022-03-08 09:24:18 +01:00
nathan
d0926226cd
Fix set_min() & set_max() for Date
2022-03-07 14:33:09 -07:00
nathan
734401c6cd
Get Date widget to use slots for better styling, also fixes re-initializing when not needed
2022-03-07 13:33:13 -07:00
Hadi Nategh
db4d0295b8
WIP Taglist: implement edit buttton
2022-03-07 17:36:15 +01:00
nathan
a059d2f59c
Fix for disconnected month selectboxes
...
aa2dc5c8f0
didn't work
2022-03-07 09:15:56 -07:00
nathan
1671e69603
Fix required dates gave missing error even if they had a value
2022-03-07 09:14:15 -07:00
Hadi Nategh
bb1e9d2c30
WIP Taglist:
...
- fix tag style
- fix close button
- allow to open menu when there's fixed sel_options
2022-03-07 16:32:39 +01:00
Hadi Nategh
285b71b6aa
WIP taglist: Fix backspace doesn't remove selected tags
2022-03-07 11:41:02 +01:00
ralf
f76ee3c920
forward min, max and step attribute to input node
2022-03-06 20:44:20 +02:00
ralf
4f93ceb16e
Implement et2-number(_ro) and preprocess <(textbox|float|int(eger)|number) type="float|int(eger)" to it in etemplate.php
...
.
2022-03-06 20:14:53 +02:00
ralf
5ac43d7a5a
deprecated and replace attributes: needed-->required, blur-->placeholder in preprocessor
...
remove client-side code for them and enable translation of placeholder
2022-03-05 15:25:53 +02:00
ralf
3b896e0919
deprecated and replace attributes: needed-->required, blur-->placeholder in preprocessor
...
remove client-side code for them and enable translation of placeholder
2022-03-05 15:22:45 +02:00
nathan
aa2dc5c8f0
Maybe stop the disconnected month selectboxes?
2022-03-04 15:42:27 -07:00
nathan
0e4d32ea20
Get some neglected tests working again
2022-03-04 15:37:22 -07:00
nathan
4bd4402e28
Get taglist selected options showing up
...
Note the [internal] event listener bound in Et2Taglist.connectedCallback() that re-renders the TaglistSelection every time the taglist's [internal] value changes
2022-03-04 13:41:37 -07:00
nathan
2d3e3f86e1
Call requestUpdate() to pass on the new "multiple" value
2022-03-04 09:19:17 -07:00
nathan
4445b11a07
Make sure the option tag is included & registered as a webcomponent
2022-03-04 09:09:16 -07:00
Hadi Nategh
77a67d892b
WIP Et2Taglist wiget:
...
- Make the taglist a Lion-combobox
- Use templateOptions for different taglist types
2022-03-04 14:23:19 +01:00
nathan
1893a2c7fe
Fix duration in infolog list
2022-03-03 14:14:26 -07:00
nathan
aff71549a2
Move some code out of Et2Select into parent mixin for better re-use
...
Any child that has selectbox type functionality (extends Et2WidgetWithSelectMixin) needs to implement:
- _optionTargetNode() : HTMLElement
- _optionTemplate(option : SelectOption) : TemplateResult
2022-03-03 10:38:56 -07:00
nathan
882f2a913c
Implement regex validator
2022-03-02 14:22:19 -07:00
Hadi Nategh
d093a7648c
Remove unintentional committed ET2TaglistEmail file
2022-03-02 16:31:07 +01:00
Hadi Nategh
3112dc1399
WIP of Et2Taglist implementation
2022-03-02 16:28:45 +01:00
ralf
89613dd368
fix et2-date-duration showing NaN:NaN in timesheet
...
boolean attributes should not have a default of true, because DOM does NOT reflect false and we need to reflect for use in NM
--> changed default for select_unit for r/o duration to false and set it in timesheet.index to true
--> changing it for r/w too would require a lot of xet files to be updated (we don't need reflection there)
2022-03-02 11:02:24 +02:00
nathan
d7adf26ce6
Implement splitting up widget label using %s
2022-03-01 16:56:58 -07:00
nathan
7eca91e83a
Implement clearing manual validation error messages
2022-03-01 16:55:55 -07:00
nathan
3c9b9540e4
Fix copy/paste error - Et2DateDuration does not have an options property to access
2022-03-01 16:50:05 -07:00
nathan
00f7b51fbd
Hopefully prevent double-bind of input change
...
Should fix addressbook contacts/organisation filter
2022-03-01 15:15:24 -07:00
nathan
ae700fb391
Fix distribution list filter did not change filters when its value changed
2022-03-01 11:22:47 -07:00
ralf
5ff96e7818
fix last option select instead of empty label or any other option
...
eg. "shared by me" in Addressbook instead of "All contacts"
caused by this._inputNode not available when set_value was called
2022-03-01 18:29:13 +02:00
ralf
c70886f106
fix invalid can be null and then gives an error
2022-03-01 16:52:50 +02:00
ralf
36e3bd5de0
fix typo modalValue instead of modelValue to get validation (required) working
...
Had to overwrite formatter as it gave an error for accessing not yet set _inputNode
2022-03-01 16:51:40 +02:00
ralf
ac408f4eef
Change handler setting modelValue for validation
...
setting it in getValue() alone does not remove validation message direct after entering a date
2022-03-01 16:09:27 +02:00
ralf
185e0eaf95
fix error, if widget has no change handler
2022-03-01 14:45:38 +02:00
Hadi Nategh
2d6770ebfa
Fix missing Et2WidgetWithSelect class
2022-03-01 13:31:13 +01:00
Hadi Nategh
08549e25da
Make Et2WidgetWithSelect a Dedup Mixin in order to make it available cross widgets
2022-03-01 12:35:33 +01:00
nathan
f8b1fcf412
Try and get nextmatch header change working with web components
2022-02-28 14:09:09 -07:00
nathan
5406704c74
Add set_min() & set_max()
2022-02-28 14:06:37 -07:00
nathan
30ddeb79b0
Add missing change listener
2022-02-28 13:45:47 -07:00
ralf
9260f25476
fist option with value of 0 was not selected
2022-02-28 17:42:57 +02:00
ralf
eff1f10484
fix sometimes first non-empty label used for empty value
...
seems update got triggered before empty_label was set
2022-02-28 15:21:23 +02:00
ralf
e567a0d465
fix et2-select use first option, not just empty_lable, if value is not in options
2022-02-28 14:11:57 +02:00
ralf
a6d297afb7
ignore further legacy options for select, to not display them as part of the empty_label
2022-02-28 13:41:02 +02:00
ralf
cdb944147f
fix one left over needed property and added getter&setter for deprecated needed property
2022-02-28 12:12:04 +02:00
nathan
e166211a66
Fix required dates always failed as empty
2022-02-25 11:29:36 -07:00
nathan
44221f74ef
Get server-side validation messages displaying
2022-02-25 10:30:55 -07:00
nathan
e048b26235
- Deprecate "needed" attribute in favour of standard "required"
...
- Fix some required CSS
2022-02-25 10:21:16 -07:00
ralf
71d079c9f3
only send password (or hash) to client-side, if explicitly requested
2022-02-25 13:53:03 +02:00
Hadi Nategh
08f45d32db
Fix onclick handling not working on description widget
2022-02-25 11:33:13 +01:00
ralf
832725ce52
fix display_format="h Ⓜ️ s" for r/o only gave one best matching unit (eg. 5m) not all units (eg. 0:05:30)
2022-02-25 10:16:28 +02:00
ralf
83cfb34c3c
fix not working date_format!="m" (the default) in NM by reflecting it into DOM
...
also adding it to all properties used by the r/o widget
This needs to be done by a lot more r/o widgets, if they assign their default values in the constructor!
2022-02-25 09:45:35 +02:00
nathan
d9e95dae87
Get needed attribute working
...
Will cancel submit, shows validation message
2022-02-24 15:53:40 -07:00
nathan
ce84dd753a
Get validation messages working
2022-02-24 15:53:40 -07:00
ralf
c83b281aa9
added et2-date-timeonly_ro widget
2022-02-24 19:44:30 +02:00
nathan
f0455b2ad2
Show empty_label when given a value that is not in the list of options
2022-02-23 13:13:14 -07:00
nathan
41a18b6274
CSS fixes:
...
- Missing border in Et2DateDuration without unit selector
- Box alignment was not applied to widget inputs (Et2DateDuration) when the widget inputs did not fill all available space
2022-02-23 11:15:55 -07:00
nathan
ec13b1a472
Fix missing label in date widgets
2022-02-23 10:43:39 -07:00
ralf
c9f6c98a5d
fix color-picker to not throw errors or lose its value
...
it clearly need more love ;)
2022-02-23 10:38:31 +02:00
nathan
354d15ba57
Support scroll wheel on date year, month, hour, minute
2022-02-22 11:23:54 -07:00
nathan
1e23a3c45e
Fix date duration was 2px too wide
...
A border on et2-date-duration (:host) is sized differently from a border on its children
2022-02-22 10:37:13 -07:00
nathan
ecd8b08373
Fix timesheet edit could not select start date
...
Unimplemented "mode" legacy option was conflicting with flatpickr "mode" attribute
2022-02-22 10:01:55 -07:00
ralf
1c7e74a2af
prefer [Login] button below over maybe existing SAML login button above
2022-02-21 21:19:41 +02:00
ralf
c2166c5750
fix select-boxes submit their old value, if they are onchange="1"
...
@Nathan: Not sure if this is the right fix, but I can't see where we use Lit's FormatMixing, which defines serializedValue (and therefore select-box always returns the old modalValue)
2022-02-21 20:58:56 +02:00
ralf
d23c8cbcb4
stub for set_validation_error to silence TypeErrors in app.ts
2022-02-21 16:56:30 +02:00
nathan
9079f97d7e
Fix selectbox values were not set.
...
Paying more attention to the WebComponent life cycle here, rather than what our widgets do - connectedCallback(), requestUpdate(), updated() are more important than loadFromXML(), etc. which are only used when loading from the .xet the first time.
2022-02-18 12:02:27 -07:00
ralf
ebfdc1f718
fix array_combine requires same number of values as keys
2022-02-18 11:01:33 +02:00
ralf
72f227d670
transforming legacy options in preprocessor (not all select-* stuff implemented currently)
2022-02-18 09:44:25 +02:00
nathan
1776dd9005
Fix some readonly selectboxes were missing options
2022-02-17 16:37:59 -07:00
nathan
b8455e0b8d
Fix Et2DateTimeOnly displayed 00:00 when value was ""
2022-02-17 10:30:35 -07:00
nathan
be4633c9fa
Implement et2-date-duration
2022-02-16 16:45:40 -07:00
ralf
e3113455cc
taking modification time of api/etemplate.php script into account too for .xet cache-buster
2022-02-16 20:14:38 +02:00
nathan
c81183f5f6
Fix incorrect value format in Et2Date
2022-02-16 10:52:37 -07:00
nathan
7cc9006e19
Add missing et2-date-timeonly widget
2022-02-16 10:43:15 -07:00
ralf
3f2c156914
fix missing flatpickr styles, thought you need to run: grunt cssmin
2022-02-16 15:36:06 +02:00
ralf
22954466c8
improve logging of updating SQL statements to given table(s)
2022-02-16 14:06:36 +02:00
ralf
a7ba4c0727
enable web-components for all date and select (without tags or search attribute)
...
also reverting unnecessary explicit changes to et2-* in infolog.edit
2022-02-16 10:38:28 +02:00
ralf
f29da5e613
fix TypeError with numbers not iterable
...
also problem with strings - thought no error - as they are iterated letter-wise, which is not what we want here
2022-02-16 10:35:09 +02:00
nathan
3ba1fe1416
Fix action pushed infolog edit dialog really wide
2022-02-15 14:01:07 -07:00
nathan
bc801f9c09
Fix missing import in et2 tests
2022-02-15 12:48:01 -07:00
nathan
7196455cbb
Add some colour variables
2022-02-15 11:51:23 -07:00
nathan
8203eb3efd
Use flatpickr for date widget calendar
2022-02-15 11:51:23 -07:00
ralf
5ff64259ee
switch simple/untyped r/w selectboxes on to use web-components
2022-02-15 09:17:14 +02:00
nathan
0fb32b7a6a
Fix JS error when cleaning up after printing (TS conversion issue)
2022-02-14 11:00:22 -07:00
nathan
d2020727fe
Fix some missing translation problems
2022-02-11 13:02:21 -07:00
Hadi Nategh
a7aee1d3d4
Let the pdfjs deal with new render request
2022-02-11 12:33:28 +01:00
Hadi Nategh
44d632be2a
Implements pdf-player custom element
2022-02-10 17:31:57 +01:00
nathan
c964ccd584
- Fix 'Forgot password' could not complete due to redirect
...
- Avoid error if no groups selected in registration configuration
2022-02-08 15:26:52 -07:00
nathan
650d76bd5c
Common cleaning of r/o select value
2022-02-07 13:51:05 -07:00
Ralf Becker
33db2190b0
Changelog for 21.1.20220207
2022-02-07 18:01:30 +02:00
Ralf Becker
dfb1f326ac
fix call to undefined method EGroupware\Api\Framework\Login::deny_screen()
2022-02-07 12:12:48 +02:00
Ralf Becker
1498a8f9e0
pending translations from our translation server
2022-02-07 07:58:11 +01:00
nathan
28eb3fdd80
Add Et2DateTimeToday
2022-02-03 14:58:56 -07:00
nathan
b91f66c629
Add some cleanup to find_select_options() make sure we're returning nice arrays instead of objects
2022-02-03 14:45:14 -07:00
nathan
3a1d8dfe11
Hide hidden textboxes
2022-02-03 14:41:58 -07:00
nathan
5b4c93b36a
Fix Et2Description tries to open on click even if href or link are not set
2022-02-03 13:52:14 -07:00
Hadi Nategh
2e5c433ab9
Add a boolean listonly option to vfs-upload widget in order to render only the file list
2022-02-03 15:56:03 +01:00
Ralf Becker
f23a800f83
add missing $relpath
2022-02-03 15:39:33 +02:00
Ralf Becker
10d61dd4c7
extract data-preparation from Etemplate\Widget\Vfs::beforeSendToClient() to use it to send the data to client-side in an AJAX call
2022-02-03 15:33:10 +02:00
Hadi Nategh
1929ac02f6
Fix broken file widget's accept option caused by Resumable overriding it on initiation
2022-02-01 13:28:56 +01:00
Hadi Nategh
c7549daa54
Avoid setting an empty default image
2022-01-31 12:17:35 +01:00
Hadi Nategh
8e26062854
Add multi_src option into video widget
2022-01-28 15:51:33 +01:00
Hadi Nategh
66c6a4aef1
Implement custom html multi video element (makes it possible to merge and control multiple videos as one tag)
2022-01-28 13:49:17 +01:00
Ralf Becker
855b786d97
fix get_file_id() (sometimes) not finding the right id for shared directories or writable Collabora shares
2022-01-27 21:15:36 +02:00
nathan
09c210415e
Make sure we use the lowest file_id, even if that comes from a disabled file, so we're consistent with versioned files
2022-01-26 12:54:00 -07:00
nathan
048b3c015f
Collabora: Use the same file ID when accessing via share
2022-01-25 15:11:18 -07:00
Hadi Nategh
d3f21bf333
Fix elements inside aligned box right/left don't get alignment properly
2022-01-25 12:43:37 +01:00
Hadi Nategh
c29afdd7d2
Fix buttons used in mail expanded area e.g. mail attachments area
2022-01-24 17:02:34 +01:00
Hadi Nategh
4cf9c109d8
Make the ET2Button container accepting external css rules using ::part to get buttons in NM in shape (This should be avoided after NM is a WC)
2022-01-24 13:36:05 +01:00
Hadi Nategh
282c01f62e
Trigger a requestUpdate when setting widget_id in order to get attribute ID updates available for inherited widgets. (e.g. ET2Button=>requestUpdate)
2022-01-24 12:49:59 +01:00
Hadi Nategh
5904ac11b0
Fix button widget can't deal with app specific images e.g. mail/navbar
2022-01-24 11:58:06 +01:00
Ralf Becker
073e7b9d2c
enable et2-date-(duration|since)
...
need to register et2-date-since without _ro prefix, as there is only a r/o variant of the widget (currently)
2022-01-22 11:01:24 +02:00
nathan
f9ba6683be
Read-only date-since and date-duration widgets
2022-01-21 13:46:12 -07:00
Hadi Nategh
812b126e85
Fix missing space between dialog footer border and buttons
2022-01-21 13:31:24 +01:00
Ralf Becker
7e4bdece84
allow to set <overlay legacy="true"> to disable new web-components for the whole xet-file
...
also disable (not working) r/w et2-select web-component again
2022-01-20 22:09:48 +02:00
Hadi Nategh
d02afcbe54
Add more general styling to buttons
2022-01-20 17:34:38 +01:00
Hadi Nategh
c8e16dd3fb
Fix broken alignments in button icon+label
2022-01-20 17:23:30 +01:00
Hadi Nategh
a2c75f0722
Fix buttons inside toolbars not getting the right background
2022-01-20 16:45:23 +01:00
Hadi Nategh
6fd23b631f
Get the right size icon for imageOnly buttons and add right padding for buttons with icon+label
2022-01-20 16:36:51 +01:00
Hadi Nategh
28bcaf9422
WIP styling buttons: another approach to style buttons, keeping the icon slotted
2022-01-20 13:13:04 +01:00
nathan
cc9a6bcf8a
Don't split single values
2022-01-19 15:57:59 -07:00
nathan
2ea15ed399
Fix the error when trying to load tracker
2022-01-19 13:37:40 -07:00
nathan
ac808f96e0
some cleanup
2022-01-19 13:18:41 -07:00
nathan
96c174d483
Implement select-account_ro as web component
2022-01-19 13:17:46 -07:00
Ralf Becker
a09c6d3639
do NOT handle / redirect for not found eT2 session in ajax_destroy_session()
...
as it's called, when the session is no longer needed
2022-01-19 20:16:28 +02:00
Hadi Nategh
d33534e2e1
WIP styling buttons
2022-01-19 18:30:45 +01:00
Ralf Becker
5ec2a233a4
using WCs for simple select, r/o select-* and r/o date(-time)
...
ToDo/Questions Nathan:
- Tracker index gives a client-side TypeError
- <et2-select-account readonly="true" is not registered, but <et2-select type="select-account" readonly="true" works
- <et2-date-time was registered as <et2-datetime, was that a typo of a conscious choice to rename the widget and not just prefix with et2-
- not yet enabled are r/w et2-date(-time)
- still missing are r/o et2-date-(since|duration)
2022-01-19 10:58:01 +02:00
nathan
8eb0f21893
Fix webcomponents did not load value
2022-01-18 14:13:25 -07:00
Hadi Nategh
8b9e81fbfd
WIP styling buttons and color definitions
2022-01-18 15:13:48 +01:00
nathan
32be8200a6
Fix copy/paste error - looks like select-access wasn't implemented in et2
2022-01-17 15:31:25 -07:00
nathan
e07220392d
Select widgets with static options as WebComponents
2022-01-17 15:13:50 -07:00
nathan
09cbc44e67
Get cached server-side options working for webcomponent
2022-01-14 09:29:59 -07:00
nathan
82277c802b
Readonly textbox
2022-01-13 15:31:01 -07:00
nathan
20c82b6d72
Starting on selectboxes with static options.
...
Not entirely sure this is the way to go, but at least we don't have to
1. copy the options
2. inherit the whole editable object for a readonly
2022-01-13 15:28:52 -07:00
nathan
a5f8b6076a
Add some tests for Et2Box.disabled to make sure it behaves.
2022-01-12 14:35:01 -07:00
nathan
19a2b13974
Api: We also need to trigger LitElement update when we change it here, I guess.
...
Fixes disabled attribute didn't change when set_disabled() was called.
2022-01-12 13:55:58 -07:00
nathan
12120b5434
Api: Fix disabled not being correctly set
2022-01-12 11:41:13 -07:00
Ralf Becker
49cac615d7
fixing the fix ;)
...
call_user_func_array(): Argument #1 ($callback) must be a valid callback, class admin_account does not have a method "ajax_process_content"
2022-01-12 13:32:48 +02:00
Ralf Becker
1d462dabfd
fix Error Method admin_account::delete::et2_process() does not exist
2022-01-12 13:00:04 +02:00
Ralf Becker
a3b63c9514
implement new "units" parameter to limit used units in date-since widget
...
eg. <date-since units="d" shows age in days
2022-01-12 12:47:49 +02:00
nathan
5a3e54a592
Fix for disabled not being set in some cases, try to deal with type
2022-01-11 15:16:50 -07:00
Ralf Becker
8a629a5ef7
fix not closing popups when using et2_process json.php handler
2022-01-10 19:55:05 +02:00
nathan
2c59914b74
Fix disabled attribute was not getting properly handled
...
In particular Admin -> File Manager -> VFS mounts and versioning had the "Delete all older versions..." block disabled when it shouldn't have been.
2022-01-10 09:32:31 -07:00
Ralf Becker
fc9ab417ed
run quota-recalc only if fsck fixed something
2022-01-09 17:31:44 +02:00
Ralf Becker
1f4cb50e74
use $method parameter of Api\Etemplate::exec() plus new et2_process handler as menuaction GET parameter
...
allows determining the called function on the URL to eg. send it to different FPM pool
(before the menuaction of et2 was always "EGroupware\Api\Etemplate::ajax_process_content")
2022-01-09 16:38:14 +02:00
nathan
fd7e7e2828
Basic tests for Et2Select, & fixes for bugs they revealed
2022-01-07 14:13:38 -07:00
nathan
57860e03db
Get onchange working (for select widget)
2022-01-06 16:22:55 -07:00
nathan
4ed888476c
Deal with some IDE warnings
...
better documentation of things tried
2022-01-05 13:14:28 -07:00
nathan
7ab60918f4
Fix missing bits in cssImage() example
2022-01-05 10:24:23 -07:00
nathan
a48e6cf1d3
- Add cssImage() to help with putting our images into LitElement CSS blocks
...
- Some code cleanup
2022-01-05 10:21:18 -07:00
nathan
85f753324d
Remove unused import
2022-01-05 08:07:01 -07:00
nathan
f8ab5c521e
Selectbox webcomponent
2022-01-04 15:38:10 -07:00
nathan
8d5f39b2d3
Add tests for description widget
2022-01-03 09:58:55 -07:00
Ralf Becker
e2c09aa1b0
* Filemanager/API: directory size is now the sum of the size of its contained files (allowing to eg. implement quota in future)
2021-12-30 14:37:58 +02:00
Ralf Becker
578accd72f
allow to pass url including http(s) scheme to Html::link($url, ...) and therefore other methods of Html class
2021-12-23 10:01:29 +02:00
nathan
0f45aed876
Reflect properties into DOM attributes, it's faster
2021-12-21 11:16:58 -07:00
nathan
5bdf12f1b9
- Detached widgets still need a loadingFinished() for if they are children of legacy widgets
...
- Add description click handler
2021-12-21 10:52:39 -07:00
nathan
602ac44c15
Fix readonly webcomponents inside a legacy widget were not loaded as readonly
2021-12-21 10:50:21 -07:00
nathan
fa707f0627
Fix widget.egw() returning null in some cases when widget parent was not completely in widget tree
2021-12-21 10:45:38 -07:00
nathan
7fcf6f1423
Add some more properties for description
...
activate_links
extra_link_target
extra_link_popup
href
2021-12-20 15:15:32 -07:00
nathan
e1ab343a5d
WIP on Et2Description. Shows improvement in nm render speed.
2021-12-17 14:47:19 -07:00
nathan
4e597b5672
Add date readonly, some class optimizing
2021-12-17 10:06:37 -07:00
nathan
ccfcf2a086
Add a hook for before get_rows is called
2021-12-16 14:43:33 -07:00
nathan
3f71a75c86
Avoid error if expand finds nothing for the value (returns null)
2021-12-16 13:05:13 -07:00
nathan
9a3753eb93
Lets try this fix for the ID problem
2021-12-16 11:28:07 -07:00
Ralf Becker
08da663007
fix PHP Warning: explode(): Empty delimiter
2021-12-16 20:22:57 +02:00
Ralf Becker
ff47694b24
fix still not working sync-report for accounts addressbook
...
turns out Microsoft AD also returns a "Virtual List View error" if sorting by standard LDAP (modify|created)timestamp, have to use when(Changed|Created) instead, as for filter
2021-12-16 20:07:57 +02:00
Hadi Nategh
170ac4d6e2
Fix error Cannot read properties of null (reading 'split')
2021-12-16 11:39:43 +01:00
nathan
a027649ae5
Fix the failing clone()
2021-12-15 11:49:18 -07:00
Hadi Nategh
8f81266b1d
Fix styling for buttons supposed to be displayed with max content (e.g. some nm header buttons)
2021-12-15 16:08:41 +01:00
nathan
528134cfac
Adapt nextmatch to work with webcomponents + readonly datetime widget
2021-12-14 16:55:57 -07:00
Ralf Becker
dc8b0a7080
fix SQLfs fsck to query errors in chunks of 500, in case there are a huge numbers of them
2021-12-14 21:25:07 +02:00
nathan
a7a84df7e5
Etemplate: Set a gap instead of using margin
2021-12-14 08:55:34 -07:00
Hadi Nategh
b648d4593d
Add colorpicker into ready WC widgets
2021-12-14 14:47:58 +01:00
nathan
0ea746a1a6
Api: Fix missing link delete button from link list
2021-12-13 09:16:35 -07:00
Hadi Nategh
ebfa396195
Decode html entities used in inline image sources because tinymce encodes them
2021-12-13 16:40:32 +01:00
nathan
d7a001cef0
Documentation fix
2021-12-10 13:42:38 -07:00
nathan
ea2004173f
Etemplate: Fix readonly was still giving a value
2021-12-10 13:24:06 -07:00
nathan
82b3abc290
Etemplate: Some more tests for readonly
2021-12-10 11:15:02 -07:00
nathan
684d0846dc
Api: Attributes can contain multiple translatable substrings wrapped with {}
2021-12-09 11:32:31 -07:00
nathan
081b692dd1
Fix webcomponent children were not fully loaded before et2_ready callback was called
2021-12-09 10:54:37 -07:00
nathan
4fe9f6c614
Api: Stop images inside boxes from stretching
2021-12-09 09:26:58 -07:00
Hadi Nategh
d42f20cf38
Fix issue contact plus button sometimes gets stuck
2021-12-09 15:08:42 +01:00
nathan
f126d7fd08
Fix wrong sizing on link list file mimetype icons
2021-12-07 16:28:48 -07:00
nathan
6f5cc48098
Fix wrong sizing on contact list avatar image
2021-12-07 15:42:15 -07:00
nathan
e80f272a07
Fix streched infolog type icons
2021-12-07 14:35:28 -07:00
nathan
50f4b5cd47
Fix missing calendar participant + button
...
set_readonly() was missing, getWindowTitle() was using .options.value instead of get_value()
2021-12-07 13:36:53 -07:00
nathan
a73f0771e6
Fix TypeError: Cannot read properties of undefined (reading 'position')
...
Caused by LitElement not having a styles property. Just skip those to avoid the error
2021-12-06 14:42:17 -07:00
nathan
d69d57e6e9
Merge branch 'master' into web-components
2021-12-06 10:52:10 -07:00
Hadi Nategh
c115e762b1
Add underline button into html editor's toolbar
2021-12-06 10:14:37 +01:00
Ralf Becker
af08ee1495
pending translations from our translation server
2021-12-04 15:44:14 +01:00
nathan
d126834468
* Etemplate: Add link icon overlay to link list
2021-12-03 14:28:54 -07:00
nathan
98882c3159
Replace hyphen in utf-8
2021-12-03 14:28:54 -07:00
nathan
41c2f0c92b
Api: Force merge placeholder charset to UTF-8, avoids mangled accent characters
2021-12-03 14:28:54 -07:00
Ralf Becker
cda751ac58
fix broken filemanager after PM integration commit
...
array_merge_recursive accumulates values in sub-arrays:
array_merge_recursive(['nm'=>['get_rows'=>'a.c.m']], ['nm'=>['get_rows'=>'a.c.m']]) === ['nm'=>['get_rows'=>['a.c.m','a.c.m']]
2021-12-03 14:28:54 -07:00
Ralf Becker
ec4edf84d8
* CardDAV/ActiveDirectory: fix empty account-addressbook if sync-collection-report is used
...
Microsoft AD can NOT filter by (modify|create)TimeStamp, we have to use when(Created|Changed) attribute
2021-12-03 14:28:54 -07:00
nathan
5af7d0f644
* Etemplate: Add link icon overlay to link list
2021-12-03 14:18:48 -07:00
nathan
0e5e2f3ceb
Replace hyphen in utf-8
2021-12-03 11:37:47 -07:00
nathan
2453bafbe9
Api: Force merge placeholder charset to UTF-8, avoids mangled accent characters
2021-12-03 11:36:02 -07:00
Ralf Becker
5bd2b86683
fix broken filemanager after PM integration commit
...
array_merge_recursive accumulates values in sub-arrays:
array_merge_recursive(['nm'=>['get_rows'=>'a.c.m']], ['nm'=>['get_rows'=>'a.c.m']]) === ['nm'=>['get_rows'=>['a.c.m','a.c.m']]
2021-12-02 22:18:41 +02:00
Ralf Becker
4d014fab49
* CardDAV/ActiveDirectory: fix empty account-addressbook if sync-collection-report is used
...
Microsoft AD can NOT filter by (modify|create)TimeStamp, we have to use when(Created|Changed) attribute
2021-12-02 20:09:08 +02:00
nathan
2545c8fde1
Merge branch 'master' into web-components
2021-12-01 15:31:45 -07:00
Ralf Becker
c688315141
fix syntax error under PHP 7.3
...
7.3 is still the minimum requirement for 21.1
2021-12-01 19:59:41 +02:00
nathan
26595b4cba
* Projectmanager: Add calendar integration so projects can be shown as events in calendar
2021-12-01 10:32:32 -07:00
Ralf Becker
0685005f41
* Guacamole/Backup/Restore: fix not working restore for Guacamole
...
disabling constraints and only truncate Guacamole tables, not dropping and creating them again
2021-11-30 21:56:17 +02:00
Ralf Becker
5cd4fc0612
Changelog for 21.1.20211130
2021-11-30 11:17:50 +02:00
Ralf Becker
33ec3f05a7
fix Undefined array key warning
2021-11-29 16:45:48 +02:00
Ralf Becker
0a2488ed99
fix a couple of Undefined array key warnings
2021-11-29 16:35:50 +02:00
Ralf Becker
cbb72e06d9
fix / work around PHP 8.0 Error Call to undefined method EGroupware\Api\Etemplate\Widget\Vfs::set_attrs()
2021-11-24 20:57:45 +01:00
nathan
da6ff9d639
Merge branch 'master' into web-components
2021-11-24 09:42:28 -07:00
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
nathan
32d5bae817
Fix nm left template in wrong place
2021-11-19 11:57:22 -07: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
105b0705b1
- Fix duplicated row from template above nextmatch
...
- Fix favorite in wrong place
2021-11-18 14:37:23 -07:00
nathan
7831529ecb
Improve warning about parenting for WC widgets into legacy widgets
2021-11-18 14:34:13 -07: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
52a2d4e9bb
Clear tree before setting options to avoid duplicates
2021-11-10 15:00:32 -07:00
nathan
d15d7a3426
Implement parent_node attribute
...
Fixes calendar sidebox was not shown
2021-11-10 13:41:23 -07:00
nathan
7b11a25b8d
Fix some legacy parent issues where parent DOM node was not found when needed
...
- Checking & waiting for promises
- Could not get DOM nodes from nm header sub-templates
2021-11-10 11:47:07 -07: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
Hadi Nategh
5cf0ced64a
Add missing jquery-ui.min.js
2021-11-09 11:46:10 +01: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
c7e6baed69
Fix datetime didn't handle '0' as empty / blank
2021-11-08 13:40:28 -07: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
b78b7c3960
Fix formatter tests to work independant of timezone when run
2021-11-04 09:25:37 -06: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
ca429d0fae
Tests for date + time parsing & formatting, and fixing the bugs they revealed
2021-11-03 13:49:39 -06: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
Hadi Nategh
f21127df8f
* Filemanager: Fix video controller not working in filemanager gallery
2021-11-02 17:43:56 +01:00
nathan
312bf62adc
Implement readonly for date widget
2021-11-01 10:21:08 -06: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
Hadi Nategh
118b9c0e92
Fix onchange event not working for date-range widget
2021-10-22 13:16:33 +02: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
3f5af3eeb2
Api: Change app placeholders list to use some more horizontal space, stop hiding common & user placeholders
2021-10-20 15:26:39 -06: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
068e3feff0
Api: Fix setting the date min attribute to a number did not work
...
jQueryUI timepicker checks the type of variable
2021-10-19 14:15:37 -06:00
nathan
7a7f80f7d9
Api: Fix replacements from sub-apps (eg: infolog contact) were missing
2021-10-19 09:17:22 -06:00
nathan
2256a26327
Make date widget work a little better WRT timezones
2021-10-18 16:03:05 -06:00
nathan
fbbc466c78
Merge branch 'master' into web-components
2021-10-18 10:56:05 -06:00
nathan
cbe32069c2
Fix kanban merge into document stopped working with introduction of PDF checkbox
2021-10-18 09:42:12 -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
Hadi Nategh
b84ef08c29
Set node property for inputWidget as it's expected to contain input node
2021-10-13 15:36:33 +02:00
Hadi Nategh
f454536165
WIP implementing Iframe widget:
...
- Get some styling
- An approach to display label slot
2021-10-13 12:17:07 +02:00
Hadi Nategh
76a1f3c584
WIP implementing Iframe widget:
...
- Add fullscreen option
2021-10-13 11:11:52 +02: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
Hadi Nategh
13e717ce68
Merge pull request 8feac04979
#108 from Alexandros into the master
2021-10-11 10:34:19 +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
Hadi Nategh
be57764fa6
WIP implementing Iframe widget
2021-10-08 16:03:09 +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
nathan
66f5c4bfc2
Add start of Et2Date tests
2021-10-07 08:41:53 -06: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
Hadi Nategh
b837a0235e
Fix styling in toolbar
2021-10-06 15:44:21 +02: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
nathan
4b67e78012
Fix selectbox grouped options were not using value if provided
2021-10-04 14:41:08 -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
Hadi Nategh
b52abb9b62
Implement a test for Colorpicker widget
2021-10-04 14:42:30 +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
806aa542a1
Fix some more tests that don't work anymore due to things changing / files moved / other reasons
2021-09-30 13:15:37 -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
fdf6422da7
Fix some errors in tests due to changing method signatures
2021-09-30 10:14:38 -06:00
Ralf Becker
db83cc437c
refactor client-side form is not valid/submittable check of submit method into an own method isInvalid()
2021-09-30 09:26:36 +02: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
f6828a8205
Placeholder dialog: Add "name, email, phone snippet", fix some more missing translation issues
2021-09-28 10:16:57 -06:00
nathan
a39eeef7e7
Placeholder dialog: Fix some missing translation issues
2021-09-28 09:49:29 -06:00
Hadi Nategh
ae5e11f7a2
Translate details title before setting it into the DOM
2021-09-28 17:08:36 +02: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
nathan
90b3b47dc9
Placeholder dialog upper case first letter of placeholder category & placeholder name
2021-09-27 09:13:33 -06:00
nathan
9344f2df9f
Placeholder dialog translations
2021-09-27 09:10:18 -06:00
Hadi Nategh
6f8fccb1ad
Get mail app working (we use old-box widgets until replacing splitter with a web-component)
2021-09-27 16:14:42 +02:00
Ralf Becker
e640873fc0
implement and document PATCH
2021-09-25 12:38:08 +02:00
nathan
e460ed52d4
Et2Date style improvements
2021-09-24 11:13:14 -06: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
901bb2b70d
Fix Calendar popup was opening with wrong date
2021-09-23 14:12:15 -06:00
nathan
25773a929f
Merge remote-tracking branch 'origin/master' into web-components
2021-09-23 10:22:18 -06:00
Ralf Becker
7562dd9fe3
Changelog for 21.1.20210923
2021-09-23 15:10:07 +02:00
nathan
704b6c6dc2
Add user placeholders into placeholder dialog
2021-09-22 11:15:49 -06:00
Hadi Nategh
d518a2b118
Move framework push boradcast method into base class
2021-09-22 11:54:01 +02:00
Hadi Nategh
b66db79289
Fix toolbar's 3dots broken styling
2021-09-22 10:16:29 +02: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
6884902d93
W.I.P on collabora placeholder insert
...
- better button styling
- make entry select app = selected app
2021-09-20 16:28:20 -06:00
nathan
29bd739955
W.I.P on collabora placeholder insert
2021-09-20 15:34:55 -06:00
Ralf Becker
13198e12c9
Use EGW_(USER|PASSWORD) from doc/phpunix.xml instead of hardcoded demo/guest
2021-09-20 18:52:25 +02: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
nathan
fa5dcc2a3c
Fix uneeded remove & re-add of WebComponent widgets to legacy parent
...
This fixes the incorrect vertical ordering of the preferences dialog (was tabs, header, footer )
2021-09-17 13:12:24 -06: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
nathan
23f0a95447
Limit container width to 100%
...
Fixes site configuration pages go too wide
2021-09-17 09:24:12 -06:00
nathan
d23b55fe6d
Change how boxes justify contents so buttons group on the left again.
...
Children without a max-width should still expand to share space.
2021-09-17 09:16:58 -06:00
Ralf Becker
8793f7895b
fix excess separator, if not 2nd street-line
2021-09-17 11:58:39 +02:00
nathan
59ee0b57f2
Get translations working in labels & statustext
2021-09-16 14:56:13 -06:00
nathan
e279945953
Try removing width:100% from box to help with sizing nested boxes
...
This should fix the problem with timesheet.edit delete button being pushed off to the right
2021-09-16 13:49:48 -06:00
nathan
abd2e3804a
- Fix default button image was not working
...
- Fix disabled="false" in template sort-of disabled buttons instead of them working normally
This fixes CRM view close button
2021-09-16 13:37:59 -06:00
Ralf Becker
0768f5fadf
WIP REST Api for contacts
2021-09-16 20:53:43 +02:00
nathan
d6ad0d986c
Changes from what we learned - using slots & not overriding render() to get all that Lion has
2021-09-16 11:03:46 -06:00
Hadi Nategh
029f75b9bc
Add getValue, setValue, clear button handler and styling for colorpicker
2021-09-16 11:38:09 +02:00
Ralf Becker
4063f9fcdb
modify <buttononly.../> --> <et2-button type="buttononly"...></et2-button>
...
also adding a class .et2_buttonFitContent and using it for filemanager.admin
2021-09-16 09:03:15 +02:00
nathan
44fcd07f6b
Hopefully fix some out-of-order children when the first child of a box is a legacy widget
2021-09-15 16:29:17 -06:00
nathan
d68b8fdfe4
Fix disabled property/attribute was not getting reflected down to node, and Et2Box was missing the disabled style
2021-09-15 14:59:31 -06:00
nathan
23f8bc24c2
Fix some button stuff
...
- Submit / Cancel action was not being called correctly, so cancel buttons were not skipping change check
- Implement default image & class based on ID
2021-09-15 11:08:44 -06:00
Ralf Becker
38e2167166
WIP REST API for contacts using JsContacts draft
2021-09-15 18:45:45 +02:00
nathan
d5652c2f7e
Bind app.appname.function context so widget can't lose it
2021-09-15 09:23:15 -06:00
nathan
decd64e7c3
Getter/Setter shenanigans to
...
- get widget's DOM ID to have the instance template as prefix
- keep widget.id as what's in the template, matching legacy
- widget.dom_id gives the DOM ID, matching legacy
2021-09-14 16:01:22 -06:00
nathan
277f465c50
Fix onclick to keep originally bound click handler context.
...
Fixes app.appname.func callbacks had widget as context
2021-09-14 13:23:17 -06:00
nathan
442de20d90
Add missing set_disabled() method
2021-09-14 11:50:10 -06:00
nathan
3c7da204c5
Fix button icons so they don't get space when not there
2021-09-14 11:43:43 -06:00
nathan
6883760d6f
Get Et2Textarea to automatically fill their available space if no width or height attribute is set
2021-09-14 11:12:33 -06:00
nathan
373cf6590d
Merge remote-tracking branch 'origin/master' into web-components
2021-09-13 14:56:08 -06:00
nathan
dd47af5d09
Remove debug
2021-09-13 14:52:28 -06:00
nathan
76ad419420
Fix index templates had nextmatch row nodes below the nextmatch
2021-09-13 14:41:36 -06:00
nathan
6a70efcc34
Fix left/right align CSS to work with out-of-order children
2021-09-13 11:57:23 -06:00
nathan
b7e34ed779
Fix child order when children are a mix of WebComponent & legacy widgets
2021-09-13 11:26:29 -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
6abb239705
Avoid error if widget does not have transformAttributes method
...
This might be an issue with not properly implemented DetachedDOM interface
2021-09-09 13:43:16 -06:00
Hadi Nategh
722172fff2
Adjust toolbar's triangle icon styling
2021-09-09 15:46:52 +02:00
Hadi Nategh
5dbba31285
Fix toolbar list header taking a while to get opened
2021-09-08 12:07:47 +02:00
Hadi Nategh
3fc0823f38
Adjust background and height for toolbar's header_list 3dots menu
2021-09-07 16:56:50 +02:00
Hadi Nategh
91d74767fe
Add an option to configure toolbar's list header style
2021-09-07 16:30:53 +02:00
Hadi Nategh
78d7f20ed8
Disable default background for et2_toolbar
2021-09-06 15:40:35 +02:00
nathan
6fe2ec6c65
Fix readonly was not hiding buttons
...
in Lion, they already have functionality on readOnly
2021-09-03 14:53:51 -06:00
nathan
347ea25131
Fix webcomponent attributes (class) were causing errors in nextmatch instead of being checked for variables
2021-09-03 14:45:45 -06:00
nathan
968a2d03bb
Fix widget class in .xet file was not showing up on webcomponent element
2021-09-03 14:44:52 -06:00
nathan
4cafdeb359
Fix webcomponent children of webcomponents did not get properly added when cloned.
...
Fixes infolog description was missing
2021-09-03 13:08:49 -06:00
nathan
dccf43f3e3
Fix clone & child handling
...
This gets webcomponents (Et2Box) working in nextmatch
2021-09-03 11:20:53 -06: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
3619bd6ae1
Fix child widget handling to handle both legacy and webcomponent children the same, as much as possible
2021-09-02 13:40:26 -06: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
nathan
25ba3e477a
- Set a max-width on buttons so we can let them flex
...
- Fix missing button label
2021-09-02 09:43:00 -06:00
nathan
637bd9fe5b
Style changes on Et2Box, now supporting the align [left|right] property.
2021-09-02 09:39:43 -06:00
Ralf Becker
86c92dcdf6
allow pushing to multiple users in one request
2021-09-02 09:39:43 -06:00
Hadi Nategh
53f156a66b
WIP implementing colorpicker widget
2021-09-02 16:47:49 +02: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
61da5c544a
Merge branch 'master' into web-components
2021-08-27 11:40:22 -06:00
nathan
8a2b717c51
Fix some type issues to make everything play more nicely together
...
(Not complaining about things from parent classes being missing, mostly)
2021-08-27 11:21:40 -06:00
Ralf Becker
fb69cf39fd
replace all "(../)+node_modules/" with bare specifiers
2021-08-27 08:13:36 +02:00
Guy Bedford
2526b0460e
fix: node_modules resolutions
2021-08-27 07:58:30 +02:00
nathan
4218b132f9
- Sort out some type issues to reduce warnings/duplication
...
- Some tests for textbox
2021-08-26 12:59:13 -06:00
Ralf Becker
44ae9650f8
legacy-load old javascript from etemplate(1) and phpbrain, to fix eg. DB-Tools
2021-08-26 17:51:45 +02:00
nathan
181b1c03ae
Fix imports to work with rollup
2021-08-26 09:20:41 -06:00
Hadi Nategh
3adec01e58
Fix youtube video starts to play automatically after being seeked to a time
2021-08-26 12:11:24 +02:00
nathan
2e712c47bc
Move the rest of the WebComponents into their own directory to get ready for tests
2021-08-25 15:35:06 -06:00
nathan
584d6bf51d
Add some button tests
2021-08-25 15:24:27 -06:00
Nathan Gray
3e0f302bb5
Remove unneeded import
2021-08-25 11:34:10 -06:00
Nathan Gray
96c8e61127
Remove unneeded import
2021-08-25 11:33:24 -06:00
nathan
ef3848fd3c
- Fix including everything just for a unit test
...
- Start of some tests for Et2Button
2021-08-25 11:32:15 -06:00
nathan
d656eb0e69
Javascript unit testing
...
Runs over all files in api/js/etemplate/<widget>/test and <app>/js/test folders
Run from the commandline with: npm jstest
Can also run & watch for changed files, check package.json for scripts.
2021-08-24 14:52:09 -06:00
nathan
d127cae5c6
Add get_value() to match legacy
2021-08-24 14:44:45 -06:00
nathan
538e483499
Merge branch 'master' into web-components
2021-08-23 15:41:27 -06:00
nathan
b393375823
Fix readonly property to match parent
2021-08-23 15:26:00 -06:00
nathan
8f784cd7b3
Remove setting defaults to undefined. It doesn't help the sizing issue, and it causes problems in the parent's size calculations
2021-08-23 13:09:45 -06:00
nathan
e3e3def64c
Use Lion's SlotMixin to handle button icon instead of managing it ourselves
2021-08-23 11:49:17 -06:00
nathan
17b4278ca2
Implement iterateOver for children
2021-08-23 10:21:51 -06:00
Ralf Becker
0203ce5a1f
also augmenting Promise returned from egw.request() with an abort method and using that in link-widget
2021-08-23 09:37:18 +02:00
Ralf Becker
6c641f824b
fix missing abort method for link-widget
...
also remove jQuery.proxy
2021-08-22 11:55:29 +02:00
Ralf Becker
70e838b267
modify <textbox multiline="true".../> --> <et2-textarea...></et2-textarea>
2021-08-21 09:55:21 +02:00
nathan
64860e12f1
Better layout for textarea, but it's still not filling
2021-08-20 16:11:59 -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
nathan
0c6cd22bcd
Remove debugger
2021-08-20 15:51:14 -06:00
nathan
f00e4fb708
- onclick is fine being an attribute
...
- Avoid error when calling loadingFinished on a webComponent and the parent does not give/have a DOM node
2021-08-20 10:37:41 -06:00
nathan
e6ecdd1b25
Fix onclick context was bound to the widget class instead of the widget instance
...
This caused any onclicks that used "widget" variable to fail.
2021-08-20 10:23:39 -06:00
Hadi Nategh
9dfee3f025
Extra padding on buttons is no longer necessary for new jQuery ui version
2021-08-20 10:27:55 +02:00
Hadi Nategh
2125e14b43
Import missing date library
2021-08-20 10:22:15 +02:00
nathan
e0144fcec7
Fix dialog not displaying set value
2021-08-19 15:32:47 -06:00
nathan
381d12dfa2
Get Et2Date loading & formatting value
2021-08-19 15:09:00 -06:00
nathan
b4a13037e2
- Reduce duplication with loadWebComponent() by making it a function & exporting
...
- Start to implement readonly attribute
2021-08-19 10:54:32 -06:00
nathan
0ea5e2e35f
Define the constant only once...
2021-08-19 08:16:36 -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
Ralf Becker
1596bec75c
get form::name() legacy function working by making used et2_form_name function global, if used
2021-08-19 10:22:40 +02:00
nathan
445f394217
Fix some issues
...
- Some legacy widgets can not provide their DOMNode right away, but some give errors when we ask at the wrong time. Now catching those.
- Grid could not set disabled on web components, causing error
- Boxes were trying to work on labels they didn't have, causing error
2021-08-18 17:41:23 -06:00
nathan
9231b32fce
Vfs: Fix Stylite/Links/StreamWrapper was not respecting backup parameter
2021-08-18 15:59:54 -06:00
Hadi Nategh
466371fa03
Check element exist before applying to sortable as sortablejs needs an HTMLElement instance
2021-08-18 11:15:38 +02:00
Hadi Nategh
4e7ebc509a
Make sure the DOM object is there before using it
2021-08-18 11:02:48 +02: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
nathan
39886a149d
* Api: Fix entry list stops scrolling if a row is updated while the tab is not visible
2021-08-17 13:56:52 -06:00
Hadi Nategh
96e960226f
Fix volume gets initiated on a wrong object becuase the youtube object is not yet ready
2021-08-17 12:01:53 +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
Ralf Becker
6d37e22499
web-components must not be self-closing (no "<et2-button .../>", but "<et2-button ...></et2-button>")
2021-08-16 19:54:58 +02:00
Hadi Nategh
61764809c8
Add getter/setter for video's mute option and fix volume unit
2021-08-16 17:49:47 +02:00
Hadi Nategh
4c1f398322
Fix volume and playbackrate for both youtube and html video
2021-08-16 13:48:10 +02:00
Hadi Nategh
5f4e910d0d
Do not activate cropper when the widget is set to readonly
2021-08-16 12:29:56 +02: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
Ralf Becker
29ab26b731
fix egw.request() which was using jQuery defered.always() which egw_json.sendRequest() no longer returns in favor to a Promise
2021-08-14 08:42:37 +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
Hadi Nategh
782de6d887
Remove excessive bracket
2021-08-13 12:56:20 +02:00
Hadi Nategh
a7ea5b51bf
Implements volume and playback options for video widget (both for html video and youtube)
2021-08-13 12:39:38 +02:00
nathan
35e5d57b2a
Merge branch 'master' into web-components
2021-08-12 13:22:51 -06:00
nathan
54e5826fc7
Get the link entry app selection menu working again
2021-08-12 11:21:49 -06:00
nathan
fac1dfb8d4
Merge branch 'master' into web-components
2021-08-12 10:35:46 -06:00
nathan
243d769d7c
- Change filenames to match classnames
...
- Change node import syntax
2021-08-12 10:32:05 -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
Ralf Becker
72699fad30
fix ESM module import (no currly brackets) as suggested by Guy Bedford
2021-08-11 19:28:01 +02:00
Hadi Nategh
23c27659fc
Fix broken styling of sidebox app lists
2021-08-11 16:50:01 +02:00
Hadi Nategh
8743bf64b0
Replace nm column jquery-ui sorting with sortablejs
2021-08-11 16:49:51 +02:00
Hadi Nategh
af2a2a016e
Fix broken widget tree actions because of unexpected DOM Element object
2021-08-11 16:49:39 +02:00
Hadi Nategh
572908e300
Get favorites list sorting working with Sortablejs
2021-08-11 16:49:29 +02:00
Hadi Nategh
5777ebeb75
Get et2_grid sortable working with sortablejs
2021-08-11 16:49:16 +02:00
Hadi Nategh
a63416f6d6
Get fw sidebox sortable items working with sortablejs and removes the jquery.sortable
2021-08-11 16:43:16 +02:00
Hadi Nategh
af7b1a0fe0
Remove the tap-and-hold files
2021-08-11 16:43:16 +02:00
Hadi Nategh
7042219529
Remove tab-and-hold jquery plugin and use native touch events to implement something similar
2021-08-11 16:43:16 +02:00
nathan
db7828ad1d
Add et2-box (& et2-hbox & et2-vbox) WebComponent
...
Box can have legacy & webcomponent children.
Used here in infolog edit created & modified row
2021-08-10 15:02:52 -06: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
5f7bafd030
allow to explicit register callbacks for the broadcasted push messages
...
egw.registerPush(Function)
The callback should have a bound context, if it requires one!
2021-07-30 15:21:58 +02:00
Hadi Nategh
93c390139b
Fix error TypeError: Cannot read property 'length' of undefined
2021-07-26 10:10:30 +02:00
nathan
30d835fa39
- Get label "for" attribute working when target is a WebComponent
...
- Remove requirement that tooltip target be jQuery, get tooltips working on WebComponents
2021-07-23 10:18:45 -06:00
Ralf Becker
4240f4cf01
Changelog for 21.1.20210723
2021-07-23 08:24:45 +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
nathan
610d8e1547
Try out Lion as base for button.
...
Much easier to customize, though not without its issues:
- Lion give us some stuff to handle validation, forms & input that I haven't looked into
- Slightly different mixin structure, I might be missing out on something
- Properties in extending class cause TypeScript error, but still work
2021-07-19 11:57:06 -06:00
Ralf Becker
0a1e784f2e
egw.getCache(name) function to get a cache-object shared between all EGroupware windows and popups
...
used to share server-side generated options for et2_selectbox
also removed nextmatch specific code from et2_selectbox which seems no longer necessary
2021-07-19 17:02:37 +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
efb1711eef
always sending notification, status and filemanager preferences with user-date to avoid requesting them synchronous
2021-07-19 11:23:35 +02:00
Ralf Becker
3a618937a9
do NOT check Content-Type header as it's sometimes not set to application/json
...
parsing JSON will error out, if payload is no JSON anyway
happens with mark-as-spam and SpamTitan
2021-07-19 10:24:58 +02:00
Ralf Becker
59ac3f4bda
always name generated file app.min.js so client-side can load it without knowing source is .ts or .js
...
--> fixes client-side initiated load errors
2021-07-19 08:31:06 +02:00
Ralf Becker
ce0a513187
egw.preference(name, app, true) returns now a promise to query preference async
...
changed notifications to query preference async together with lang-files
fixed error-handling in new egw.json()
2021-07-16 14:50:06 +02:00
Ralf Becker
87694e660c
seems to be no need to send a synchronous request
2021-07-16 12:03:29 +02:00
Ralf Becker
50b8839609
fix not working InfoLog index: synchronous request must return fulfilled promise
2021-07-16 11:49:53 +02:00
Ralf Becker
b780c7ebd8
replace jQuery.ajax with fetch (or XMLHttpRequest for synchronous requests)
2021-07-16 08:47:22 +02:00
nathan
723ec70009
Get button to validate server-side
2021-07-15 10:12:47 -06:00
nathan
47e296c947
Get to the point where a button will submit. Yay.
...
Most other input widgets can build off this base.
It doesn't validate yet because of the server side, but the client side is working.
2021-07-15 10:08:26 -06:00
nathan
1294bc99c6
Some cleanup
...
- Add but comment out decorators plugin so we know about it, but don't use it yet
- Better instanciation of button image node
- Remove previous mixin experiments
- Start on trying to get click handler parsing & working
2021-07-14 16:11:20 -06:00
nathan
b0322c549a
Attribute parsing & basics of WebComponents looking like et2 widgets
2021-07-14 09:49:36 -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
nathan
73df101e8e
Better tests & message for symlink test
...
no longer checking invalid (nlink = 2) or undefined (stat['url') things to see if it worked
2021-07-13 10:33:50 -06: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
Ralf Becker
1563337458
pending translations from our translation server
2021-07-12 08:15:16 +02:00
nathan
e474333bc8
Get stylite gantt extra bits running
2021-07-09 11:56:06 -06: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
a5ad691757
deprecated egw.includeJS() in favor of es6 import statement
...
with egw composition happening in main window the used import statement happens in that context and NOT in the window (eg. popup or iframe) this module is instantiated for!
2021-07-09 17:27:22 +02:00
Ralf Becker
4f95ebb510
add a missing import
2021-07-09 14:50:15 +02:00
Ralf Becker
65502ace6e
re-added daily cache-buster for app.js and removed explicit timepicker include causing a double include
...
(we still sometimes get a jQuery.datepicker is not defined, but it seems a timing issue and is NOT fixed by including it twice!)
2021-07-09 10:07:31 +02:00
Ralf Becker
edacfc12cb
remove (unnecessary) double egw.min.js import
2021-07-09 08:15:17 +02:00
Ralf Becker
ff92db4e33
release session in non-json.php requests like lang.php, as it blocks parallel execution
2021-07-09 07:46:18 +02:00
nathan
4627b3b2b1
Remove VfsTest, no longer needed as test has been moved into StreamWrapperBase so it can be run on all StreamWrappers ( a63b82d3
)
2021-07-08 10:01:33 -06:00
Ralf Becker
5b8923f548
replace include of egw.js with egw_core.js, which provides the egw.extend
...
fixes the stray egw.js include
2021-07-08 17:04:48 +02: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
Hadi Nategh
2be47ffce2
Fix input field in sharing dialog doesn't get a fullwidth
2021-07-08 16:15:43 +02:00
nathan
a63b82d34e
Move symlink test into StreamWrapperBase so it can be run on all StreamWrappers
2021-07-07 15:57:40 -06:00
nathan
35dccf17ae
Add missing cleanup of test files
2021-07-07 14:47:04 -06:00
nathan
2e597997e0
Fix wrong permission constant used, resulting in permissions when there shouldn't be
2021-07-07 14:42:10 -06:00
nathan
157926ab00
Better VFS test cleanup
2021-07-07 13:11:44 -06:00
Ralf Becker
a8ae92e1cc
add cache-buster to framework bundle
2021-07-07 16:51:31 +02:00
Ralf Becker
b2a48fc942
fix vfs-select dialog destroyed et2 session of popup calling it
...
dialog set etemplate_exec_id of popup, to be able to submit to server, but must NOT destroy the et2 session when the dialog closes
et2_dialog now calls etemplate2.clear(true, true) to keep app-object AND et2 session
2021-07-07 16:29:04 +02:00
Hadi Nategh
052f5f23cc
Remove framework object from import statement which would override the actual object
2021-07-07 12:31:11 +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
Ralf Becker
e8da7caa64
fix after rollup build popups need extra reload
...
caused by no longer necessary import of etemplate2 in egw.js, as Promise works and etemplate2 is global
2021-07-07 10:32:06 +02:00
Ralf Becker
cf101c8e13
fix not working nm_*_popup actions and others, see #60364
2021-07-07 09:30:29 +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
0904057714
Solve some calendar issues that were breaking add / edit
...
- Date widget did not find timepicker.formatTime() when it wanted it
- Faked parent widget was not a good enough fake, added better checking
2021-07-06 11:05:03 -06:00
Ralf Becker
b5015299ee
add missing sprintf import
2021-07-06 16:41:23 +02:00
Ralf Becker
5505c9a314
make etemplate2 global, as we need it to check an app uses it and then call methods on it, fixes #60374
2021-07-06 16:00:10 +02:00
Hadi Nategh
81bc236045
Fix vfsSelectUI destroys et2 object after dialog being closed
2021-07-06 15:59:51 +02:00
Hadi Nategh
89695620bc
Make sure et2 widgets are there before the container into vfsSelectUI app object
2021-07-06 15:50:49 +02:00
Hadi Nategh
70faf346e4
Fix error egw_keycode_translation_function is not defined
2021-07-06 14:53:56 +02:00
Ralf Becker
75fddd325b
if value has already been set, re-set it by it's id(s), fixes #60304
2021-07-06 14:43:13 +02:00