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
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
4f225054f8
WIP on Date widget
...
Something's not right with the parser/formatter, they're not getting called.
Times not handled yet
2021-08-13 15:26:18 -06:00
nathan
243d769d7c
- Change filenames to match classnames
...
- Change node import syntax
2021-08-12 10:32:05 -06: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
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
nathan
b0322c549a
Attribute parsing & basics of WebComponents looking like et2 widgets
2021-07-14 09:49:36 -06: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
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
89695620bc
Make sure et2 widgets are there before the container into vfsSelectUI app object
2021-07-06 15:50:49 +02:00
Ralf Becker
51b0888b5d
fix diverse calendar errors #60294
...
thought not sure how this is supposed to work in 21.1, both look like a general problem
2021-07-06 13:06:32 +02:00
Hadi Nategh
1971fa0e18
Import vfsSelectUI
2021-07-02 11:44:11 +02:00
Ralf Becker
b88716c8b6
legacy load jQueryUI as tooltip has wired context problems if loaded as module
2021-07-02 08:52:18 +02:00
Ralf Becker
8c7722c8b0
1. loading dhmtlx(tree|menu) again via script tag
...
2. fixed not loaded app.js in egw_json by using import direct and not includeJS (and therefore removed additional include in et2_load)
3. adding cache-buster for egw.js and app.js endpoints to force reloads (not adding them for anything else, as it interferes with rollup
2021-07-01 14:36:51 +02:00
nathangray
3add958afa
The results of Guy Bedford's help
...
Egroupware will load into addressbook & show rows
Most base files should be bundled server-side & included
rollup.config.js controls the process
Still needs work:
- consider /dist directory for best-practice
- cleanup
- other built-in apps
- EPL / external apps need Guy's multi-stage work
2021-06-25 14:49:24 -06:00
nathangray
9242673aa1
- A first webcomponent (et2-button)
...
- Some mixin logic, not used but available
2021-06-23 15:39:58 -06:00
Ralf Becker
ee508c50b9
filter out legacy JS code from importmap and sort it
...
also only add extension-less includes for .ts files (was accidentally commented out) and fix some .js imports without extension
2021-06-12 11:44:28 +02:00
Ralf Becker
771d6c727f
got mail app.js incl. jsapi/app_base.js working
...
plus marking et2 methods returning promisses as async and removing cache-buster from includeJS calls in egw_action_common.js as it causes double loads
2021-06-11 10:11:13 +02:00
Ralf Becker
e18832e110
defer calls to app.* after et2_load is finished
...
changing et2_load egw_json plugin to return a promise for that
2021-06-11 09:05:57 +02:00
Ralf Becker
77a4aad7d6
got tree-actions in admin working and fixed tutorials (et2.load() stalled if no app.js or lang-files)
2021-06-10 14:54:30 +02:00
Ralf Becker
bfea641321
fix async loading caused app.js not being loaded before et2.load() tried to instantiate it
2021-06-08 17:13:30 +02:00
Ralf Becker
f91bca83e1
got et2 mostly working: timesheet.edit renders
2021-06-07 17:33:53 +02:00
nathangray
d367da6ba8
Etemplate: switch to tab of first invalid input, not last
2021-05-05 10:09:31 -06:00
Hadi Nategh
c370941c51
Keep private app objects if dialog gets destroyed
2021-04-20 15:30:46 +02:00
Hadi Nategh
c089e73678
Implements et2_audio widget
2021-03-10 14:52:32 +01:00
Hadi Nategh
65b24440a0
Implement widget countdown timer
2020-11-23 21:11:19 +01:00
Hadi Nategh
7d1cd4c12c
WIP Multitabs:
...
- Fix wrong ids generated for sideboxes
- Fix tab header refresh
2020-10-22 13:52:17 +02:00
Hadi Nategh
7f4535cf1d
WIP multitabs and CRM view
2020-09-30 13:19:36 +02:00
Hadi Nategh
cdbc5e3a71
Create new sidemenuEntry for tab target
2020-09-28 15:43:42 +02:00
Hadi Nategh
f88ae4f46a
Merge branch 'multitabs'
2020-09-25 11:30:32 +02:00
nathangray
293f9cc446
Etemplate: Different way to download generated files to avoid destroying sessions of not-visible etemplates
2020-09-24 15:18:22 -06:00
Hadi Nategh
4bf65486ef
WIP of framework's multitab implementation
2020-09-23 16:55:35 +02:00
nathangray
5379a0c924
Home using non-global EgwApp instances for portlets
2020-07-30 13:00:53 -06:00
nathangray
3e9794e526
Etemplate: Do not bother to resize hidden etemplates
...
Fixes Admin > App > Site config gets resized incorrectly when switching to another app's tab & back
2020-07-22 15:51:42 -06:00
Ralf Becker
8e213a7de5
set id of DOM container, in case server-side returned a different eTemplate
2020-07-21 22:05:08 +02:00
nathangray
bd6b20bae8
Fix home cannot find its portlet templates
...
This reverts commit ff0cdf8143
.
2020-07-20 14:34:10 -06:00
nathangray
10846271f1
Close confirm improvements & fixes
...
- nextmatch is now always not dirty
- Logging the dirty widgets to console
- Fix searchbox did not fully doLoadingFinished()
2020-06-29 11:55:35 -06:00
nathangray
143be4dc98
Etemplate: Cancel buttons do not trigger the change/close prompt
2020-06-24 10:37:57 -06:00
nathangray
52714f0a63
Etemplate: Check dirty before closing, ask if there are changes
2020-06-19 13:27:41 -06:00
nathangray
aab5415873
* Etemplate: Password widget improvements - suggest password button, added as custom field type (stored encrypted)
2020-06-12 10:56:53 -06:00
Ralf Becker
ff0cdf8143
set id of DOMContainer, in case it changed because server-side send a different template
2020-06-04 17:04:32 +02:00
nathangray
ec6a3881e3
Still need to clear before loading or dialogs get doubled
2020-04-22 14:53:11 -06:00
nathangray
444babdbc8
Api: Take care of private app.js instances, make sure they're included in iteration.
...
Iterate over all app.js instances (public & private) using:
for (var app_obj of window.EgwApp) {...}
2020-04-21 15:36:17 -06:00
Hadi Nategh
0cc7ce12d0
merge master
2020-03-05 14:45:25 +01:00
nathangray
0f898acbb2
Fix action bugs where actions were not properly linking
2020-02-27 11:54:55 -07:00
nathangray
de426e1232
Some types & fixes
2020-02-25 09:05:32 -07:00
nathangray
49493a6af8
Convert etemplate2 to typescript
2020-02-24 15:16:40 -07:00