Commit Graph

1514 Commits

Author SHA1 Message Date
Hadi Nategh
9ea598070e Get vfs and expose working 2021-06-10 15:52:00 +02:00
Hadi Nategh
54fff9739a Add more missing import statements 2021-06-10 15:40:49 +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
Hadi Nategh
31c7b87faa Add splitter.js and make et2_dialog available globally 2021-06-10 14:21:41 +02:00
Hadi Nategh
f4d2ddde7d Get magicsuggest and tree widget working 2021-06-10 14:07:02 +02:00
Hadi Nategh
0730d4880e Remove couple of more jquery import statements 2021-06-10 13:57:33 +02:00
Ralf Becker
c51275fde3 got admin index incl. et2_tree and et2_date_ro working 2021-06-10 13:53:07 +02:00
Ralf Becker
5298336886 include jquery and other legacy js files via script tag 2021-06-10 11:38:54 +02:00
Hadi Nategh
42305a6562 Fix some imports for et2 widgets 2021-06-09 14:28:29 +02:00
Ralf Becker
08d7b7df3e fix async loading caused app.js not being loaded before et2.load() tried to instantiate it 2021-06-09 11:21:52 +02:00
Ralf Becker
38cb855017 fixing a couple more imports to get addressbook list show up 2021-06-09 11:11:34 +02:00
Ralf Becker
c440dffa54 exporting functions 2021-06-09 10:31:22 +02:00
nathangray
488f01aea9 Etemplate: Only re-set label if the new value is different
Fixes initialization could clear the link text if value was set first
2021-06-09 08:41:07 +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
8fa2bb466b fixed includeJS causing jQuery to be included twice and breaking plugins 2021-06-08 15:11:37 +02:00
Ralf Becker
304dbb95ab got empty nextmatch in timesheet working 2021-06-08 14:11:59 +02:00
Ralf Becker
f91bca83e1 got et2 mostly working: timesheet.edit renders 2021-06-07 17:33:53 +02:00
nathangray
be34aa1834 Etemplate: Change r/o URLs to use label as link text 2021-06-04 10:50:23 -06:00
nathangray
200aebd171 Etemplate: Fix taglist input was not getting name attribute set since c3bebf9c31 2021-05-31 09:39:30 -06:00
Ralf Becker
d3d8ff3493 * Mail/Admin: fix not working mail wizard
caused by loading app.js again and therefore this.et2 is not set --> only load / use egw.applyFunc() if not already set
2021-05-25 18:25:11 +02:00
Ralf Becker
5e151a6210 export hbox widget and mark parameter in getDOMNode() optional 2021-05-21 12:25:29 +02:00
nathangray
6790ffb273 Etemplate: Changes to adapt to get/set in valueWidget interface 2021-05-19 13:54:56 -06:00
nathangray
94f5c437e8 Etemplate: add get/set_value() to valueWidget interface 2021-05-19 11:15:12 -06:00
Ralf Becker
68e216abea fix missing the widget argument 2021-05-17 22:03:32 +02:00
Ralf Becker
fcbe746755 dynamic load app.js file for "app.$app.$func" type handlers, if not already loaded
so eg. a config.xet run by admin app could call a handler from the apps own app.js
2021-05-17 21:45:24 +02:00
nathangray
a4199de696 Etemplate: fix date widget popup could not be clicked 2021-05-17 11:49:56 -06:00
Ralf Becker
c4d9455fb4 allow to change video via set_src (and set_src_type) 2021-05-15 20:26:28 +02:00
nathangray
c3bebf9c31 Widget accessibility improvements 2021-05-13 10:01:38 -06:00
nathangray
b4b38d54ff Get rid of any extra whitespace in break string 2021-05-10 15:38:07 -06:00
nathangray
a94345bbed Etemplate: let break_title be optional based on space, and keep the actual characters 2021-05-10 11:55:22 -06:00
nathangray
dd9352e9c4 Etemplate: Fix links with title provided always displayed loading spinner 2021-05-10 11:00:41 -06:00
nathangray
d367da6ba8 Etemplate: switch to tab of first invalid input, not last 2021-05-05 10:09:31 -06:00
Hadi Nategh
47c7570862 Prevent vfs select dialog destroying session becuase of not being able to find the right app name (eg. admin mail account where app is different than current app) 2021-05-05 16:51:19 +02:00
Ralf Becker
52bbfbef0b allow "{one phrase} {other phrase}" syntax in all attributes marked as translate eg. labels 2021-05-01 14:22:34 +02:00
Hadi Nategh
3f3748dc87 fix uploaded photo in avatar widget not being updated after cropping it. Additionally, fixes avatar size used in lists (eg. nm) 2021-04-28 12:45:12 +02:00
nathangray
8ec1e46ea4 Etemplate: Catch errors when destroying editor so we can see what's going on, and not break 2021-04-21 15:38:10 -06:00
Hadi Nategh
c370941c51 Keep private app objects if dialog gets destroyed 2021-04-20 15:30:46 +02:00
nathangray
50b4067299 Add handling for confirm on button click that better matches normal execution path
This works better for buttons that are in a namespace
2021-04-19 10:09:49 -06:00
Hadi Nategh
85feb685f3 Ask the right app when getting appObjectManager, appname might not always be the current app (e.g. running app content under admin tab) 2021-04-19 14:00:38 +02:00
nathangray
602c08556d Don't try quite so hard to search for select options
It was finding & using ALL options if there was a namespace in the selectbox ID, but no options found.
2021-04-13 16:00:43 -06:00
Hadi Nategh
19c7162274 Fix positions for html editor bullist and numlist actions 2021-04-12 11:29:18 +02:00
Ralf Becker
c9a478c3d2 change getRoot() to return et2_container to get (g|s)etValueById() and friends working without a cast 2021-04-07 16:28:21 +02:00
Ralf Becker
e132cb0603 fix more then 59 seconds set for "hms" 2021-03-29 18:02:55 +02:00
nathangray
67ab00ad05 Etemplate: Fix some missing bits in searchbox 2021-03-25 11:21:45 -06:00
nathangray
87ff6842ea Api: Stop annoying "column saved" message that kept coming up 2021-03-24 10:21:02 -06:00
nathangray
d0c5f3c09b Commit changes from update to TypeScript 3.9.9 so we don't keep reverting them. 2021-03-22 11:42:50 -06:00
nathangray
93adb0dca5 Fix clicking on a link to app entry (not file) threw JS error instead of opening 2021-03-22 11:18:16 -06:00
nathangray
534c188d25 Put selected columns into nextmatch value so columns are saved in favourites 2021-03-22 11:09:41 -06:00
nathangray
15b0ecec22 Solve the problem with mail selecting the next mail and marking it as read when you move a mail by turning off the select-next-row thing for mail 2021-03-16 11:06:48 -06:00
Hadi Nategh
ec18782513 Exclude audio types from gallery list 2021-03-16 14:02:14 +01:00
Hadi Nategh
0f0b6e4154 Implement basic audio player for audio expose 2021-03-16 13:23:54 +01:00
Hadi Nategh
eed827fccd Add missing audio widget js 2021-03-11 12:36:32 +01:00
Hadi Nategh
72c334be02 Allow custom image url for et2_dialog buttons 2021-03-11 12:09:53 +01:00
Hadi Nategh
c089e73678 Implements et2_audio widget 2021-03-10 14:52:32 +01:00
Hadi Nategh
e5674bbc5d Fix missing mailvelope readonly properties from egw_app object 2021-03-09 15:19:27 +01:00
nathangray
4d9a30a041 Etemplate: Fix missing tooltip on toolbar checkboxes 2021-03-03 08:53:19 -07:00
Ralf Becker
9691a14279 interface for nm getValue() and activeFilters 2021-03-01 23:08:13 +02:00
nathangray
9128d15bb2 Etemplate: Fix some load bugs
- tabs got doLoadingFinished() multiple times if tablist was modified by data
- selectbox with cached options did not load correctly first time
2021-02-26 15:22:47 -07:00
Hadi Nategh
e5ea49a565 Fix youtube video autoplays itself after being seekTo on initiation. 2021-02-26 13:17:54 +01:00
Hadi Nategh
925285d370 Fix youtube video not being played for after initiation 2021-02-26 10:16:12 +01:00
Hadi Nategh
1f41bba904 Fix youtube API loading player after initiation 2021-02-25 13:51:20 +01:00
Hadi Nategh
2d4b0b8259 Fetch youtube videoid from url 2021-02-25 11:19:26 +01:00
nathangray
3c72462b5e Enable push for addressbook
Refactor EgwApp.push() to cover more common stuff for simpler app code
2021-02-24 09:18:42 -07:00
Ralf Becker
907b33454a date-duration select_unit=false must show full value for highest display unit, not just the remainer
value=3600 with display_format=m:s must show "60:00" not "00:00"
2021-02-22 10:52:15 +02:00
Hadi Nategh
1501df227a WIP integrating youtube video:
- fix ontimeupdate event
- fix currentTime for youtube type
- fix not working play_video
- fix video not getting a fullwidth
2021-02-16 18:00:46 +01:00
Hadi Nategh
f5e165a07a WIP integrating youtube video frame api into video widget 2021-02-15 16:58:19 +01:00
Hadi Nategh
390c715508 Encapsulate html video properties 2021-02-15 12:24:33 +01:00
Hadi Nategh
dc2f80c39c Some TypeScript definitions 2021-02-10 14:12:27 +01:00
Ralf Becker
df2a426e08 fix not working onchange on all inputs of date-duration select_unit="false" 2021-02-09 15:51:10 +02:00
nathangray
0d7a4bb848 Etemplate: Fix rows actions didn't work after dragging file from system onto row 2021-02-08 14:44:55 -07:00
Ralf Becker
04f4a327c2 implement date-duration select_unit="false" to show durations like "0:01:20" 2021-02-05 15:57:59 +02:00
Hadi Nategh
62951986ae Add break_title option for link widget in order to be able to break link's title into new line based on a given delimiter 2021-02-03 14:14:22 +01:00
Hadi Nategh
8f28533288 Set initial startitme after the video is loaded 2021-02-02 12:35:28 +01:00
Ralf Becker
bbd9a5a765 allow to set starttime of video 2021-02-02 12:02:52 +02:00
nathangray
a412aa18a4 Etemplate: Export et2_appicon 2021-02-01 16:54:20 -07:00
nathangray
6ab0ad934b Etemplate: Fix tree default icons path was still in phpgwapi 2021-02-01 16:40:10 -07:00
Ralf Becker
2af199f725 new precision option to limit number of counters shown 2021-01-29 20:35:00 +02:00
Ralf Becker
15c72f284f change client-side to only deal with a duration converted server-side from an end-datetime or a duration like "+123seconds" 2021-01-28 19:53:14 +02:00
Ralf Becker
5b4a436ab3 countdown: convert datetime server-side into a duration to avoid problems with wrong time or timezone on client 2021-01-28 16:02:38 +02:00
Ralf Becker
69b33e9288 make countdown a value-widget to get automatic timezone handling by date widgets beforeSendToClient method 2021-01-28 12:08:29 +02:00
nathangray
e980f3a851 Etemplate: if readonly radiobox has the default ro_true=X, we still need the label 2021-01-26 13:09:39 -07:00
nathangray
867fcc17c6 Etemplate: Allow to specify the read only true/false values for checkbox customfields 2021-01-26 10:42:18 -07:00
Ralf Becker
8425f380fe some fixes for int/float widget: server-side was not expanding min/max attribute and client-side considers empty min/max attr as 0 2021-01-22 17:24:55 +02:00
Hadi Nategh
4e95ac86a8 Add some jquery dialog options 2021-01-14 16:57:28 +01:00
nathangray
208817054b * Etemplate: Avoid "Uncaught TypeError: Cannot read property ‘length’ of undefined"
This was happening when an app was open but not currently active and had a push update with no type.
2021-01-13 09:08:53 -07:00
Hadi Nategh
a777610c2d Fix htmlarea resize 2021-01-07 11:46:09 +01:00
Hadi Nategh
85b14052ea Make blockquotes breakable in html editor 2021-01-06 14:06:21 +01:00
nathangray
cf9c366d2b Etemplate: Bugfixes
- Early exit for arrayMgr().getEntry() if nothing is found, avoids returning all data
- Remove debugger from selectbox
2021-01-04 11:00:10 -07:00
nathangray
5c10576b3b Don't event set sort order if it hasn't changed 2021-01-04 09:43:54 -07:00
nathangray
6af3e37bed * Etemplate: Add context menu action on linked files to copy them somewhere else
Also, update vfsSelect to use request(), so it processes the additional stuff in response so we can have a success message.
2020-12-21 13:53:24 -07:00
nathangray
5b5539584a Etemplate: Fix tooltip didn't work on select+tag widget 2020-12-21 10:04:24 -07:00
nathangray
8910983c8e Etemplate: Fix for some attributes not getting set 2020-12-17 09:17:38 -07:00
nathangray
c301c1b194 Etemplate: Fix read-only selectAccount would always add new values causing doubles 2020-12-15 09:41:02 -07:00
Alexandros Sigalas
2a333be92d Added tooltip in multiselect selectbox widget 2020-12-10 08:55:05 -07:00
Hadi Nategh
cde6c10e05 Add Segoe font family into HTMLEditor 2020-12-09 13:17:37 +01:00
Hadi Nategh
e317645291 * Addressbook: fix 'undefined' title shown for some contact links opened in CRM view tabs 2020-12-03 18:19:25 +01:00
Hadi Nategh
d957ed41d0 Implement an alarm callback for countdown widget 2020-12-02 16:54:50 +01:00
Hadi Nategh
bd8a78505b Add new option to countdown widget inorder to hide empty values 2020-11-30 14:35:28 +01:00
nathangray
3e371ea51f Etemplate: Don't try to expand src if it is empty 2020-11-24 10:24:36 -07:00
Hadi Nategh
54eb66fd30 Add onFinish callback to countdown widget and style it 2020-11-24 13:46:05 +01:00
Hadi Nategh
65b24440a0 Implement widget countdown timer 2020-11-23 21:11:19 +01:00
nathangray
522fca6344 Etemplate: Apply sort order (to UI) if server sends it 2020-11-23 10:19:11 -07:00
Hadi Nategh
09c0d12f0e Fix error trim is not a function from commit bac5c2e83b 2020-11-13 13:50:53 +01:00
nathangray
bac5c2e83b Etemplate: If key is empty / not set, don't try to explode it 2020-11-12 16:29:57 -07:00
nathangray
eb7a03b191 Etemplate: Limit sortable to just the grid's immediate rows, excluding rows in nested grids 2020-11-10 13:41:24 -07:00
nathangray
1ba23feb9c Etemplate: Fix nextmatch controller destroy() left some references
AJAX responses would then try to use them after the etemplate was destroyed, and fail.
2020-11-09 09:44:40 -07:00
nathangray
8b28d8ffd0 Etemplate: Include etemplate exec_id as sortable parameter 2020-11-04 15:15:31 -07:00
Ralf Becker
e98e91b9f3 give explicit select-options priority over querying accounts via link-widget, fixes not displayed addressbook for sharing 2020-11-02 09:09:46 +01:00
Ralf Becker
9021220f14 only return "" for blur-value, if browser does not support html5 placeholder 2020-10-29 11:00:45 +01:00
Ralf Becker
47da0f9bf8 * Addressbook: allow to configure sending fax via email by replacing the number with an email address 2020-10-28 13:30:28 +01:00
nathangray
7cfbf133cd Etemplate: Also expand grids if they're inside a box 2020-10-27 16:17:04 -06:00
nathangray
d16b91c901 Etemplate: Queue refresh() calls made while nextmatch is hidden.
Queue is limited in length, after too many refresh() calls, we throw away the queue and refresh the whole thing when nextmatch is visible again.
2020-10-22 15:53:59 -06:00
nathangray
3b90e1a50d Etemplate: Fix auto-refresh mixed up new rows 2020-10-22 13:40:38 -06:00
Hadi Nategh
7d1cd4c12c WIP Multitabs:
- Fix wrong ids generated for sideboxes
- Fix tab header refresh
2020-10-22 13:52:17 +02:00
nathangray
d1955419ee Etemplate: Fix flipping between 2 nextmatch filter values stopped updating results after 2 changes 2020-10-19 13:17:09 -06:00
Hadi Nategh
5288e3a0fd Make sure sender object is there before using it 2020-10-19 16:06:22 +02:00
Hadi Nategh
644feaffa4 * Filemanager: fix drag and drop a file no longer working from outside of browser into the list 2020-10-19 12:54:16 +02:00
Ralf Becker
fa98eb1071 fix a couple of errors stalling file uploades 2020-10-19 11:45:49 +02:00
nathangray
c78c8cc215 Etemplate: Make sure controller has current filters when created. Fixes scrolling to trigger fetching more rows did not pass initial filters. 2020-10-15 14:56:23 -06:00
nathangray
0df6306dc2 Etemplate: Fix multi-select / tags value sometimes got lost if we had to fetch options from the server 2020-10-15 11:22:45 -06:00
nathangray
758934c1e4 Etemplate: Fix printing ruined scrolling in nextmatch 2020-10-15 10:11:24 -06:00
nathangray
90080cc0e6 Etemplate: Fix extra rows stayed hidden after printing 2020-10-14 11:48:57 -06:00
nathangray
52b1cab8e1 Etemplate: Fix drag and drop linking made the rows involved disappear 2020-10-14 10:38:11 -06:00
Hadi Nategh
4f1ce8da48 Add table into toolbar list 2020-10-14 11:38:07 +02:00
Hadi Nategh
43600426c7 * Api: Add table button into html editor's toolbar 2020-10-14 11:05:51 +02:00
Hadi Nategh
2ed6f54e9b Updates tinymce to 5.5.1 and implements toolbar_mode option for htmlarea 2020-10-14 10:40:35 +02:00
Hadi Nategh
71dabcd33b Fix sorting for connectedWidth columns 2020-10-14 10:33:19 +02:00
nathangray
855d6defc9 Etemplate: Fix push add to an empty nextmatch would leave the 'No matches found' and throw errors for row actions 2020-10-09 10:15:17 -06:00
Hadi Nategh
23aea3b42e Make html widget exportable 2020-10-09 14:57:15 +02:00
nathangray
9c4f866382 Fix methods in hidden app objects could not be used as action handlers
Now nextmatch sets the etemplate's EgwApp object as context for the action manager.  Actions now check and will use the set context instead of global when binding to handlers
2020-10-08 14:57:45 -06:00
nathangray
ba0e1240c3 CRM: Fix some list bugs
- Adding an infolog did not show up
- CRM.ts got disconnected if infolog list got reloaded
2020-10-08 11:53:33 -06:00
Hadi Nategh
87b1b05730 Make htmlarea widget exportable 2020-10-08 12:15:08 +02:00
Ralf Becker
1c1ee3a25b execute non-http(s) links eg. tel: like before 2020-10-07 14:06:10 +02:00
Hadi Nategh
588a667137 Make et2_number widget exportable 2020-10-06 10:31:26 +02:00
nathangray
dd015a62a8 Etemplate: Avoid session destruction from PBX integration 2020-10-05 12:58:50 -06:00
nathangray
f07303b321 Etemplate: Fix editing entry so it no longer matched current filters would cause missing rows and incorrect total 2020-10-02 10:39:33 -06:00
Hadi Nategh
7f4535cf1d WIP multitabs and CRM view 2020-09-30 13:19:36 +02:00
nathangray
ba7cbc5d5a Etemplate: Make child nodes protected instead of private for easier extending 2020-09-28 10:05:32 -06:00
nathangray
53577db40c Etemplate: fix for better behaviour if lazy-update pref is not set 2020-09-28 08:51:46 -06:00
Hadi Nategh
cdbc5e3a71 Create new sidemenuEntry for tab target 2020-09-28 15:43:42 +02:00
Hadi Nategh
acbd23a60a * Mail: Add custom html toolbar settings in mail site-configuration in order to be able to add/remove certain actions only for mail-compose dialog. 2020-09-25 14:17:29 +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
2ef359f0d0 Etemplate: Fix selectAccount deprecated legacy option of putting account type in empty label 2020-09-16 09:14:50 -06:00
nathangray
39b630d36e Etemplate: Fix some selectAccount bugs when multiple=true 2020-09-15 11:23:02 -06:00
nathangray
afb342f66b Etemplate: Ask for new data before we put the row in, then if the entry doesn't match the filters, don't put it in. Should stop most blinking rows. 2020-09-15 09:05:25 -06:00
nathangray
47a1437e1b Etemplate: Consider null as false when parsing boolean values into template attributes 2020-09-14 09:37:37 -06:00
nathangray
459ba3d93c * Etemplate: Fix historylog did not render until you resize the window 2020-09-11 13:12:09 -06:00
Ralf Becker
638da52fa9 fix date-duration fails with only one date-format eg. "m" 2020-09-11 20:22:51 +02:00
nathangray
56e1d3c5e5 Etemplate: Fix some missing includes 2020-09-10 16:59:34 -06:00
nathangray
d6d55c32a9 Etemplate: Fix updated entries were sometimes not flagged, clear color after 3 minutes 2020-09-10 13:42:32 -06:00
nathangray
2dc5616b96 Separate CRM list from infolog list so push updates don't conflict 2020-09-03 09:58:27 -06:00
nathangray
210c54b689 Etemplate: More fixes for row count when updating / adding
Now fixed the situation where 1 row was updated & 1 added, but the added one did not match filter and was not returned when server was asked.  Now removed blank row waiting for it, and keeping row count consistent
2020-09-01 14:49:06 -06:00
nathangray
b7b4cb31c8 Etemplate: Row count does not depend on data.class 2020-09-01 12:22:47 -06:00
nathangray
df57ea914e Etemplate: Fix another bug in refresh / add / update
This one was found in Infolog, adding a sub to an entry with the show-subs preference set to only while filtering.  The row count would be off by one if the new entry did not match the filter.
2020-09-01 11:54:35 -06:00
nathangray
3ff331c22b Etemplate: Avoid trying to repaint datagrid while it's hidden
Avoids an infinite(?) loop and endless "[Violation] 'setTimeout' handler took <N>ms" messages
2020-08-31 14:06:18 -06:00
nathangray
1ad5d321a4 Etemplate: Fix double duration format in timesheet nextmatch header 2020-08-28 13:53:23 -06:00
nathangray
6b5414904f Remove workaround, fix 3 second refresh 2020-08-26 14:39:39 -06:00
nathangray
a013d78947 Partially revert 26a6749 as it's been handled elsewhere
(030dafc0a7c9bdc6677afe87fa69615068acb4c0,d525347275a2268ed9624d35ddbd4e43a345179d)
2020-08-26 13:47:11 -06:00
nathangray
075c44a48b Etemplate: Don't try to delete row if it's not in the nextmatch 2020-08-26 11:24:15 -06:00
nathangray
d525347275 Fix nm displayed row count was not updated when adding a row.
This seems to have resolved the issue of the last row going missing.
2020-08-26 09:26:18 -06:00
nathangray
030dafc0a7 Etemplate: Fix some nm / push bugs
- Handling for sub-grids
- Fix some index issues in selectionMgr causing rows to jump around
2020-08-25 15:57:20 -06:00
nathangray
8cd05c571b Add debug function to log selected nextmatch internals
Example usage:
etemplate2.getByApplication('addressbook')[0].widgetContainer.getDOMWidgetById('nm').spillYourGuts()
2020-08-25 14:01:31 -06:00
Hadi Nategh
6c9e83b38a Fix set column not working because of using wrong constant variable 2020-08-20 16:47:38 +02:00
Hadi Nategh
71605c0c14 * All Apps: fix print list column selection does not contain customfields 2020-08-20 16:18:39 +02:00
Hadi Nategh
d48efdedd8 Make commit 26a6749b3d condition available only for refresh add 2020-08-20 15:19:15 +02:00
Hadi Nategh
f63a0a6075 Fix radiobox widget calling onchange event infinitely 2020-08-18 13:20:29 +02:00
Ralf Becker
26a6749b3d * All apps: fix last rows was removed when adding new entry to list with only a couple of rows
see ticket #48204, we do a full refresh now to work around this issue until we have a real fix
2020-08-17 12:15:40 +02:00
Ralf Becker
e3434b144d fix sometimes not deleted infologs ("0 selected"), because global var got deleted, using now a closure as for the action 2020-08-16 11:22:16 +02:00
Hadi Nategh
8bbb05a596 Fix clear button in search widget disappears after being reloaded 2020-08-14 13:35:30 +02:00
Hadi Nategh
31241227e1 * File Sharing: fix broken file sharing dialog 2020-08-13 14:35:09 +02:00
Hadi Nategh
fe47a2af28 A temporary fix for commit 471741ce12 which breaks nm row update with auto refresh enabled 2020-08-12 12:04:03 +02:00
Hadi Nategh
06e770f469 Fix nm filter onchange no longer sending expected nm widget 2020-08-11 15:45:40 +02:00
nathangray
036ec20769 Fix some nextmatch bugs
- Removed rows could still have jQuery actions bound, resulting in errors
- Focused row was not cleared if it was removed, resulting in errors
- Fixed double get_rows call on refresh(..., update)
2020-08-08 10:51:39 -06:00
nathangray
afec14a17e Fix removing a nm row did not re-index
This caused duplications or holes depending on what you did before or after
2020-08-07 14:12:30 -06:00
nathangray
ff35f58f73 Change addressbook group / template on client side, not server side
Fixes the issue where the nextmatch_controller is part of the context for the request, but the first thing set_template() does when the server tells the nextmatch to change the template is destroy the controller.  This means that when the data is parsed, the context is missing or damaged.
2020-08-07 13:18:41 -06:00
nathangray
bec67d63ee Etemplate: Change how nextmatch handles update & refresh push messages 2020-08-07 09:19:15 -06:00
nathangray
dadf0fe993 Etemplate: Fix et2_selectAccount legacy options were not set 2020-08-06 16:39:59 -06:00
nathangray
29b22e336e Fix CRM view did not add new infolog entries on push 2020-08-06 12:49:33 -06:00
nathangray
2cf0e7732d Fix update was doing full refresh, changed back to previous behaviour
Left 'update-in-place', as discussed, as it's way more clear what it does.
2020-08-06 09:14:41 -06:00
nathangray
faed2f97d4 Etemplate: Add et2_nextmatch.set_disable_autorefresh() to change it dynamically 2020-08-06 08:40:41 -06:00
Hadi Nategh
e3c356b2c2 Add missing compiled js file from commit 13ed300c9c 2020-08-06 10:37:56 +02:00
nathangray
fba4323765 Etemplate: add disable_autorefresh attribute to nextmatch to be able to disable autorefresh 2020-08-05 11:21:33 -06:00
nathangray
13ed300c9c * Etemplate: Fix entry widget had wrong ID, so was missing value
Typescript conversion error
2020-08-05 10:36:42 -06:00
nathangray
88b7bccdb9 Etemplate: Password suggest now works if started disabled then enabled via JS 2020-07-30 13:50:12 -06:00
nathangray
5379a0c924 Home using non-global EgwApp instances for portlets 2020-07-30 13:00:53 -06:00
nathangray
80b72bfb3c Etemplate: Fix password widget did not disable suggest dynamically 2020-07-30 09:21:40 -10:00
nathangray
471741ce12 Etemplate: Update controller indexMap when adding a new row
Fixes deleting former top mail that got moved down by a pushed new mail removed both newly added and the selected mail
2020-07-29 13:20:09 -06:00
Ralf Becker
08acad038c * Mail: replying to a mail should only update icon, not move it to top of list 2020-07-29 13:58:15 +02:00
nathangray
bd8b99f8c1 Try to fix up password with respect to autofill 2020-07-28 10:39:16 -06:00
nathangray
59cd2dcded Etemplate: nm.refresh() with type 'edit' no longer always fully reloads all rows, it now behaves the same as 'update' 2020-07-27 14:07:15 -06:00
nathangray
77a413b66b Etemplate: Fix isDirty() was always false for multi-select (tracker selection) 2020-07-27 13:44:11 -06:00
nathangray
b6e47f9b11 Etemplate: Password widget now auto-updates the second 'confirm' password if you have two and suggest a password. 2020-07-23 13:56:14 -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
4b9be2876e fix new mail rows appear no unseen 2020-07-22 21:32:48 +02:00
nathangray
a6688ab3f8 Etemplate: Allow app to specify a new row index for updated rows as well. 2020-07-22 12:00:01 -06:00
Ralf Becker
32043f7a41 trigger full refresh / applyFilters, if app refresh_add returns false 2020-07-22 16:58:40 +02:00
nathangray
32b061919f Etemplate: Change default for password widget suggest to off
Customfields still default to on
2020-07-21 15:36:45 -06:00
nathangray
f0b924008b Etemplate: Add a callback so apps can decide where to put new push rows 2020-07-21 15:32:22 -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
69420c19ad Api: Handle add push messages in the nextmatch list 2020-07-20 13:43:26 -06:00
Hadi Nategh
fcd7a77c44 Fixing none app static functions stopped being called relevant to commit 52eb5ca8e0 2020-07-15 11:01:34 +02:00
Hadi Nategh
b29cce05be Fix searchbox no longer works in mobile template 2020-07-14 12:17:15 +02:00
nathangray
31b7c49fd3 Etemplate: Avoid error if sender is not passed 2020-07-10 13:30:47 -06:00
nathangray
af4fcd7a2d Etemplate: Avoid trying to process regexes by checking for end anchor 2020-07-10 13:27:48 -06:00
nathangray
13842ffb79 * Infolog: Add filter by contact to export filters 2020-07-10 13:13:04 -06:00
nathangray
510a6419c5 Etemplate: Avoid error if file_data.mime is false for some reason
(file missing)
2020-07-10 11:11:05 -06:00
Hadi Nategh
146cba903b Add missing part from commit 4c7709d49f 2020-07-10 13:16:50 +02:00
nathangray
4fc02fbe20 Etemplate: Fix searchbox did not properly manage child DOM nodes 2020-07-08 14:34:50 -06:00
nathangray
9cb143d0d3 Etemplate: Prevent dialogs from destroying parent's request 2020-07-08 11:01:05 -06:00
Ralf Becker
34cbc6880a step attribute for number widget 2020-07-06 18:24:07 +02:00
nathangray
4c7709d49f Etemplate: Get vfsUpload values to use expose so they work like links 2020-07-03 14:23:41 -06:00
nathangray
e80c118aa8 Etemplate: Replace resetDirty(), it's needed for IInput interface 2020-07-02 11:19:11 -06:00
nathangray
7278b30ff0 Actually set the default cf prefix so everything works. 2020-07-02 09:40:09 -06:00
nathangray
5958feb1c3 Etemplate: add customfield prefix as an explicit attribute, importexport filter was using it 2020-06-30 10:43:41 -06:00
nathangray
57d03110e4 Etemplate: If long task response is an object, stringify the object so we can see what it says 2020-06-29 14:08:02 -06:00
nathangray
b057f95a5a Close confirm improvements & fixes
- Toolbars are now always not dirty
2020-06-29 13:23:17 -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
a50ede7967 Avoid errors from close confirm changes if button is not fully created. 2020-06-29 10:54:14 -06:00
nathangray
175c1fe369 Fix selectbox resetDirty() 2020-06-25 10:31:48 -06:00
Hadi Nategh
8863f28e37 Revert it because it has caused a weird issue regarding our nextmatch filters 2020-06-25 14:17:00 +02:00
nathangray
143be4dc98 Etemplate: Cancel buttons do not trigger the change/close prompt 2020-06-24 10:37:57 -06:00
nathangray
74284afc07 Fix htmlarea.isDirty() was using the pre-editor initialization value causing it to always be true 2020-06-24 09:58:18 -06:00
nathangray
10b2eda4ac Fix bug in isDirty() causing error for some widgets, which broke onbeforeclose 2020-06-24 09:40:35 -06:00
nathangray
03e08be0e6 Etemplate: Changing the tab doesn't count as making any data dirty 2020-06-23 13:37:31 -06:00
nathangray
52714f0a63 Etemplate: Check dirty before closing, ask if there are changes 2020-06-19 13:27:41 -06:00
Hadi Nategh
b95e9be02a Cleanup widget browser 2020-06-18 14:58:24 +02:00
nathangray
31f20d9783 Etemplate: Fix history widget lost some widgets when converted to TypeScript 2020-06-16 10:58:03 -06:00
nathangray
b56a8f9901 Default password customfield plaintext attribute to false 2020-06-16 09:23:54 -06:00
Ralf Becker
2c489ef5b8 change default for password attribute plaintext back to true, to not break every existing usage of that widget 2020-06-16 08:37:51 +02:00
nathangray
d7d5837ecf Nicer password widget on account edit dialog
- Added plain-text attribute to avoid encrypting password
- Suggest password now fills both fields the same
2020-06-15 16:08:24 -06:00
nathangray
8020464dde Fix column could not be found due to wrong IDs used 2020-06-15 11:42:45 -06:00
nathangray
fb27dc66da * Etemplate: Password widget improvements - suggest password button, added as custom field type (stored encrypted) 2020-06-12 11:03:42 -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
nathangray
a993938134 Etemplate: Fix VFS & file widgets were not properly handling files 2020-06-10 10:20:30 -06:00
Hadi Nategh
06d6887744 Fix error select-account widget is not supported in et2_menulist widget 2020-06-10 13:32:33 +02:00
nathangray
676be91387 Etemplate: Fix TypeScript conversion error in historylog widget
Legacy options could not be accessed
2020-06-09 15:21:34 -06:00
nathangray
03a5620ea9 Api: Fix nm columns disabled via content could break subsequent columns, giving JS error
"Uncaught TypeError: Cannot read property 'getAttribute' of undefined"
2020-06-09 13:56:52 -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
Ralf Becker
25615d7ee0 fix not working file upload, if not mime-type specified 2020-06-02 18:53:33 +02:00
Hadi Nategh
1a91dfab7d Fix not working regexp mime type attribute in file widget 2020-06-02 14:39:43 +02:00
nathangray
ce393e0803 Remove et2_types 2020-05-29 11:21:17 -06:00
Hadi Nategh
bf1ed9a0d6 Remove type restriction for getEntry, the data send to client could have all sort of types 2020-05-27 11:11:06 +02:00
Hadi Nategh
f9e0d9a6c2 Add missing js file from commit da806d33f5 2020-05-27 10:46:34 +02:00
Ralf Becker
064054af82 fix an other case of using window.top directly 2020-05-26 10:23:40 +02:00
nathangray
bdbf28cd2c Change helper function getValueWidgetById() to the more useful getInputWidgetById() 2020-05-25 11:02:12 -06:00
nathangray
82215f292d Api: Fix some favorite widget bugs
- Infolog preferred favorite was not loaded
- Fixed vertical alignment of widget 'Add current' icon
2020-05-22 10:50:58 -06:00
Hadi Nategh
4a4f2a03b9 Make taglist widget exportable 2020-05-22 10:15:24 +02:00
nathangray
866cc19440 Api: Fix favorites widget TypeScript conversion bugs 2020-05-20 15:27:38 -06:00
Ralf Becker
588cd10043 track top EGroupware window in egw object to be used as egw.top instead of window.top, which can throw a security exception 2020-05-18 20:55:57 +02:00
Hadi Nategh
5b8e02fded Add missing file from previous commit 2020-05-18 13:10:31 +02:00
Hadi Nategh
0d52104a68 Make radiobox widget exportable 2020-05-18 12:57:55 +02:00
nathangray
4ba7bac850 Add some convenience functions for faster widget access
These are only available on et2_container, so app.ts can use eg: this.et2.setWidgetById(...)

getDOMWidgetById(): Same as getWidgetById() it returns et2_DOMWidget instead of et2_widget
getValueWidgetById(): Same as getWidgetById(), but returns et2_valueWidget
getValueById(): Find a widget, get its value
setValueById(): Find a widget, set its value
setDisabledById(): Find a widget, set its disabled state.
2020-05-15 14:01:02 -06:00
nathangray
52eb5ca8e0 Don't bind context for app functions, they expect their own. 2020-05-15 11:15:30 -06:00
nathangray
934d309856 Make taglist-state update its own options when country code changes
Fixes bug where options were not properly set if they had to be fetched from server.
2020-05-13 15:21:26 -06:00
Hadi Nategh
f23b5aee82 Fix readonly checkbox not working 2020-05-13 12:00:06 +02:00
Hadi Nategh
0748fba70f Add readonly value to readonly option 2020-05-13 11:56:49 +02:00
Hadi Nategh
1dc1d07dea Implements set_readonly for radiobox 2020-05-13 11:55:22 +02:00
Hadi Nategh
538d25333e Add missing js file from previous commit 2020-05-13 11:39:38 +02:00
Hadi Nategh
b101d2e509 Disable checkbox properly when it contains label 2020-05-13 11:08:42 +02:00
nathangray
66ee6576f1 * Api: Can now select no color with color widget 2020-05-11 14:58:36 -06:00
Ralf Becker
4dc120a6d2 making video position available and a couple of documentation updates 2020-05-10 14:53:06 +02:00
Hadi Nategh
cf8f421c4d Fix radio widget onchange not being called when value is getting set 2020-05-08 15:22:28 +02:00
Ralf Becker
1d6033fb4e allow to use image spec like "api/mime128_video" for poster like for regular images 2020-05-08 12:20:37 +02:00
Hadi Nategh
5e703ab669 Register video widget 2020-05-07 16:14:07 +02:00
Hadi Nategh
c6200f9969 Make video widget extendable 2020-05-06 14:53:02 +02:00
nathangray
da806d33f5 Api: Fix reference to et2_url EMAIL_PREG 2020-05-05 15:12:00 -06:00
Hadi Nategh
0431911dd1 Add missing js file from previous commit 2020-04-29 12:29:35 +02:00
Hadi Nategh
e9510598d7 Add allow option to iframe widget 2020-04-29 12:23:49 +02:00
nathangray
5a1f642ce2 Make sure there are no parameters before trying nice check for function name 2020-04-24 11:23:03 -06:00
nathangray
eaafd5eb1f Get legacy JS parser to understand functions that don't start with "app." and don't have brackets in the attribute.
This covers widget or other non-app static functions (eg: et2_avatar.uploadAvatar_onFinish)
2020-04-23 11:33:24 -06:00
nathangray
ec6a3881e3 Still need to clear before loading or dialogs get doubled 2020-04-22 14:53:11 -06:00
Hadi Nategh
eb795d523b Alway prefer custom onFinishOne callback if it is set 2020-04-22 14:19:12 +02: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
6e73a2bb66 Fix submit buttons get disabled after file upload 2020-04-21 18:30:25 +02:00
Hadi Nategh
4803e7fcd5 Fix lavatar not generating any image 2020-04-21 15:18:44 +02:00
nathangray
d6a747e36b Fix missing translation reported by Stefan Unverricht
How did you get missed?
2020-04-15 11:47:22 -06:00
nathangray
dbb3b2688e Fix missing translation reported by Stefan Unverricht 2020-04-15 11:21:53 -06:00
nathangray
017fa60870 Fix missing translation reported by Stefan Unverricht 2020-04-15 10:06:09 -06:00
nathangray
8f8c437712 Try to avoid error from missing nodes
I suspect this is from either TypeScript conversion or nm node optimization, but can't duplicate it regularly
2020-04-14 15:03:32 -06:00
nathangray
5b115ec7d5 Try to avoid some errors loading nm by checking before setting 2020-04-14 14:14:29 -06:00
nathangray
821c8474c5 Fix link from VFS dialog did not open 2020-04-14 14:13:36 -06:00
nathangray
eda34d67b3 Fix some typescript bugs
- Don't default dialog width so the automatic calculations run
- Setting etemplate_exec_id after load doesn't work, moved to passing it in.  Fixes several file select issues
2020-04-09 14:26:57 -06:00
nathangray
bac1ff5a1d Port b6020ad from asig2016 to master 2020-04-09 12:39:16 -06:00
Hadi Nategh
99a9513236 Fix positon option in et2_dialog widget 2020-04-07 14:51:46 +02:00
nathangray
abdffc12a0 Fix typescript conversion bug breaking mobile list view 2020-04-01 13:46:05 -04:00
nathangray
b27387009d Fix toolbar actions with no group were missing 2020-03-30 14:25:24 -06:00
nathangray
c19502ce5b Fix nextmatch row expansion not properly displaying children 2020-03-30 12:28:48 -06:00
nathangray
cd530e6af0 Fix missing column headers after changing nm row template 2020-03-30 12:22:07 -06:00
nathangray
1da1cb7b99 Fix legacy options not being read for some widgets 2020-03-30 10:28:48 -06:00
nathangray
22f498d6e2 Try to fix navigation issues in file select popup 2020-03-25 13:48:04 -06:00
nathangray
7163acfe1d * Add action to share filemanager folder (readonly) with hidden upload folder 2020-03-24 20:34:04 -06:00
nathangray
3350f3a024 Some fixes for tile view after Typescript conversion 2020-03-23 10:05:46 -06:00
nathangray
c04915ae09 Etemplate: Fix nextmatch printing failed after TypeScript conversion 2020-03-18 10:36:14 -06:00
nathangray
83fd11f7c7 Fix bug in nm rowProvider preventing some re-ordered columns from getting their value 2020-03-17 10:32:45 -06:00
Hadi Nategh
b2c60f5667 Fix searchbox messed up DOMNode 2020-03-17 15:56:56 +01:00
nathangray
5af17679f3 Fix some missed free() calls 2020-03-16 14:27:57 -06:00
nathangray
298d0618e6 Etemplate: Add 3 minute nextmatch refresh option 2020-03-13 11:49:36 -06:00
nathangray
b8c6d52d29 Merge feature/improve_nm_performance changes in 2020-03-11 10:56:51 -06:00
Hadi Nategh
625c3eb73c Fix htmlarea being initiated twice 2020-03-11 14:54:47 +01:00
Hadi Nategh
d6c2a4aa0b Convert tracker app.js to TS 2020-03-09 16:12:49 +01:00
nathangray
aa87e60f10 Etemplate: Fix customfield widget bug "Cannot read property ... of undefined" 2020-03-05 15:37:42 -07:00
Hadi Nategh
a79280e78c Fix error egw_keymanager_js_1.egw_keyHandler is not a function 2020-03-05 14:53:50 +01:00
Hadi Nategh
0cc7ce12d0 merge master 2020-03-05 14:45:25 +01:00
Hadi Nategh
4ae4b4027b Remove extra semicolons 2020-03-05 13:25:52 +01:00
Ralf Becker
65294a3e19 fix error on window closing in Chrome 80+
caused by Chrome 80+ no longer allowing to send a synchronious ajax request from beforeunload handler, using sendBeacon (async request with keepalive=true) instead
2020-03-02 10:43:19 +01:00
Hadi Nategh
b47a0917d2 Add getController method to get access to nm controller object 2020-02-28 14:45:58 +01:00
nathangray
0f898acbb2 Fix action bugs where actions were not properly linking 2020-02-27 11:54:55 -07:00
nathangray
251f09d28b Fix taglist onchange & onclick handlers were not parsed into javascript 2020-02-27 11:51:43 -07:00
nathangray
bdc99ab30c Increase visibility of tooltipElem so children can access it too 2020-02-27 11:50:04 -07:00
Hadi Nategh
e48000d149 Convert vfsSelectUI to TS 2020-02-26 12:19:17 +01: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
nathangray
f0392bc4e8 Add missing destroy() 2020-02-24 15:15:24 -07:00
Hadi Nategh
b7403af93f Fix expose class and its derived widgets 2020-02-20 17:46:53 +01:00
Hadi Nategh
8d85b50ded * Html Editor: Add fullscreen feature into html editor 2020-02-20 16:07:00 +01:00
Hadi Nategh
9a4f2d1e69 Convert expose to TS and apply it to all exposable widgets 2020-02-19 17:14:44 +01:00
Ralf Becker
2d5012d208 add extra_link_target attribute to r/w link-entry to allow opening link in new tab (for mserver) 2020-02-16 11:31:32 +01:00
Ralf Becker
5231240f52 add extra_link_target attribute to r/w link-entry to allow opening link in new tab (for mserver) 2020-02-16 11:08:28 +01:00
Hadi Nategh
9d71b21d0f Commit missing js part from et2_link 2020-02-14 10:07:35 +01:00
nathangray
9cb1abc3c0 Fix readonly bug, reduce DOM changes when setting format 2020-02-13 11:56:52 -07:00
Hadi Nategh
4ef29c0c1a Convert et2_core_xml to TS 2020-02-13 15:53:12 +01:00
Hadi Nategh
5d11d6f34b Convert et2_extension_itempicker_actions to TS 2020-02-13 15:45:23 +01:00
Hadi Nategh
c9abe89184 Convert et2_widget_ajaxSelect to TS 2020-02-13 15:39:10 +01:00
Hadi Nategh
e6477f4b50 Convert et2_widget_portlet to TS 2020-02-13 15:27:27 +01:00
Hadi Nategh
effa2c52a3 Convert et2_widget_itempicker to TS 2020-02-13 11:08:12 +01:00
Hadi Nategh
0def94240f Fixes some errors in vfs widget 2020-02-13 10:39:13 +01:00
Hadi Nategh
e1d24055c2 Convert et2_widget_script to TS 2020-02-13 10:25:00 +01:00
nathangray
216ba980a9 Convert to typescript 2020-02-12 15:35:59 -07:00
nathangray
e5895e0cef Deal with some typescript warnings 2020-02-12 15:18:10 -07:00
nathangray
6857c42091 Convert dynheight to typescript 2020-02-12 14:49:22 -07:00
nathangray
ec83c3a181 Color widget 2020-02-12 14:17:33 -07:00
nathangray
5ab4d36830 Fix button onclick attribute was not parsed into javascript 2020-02-12 14:06:09 -07:00
nathangray
69261c3688 Convert style widget 2020-02-12 13:28:49 -07:00
nathangray
8525477b26 Avoid error if AJAX call returns after destruction 2020-02-12 13:21:05 -07:00
nathangray
1d4bcc2cab Add missing destroy() to avoid error when destroying 2020-02-12 13:19:52 -07:00
nathangray
fa95142954 Diff widget 2020-02-12 13:19:21 -07:00
nathangray
7a79bfad93 Make cf prefix a proper constant 2020-02-12 11:32:29 -07:00
nathangray
c3350c8114 Get nextmatch-customfields working 2020-02-12 11:16:34 -07:00
nathangray
fe4eb42fca Fix attributes referencing not-set content evaluated as true 2020-02-12 11:10:52 -07:00
Hadi Nategh
85082b08f2 Add missing source map comment 2020-02-12 11:33:20 +01:00
Hadi Nategh
7f37ff4942 Some fixes for defined types 2020-02-12 11:29:47 +01:00
Hadi Nategh
c6f491df53 Convert et2_widget_tree to TS 2020-02-12 11:29:03 +01:00
nathangray
ee6ac04413 Get historylog widget working 2020-02-11 15:37:33 -07:00
nathangray
8abd587d0e Get customfield widget working 2020-02-11 15:20:01 -07:00
nathangray
77722eb0d5 Fix namespace check 2020-02-11 15:19:33 -07:00
nathangray
2ed6c162f2 Improve return value definition 2020-02-11 15:18:25 -07:00
nathangray
8eebea528d Code style improvements 2020-02-11 11:32:50 -07:00
Hadi Nategh
13cc7f09cd Ad more missing font size to tinyMCE 2020-02-11 17:08:30 +01:00
Hadi Nategh
3f282c5416 Add more missing font size to tinyMCE 2020-02-11 17:05:19 +01:00
Hadi Nategh
38ebca1a24 * Html Editor: Add 9pt, 9px, 11pt and 11px into Html editor's font options 2020-02-11 16:58:55 +01:00
Hadi Nategh
f7e75af9a5 * Html Editor: Add 9pt, 9px, 11pt and 11px into Html editor's font options 2020-02-11 16:54:44 +01:00
nathangray
6c0102e7e7 Fix nextmatch column select dialog 2020-02-10 16:00:14 -07:00
nathangray
64844fc97d Fix selectAccount_ro did not display 2020-02-10 15:59:45 -07:00
nathangray
4ef2b0b401 - Fix doubled format string in readonly duration
- Fix format displayed when duration is 0
2020-02-10 15:32:31 -07:00
nathangray
b5af403238 Fix template namespace 2020-02-10 14:14:17 -07:00
nathangray
444f98fe34 Fix first repeating row had no widgets 2020-02-10 14:13:46 -07:00
nathangray
39590368bf Hopefully last attribute inheritance bug fix, solves a lot of the console warnings.
Just swapping the function parameter order, since we called the function from every constructor.
2020-02-10 11:41:40 -07:00
Hadi Nategh
81b12cf9ee Convert et2_widget_favorites to TS 2020-02-10 16:48:15 +01:00
Hadi Nategh
44ed664f7a Convert et2_widget_entry to TS 2020-02-10 15:29:27 +01:00
Hadi Nategh
b98ce00079 Convert et2_widget_taglist to TS 2020-02-10 15:17:09 +01:00
Hadi Nategh
e0ec34493b Convert et2_widget_progress to TS 2020-02-10 15:00:48 +01:00
Hadi Nategh
c19ea5a8ec Convert et2_widget_iframe to TS 2020-02-10 14:50:57 +01:00
Hadi Nategh
c7e7346584 Convert et2_widget_hrule to TS 2020-02-10 14:36:09 +01:00
Hadi Nategh
a1bf3f345b Convert et2_widget_groupbox to TS 2020-02-10 14:33:15 +01:00
Hadi Nategh
5dd310c254 Convert et2_widget_taglist to TS 2020-02-10 13:12:38 +01:00
Hadi Nategh
d88854b467 Convert et2_widget_file, et2_widget_vfs and fixes couple of definitions in other widgets 2020-02-07 17:41:51 +01:00
nathangray
4adff37f6f Fix missing / not set attributes 2020-02-07 09:31:10 -07:00
nathangray
0249c1604b Fix duration display format caused error 2020-02-07 09:30:43 -07:00
nathangray
d8345d2178 Fix bugs in attribute inheritance 2020-02-07 09:25:53 -07:00
Hadi Nategh
5e80a05cd1 Convert et2_widget_checkbox to TS 2020-02-07 10:52:45 +01:00
Hadi Nategh
1d69d52d32 Convert et2_widget_html to TS 2020-02-06 16:47:08 +01:00
Hadi Nategh
91119891cd Convert et2_widget_split to TS 2020-02-06 16:26:37 +01:00
Hadi Nategh
7d01281fa0 Convert et2_core_editableWidget and et2_widget_htmlarea to TS 2020-02-06 14:30:22 +01:00
Hadi Nategh
edf95a4bdf Convert et2_widget_url to TS 2020-02-06 12:10:57 +01:00
nathangray
06341552cf Get select account working 2020-02-05 15:30:24 -07:00
nathangray
f69ebe44bc Get link widget working 2020-02-05 15:27:24 -07:00
nathangray
8dc41fd07a Get nextmatch-entryheader working 2020-02-05 13:48:50 -07:00
Hadi Nategh
458137851d Add missing files from previous commit 2020-02-05 12:58:27 +01:00
Hadi Nategh
c280207de1 Convert et2_widget_image.js to TS and fixes types for show_dialog 2020-02-05 12:55:38 +01:00
nathangray
e0bc769315 - Fix attribute inheritance didn't work properly
- Get nextmatch filterheader working
2020-02-04 16:07:50 -07:00
Hadi Nategh
12eb1dec61 Fix TS type errors on widget number 2020-02-04 18:58:59 +01:00
Hadi Nategh
5617b6c33d Fix TS errors on dialog widget 2020-02-04 18:35:46 +01:00
Hadi Nategh
b45a74ac36 Merge branch 'master' into typescript 2020-02-04 16:45:24 +01:00
Hadi Nategh
491d17bc08 * Collabora: Fix issue of inserting an image into document pops a rename dialog 2020-02-04 13:27:55 +01:00
Ralf Becker
2fc0666762 merged master into typescript 2020-02-03 15:16:51 +00:00
Ralf Becker
e0f38dfb94 migrated infolog app.js to typescript 2020-02-03 16:05:40 +01:00
nathangray
3f8bd1b494 Get nextmatch rendering, sort of 2020-01-31 13:07:27 -07:00
Hadi Nategh
65bca4c025 Fix missing parts from merge commit 2020-01-30 14:48:20 +01:00
Ralf Becker
1776215ada use interface to get autocompletion and types for client-side API 2020-01-30 08:40:11 +00:00
nathangray
49f3014037 Work on getting nextmatch loading 2020-01-29 16:05:01 -07:00
nathangray
926415795a Fix namespaces were not processed 2020-01-29 14:29:38 -07:00
nathangray
b6e87f0887 Fix namespaces were not processed 2020-01-29 14:29:06 -07:00
Hadi Nategh
ffae3f2e17 Remove all map files 2020-01-29 17:14:32 +01:00
nathangray
6094cdd822 Get less errors for nextmatch 2020-01-29 15:12:44 +01:00
nathangray
95a06b3f10 Support legacyOptions 2020-01-29 15:12:44 +01:00
Hadi Nategh
addc4d8935 Convert et2_toolbar to TS 2020-01-29 15:12:44 +01:00
nathangray
0ba4d68baa Fix undefined error looking up cell content 2020-01-29 15:12:44 +01:00
nathangray
97337b6729 Get at least the nm header showing up 2020-01-29 15:12:44 +01:00
nathangray
28ad7abe97 Work on getting nextmatch going 2020-01-29 15:12:44 +01:00
nathangray
a9c4919c55 Fix compiled expressions could not be found 2020-01-29 15:12:44 +01:00
nathangray
0945d9e686 Temporary work around for legacyOptions issue 2020-01-29 15:12:44 +01:00
Hadi Nategh
9958c93c13 Check if the et2_hbox is attached before calling its child getDOMNode cause it's might not be set yet 2020-01-29 15:12:44 +01:00
Hadi Nategh
d889443e70 Convert et2_dropdown_button to TS 2020-01-29 15:12:44 +01:00
Hadi Nategh
c7b04a666c Convert et2_radiobox to TS 2020-01-29 15:12:44 +01:00
Hadi Nategh
00086e37b2 Convert et2_number to TS 2020-01-29 15:12:44 +01:00
nathangray
605a587bca Type parameter is optional 2020-01-29 15:12:44 +01:00
nathangray
43a9100c91 - Add some more parameter types
- Solve the uninitialized attribute issue (for insertChild() called from constructor at least)
2020-01-29 15:12:44 +01:00
Ralf Becker
0b50545cc1 missing generated .js and .map files, until we generate them via Grunt 2020-01-29 15:12:44 +01:00
Ralf Becker
ec7f8931b2 selectbox widget and some fixes 2020-01-29 15:12:44 +01:00
Ralf Becker
05b92c97f2 fix wrong class-name for attributes in constructor call 2020-01-29 15:12:44 +01:00
Hadi Nategh
313693a42c fix attributes in super call 2020-01-29 15:12:44 +01:00
nathangray
aaa4c3ae9e Fix some visibility issues, export the et2_action_object_impl 2020-01-29 15:12:44 +01:00
nathangray
50a0bb6157 Grid to TS 2020-01-29 15:12:44 +01:00
Ralf Becker
9e006797c9 date-widgets and friends for TS 2020-01-29 15:12:44 +01:00
Hadi Nategh
3b51264882 Convert et2_hbox to TS 2020-01-29 15:12:44 +01:00
Hadi Nategh
e1cd652183 Use destroy instead of free 2020-01-29 15:12:43 +01:00
Hadi Nategh
28e4e81478 Fix missing options in et2_dialog 2020-01-29 15:12:43 +01:00
nathangray
a5299abbf7 Use correct widget for attributes 2020-01-29 15:12:43 +01:00
nathangray
bd584dc991 Replace missing widgit registration 2020-01-29 15:12:43 +01:00
Hadi Nategh
fd31946f4e Fix error method generateAttributeSet does not exist 2020-01-29 15:12:43 +01:00
Hadi Nategh
1df5124246 Fix et2_dialog TS errors 2020-01-29 15:12:43 +01:00
nathangray
3cbecd5270 Return types for some functions 2020-01-29 15:12:43 +01:00
nathangray
1e39e5e654 arrayMgr to TypeScript 2020-01-29 15:12:43 +01:00
nathangray
46385aadc9 arrayMgr to TypeScript 2020-01-29 15:12:43 +01:00
nathangray
8b7be57067 Fix copy/paste error in constructors 2020-01-29 15:12:43 +01:00
nathangray
5e27866dc3 Fix copy/paste error in constructors 2020-01-29 15:12:43 +01:00
nathangray
812f6a0ef7 ts->js maps 2020-01-29 15:12:43 +01:00
nathangray
680a82cb4e Get et2 working in typescript 2020-01-29 15:11:00 +01:00
nathangray
805ac4591b Not sure where this one went 2020-01-29 15:11:00 +01:00
nathangray
9e33a168fc Getting etemplate2 sort of working 2020-01-29 15:11:00 +01:00
Hadi Nategh
5302ec5fa4 Convert et2_dialog widget to TS 2020-01-29 15:08:42 +01:00
Ralf Becker
7076f8fa3a tabbox widget 2020-01-29 15:08:42 +01:00
Ralf Becker
0205d72b53 description widget without expose 2020-01-29 15:08:42 +01:00
Hadi Nategh
fb94b13a89 Convert et2_video widget to TS 2020-01-29 15:08:42 +01:00
Ralf Becker
61a5505ec3 template widget with TS 2020-01-29 15:08:42 +01:00
Ralf Becker
e2c735ace9 textbox and button widget 2020-01-29 15:08:42 +01:00
nathangray
2377ec2090 Pass individual parameters 2020-01-29 15:08:42 +01:00
nathangray
7576742cbc TS for Box widget 2020-01-29 15:08:42 +01:00
nathangray
368f20ab5a Make labelContainer protected for subclasses 2020-01-29 15:08:42 +01:00
Ralf Becker
48ddfb1730 WIP on et2_widget_textbox 2020-01-29 15:08:42 +01:00
nathangray
3a21a5bc6b Second run at TS for valueWidget, restoring what was lost 2020-01-29 15:08:42 +01:00
nathangray
e0259fe6f2 First run at TS for valueWidget 2020-01-29 15:08:42 +01:00
nathangray
a90946a05d Some return types 2020-01-29 15:08:42 +01:00
Ralf Becker
f412b71225 inputWidget with TS 2020-01-29 15:08:42 +01:00
Ralf Becker
d9e2e26fcd some fixes for valueWidget 2020-01-29 15:08:42 +01:00
Ralf Becker
8b3f9947e6 baseWidget in TS 2020-01-29 15:08:42 +01:00
nathangray
988dbbc8da First run at TS for valueWidget 2020-01-29 15:08:42 +01:00
Ralf Becker
659c8b0e68 get et2_DOMWidget to TypeScript 2020-01-29 15:08:42 +01:00
Ralf Becker
f2b7ca4c32 move implements and instanceOf methods to inheritance 2020-01-29 15:08:42 +01:00
Ralf Becker
a4ce103d7e WIP with TypeScript 2020-01-29 15:08:42 +01:00
Ralf Becker
901825bcfa first try with TypeScript: timesheet app.js incl. new egw_app base-class 2020-01-23 09:14:58 +01:00
nathangray
3258121a15 Api: Fix some nextmatch bugs
- default columns were not properly used if there was no user preference found
- negated column preference caused problems with column order
- missing data for sorting if no column preference set yet
2020-01-07 14:37:22 -07:00
Hadi Nategh
f5ed503502 Attach relative icons with buttons used in col-selector dialog 2020-01-06 16:07:23 +01:00
Hadi Nategh
4619d55045 * File selector: implement Overwrite and Rename possibilities for saving an existing email message or attachment 2019-12-18 16:31:54 +01:00
Hadi Nategh
9902308540 * Html Editor: Add a custom paragraph into block formating in order to get paragraph lines with no line-height 2019-12-05 16:04:40 +01:00
nathangray
673327da1e Revert "Api: Nextmatch - Do not generate DOM nodes for hidden columns"
This reverts commit 0f3a1660ff.
2019-12-04 09:49:21 -07:00
Hadi Nategh
36913e0627 Fix htmlarea issue with prefs rte_toolbar values 2019-11-28 17:54:01 +01:00
nathangray
0f3a1660ff Api: Nextmatch - Do not generate DOM nodes for hidden columns 2019-11-26 11:59:37 -07:00
Hadi Nategh
3c374f7803 Fix scrolling a sorting item breaks the sorting in colSelector dialog 2019-11-25 13:37:24 +01:00
Hadi Nategh
3714cbbdf2 Set a max-height to column-selector list 2019-11-20 12:37:58 +01:00
Ralf Becker
71baa8654c fix wired CSP error after some 404 in html content 2019-11-14 15:19:58 +01:00
Hadi Nategh
7527dfb300 Add specific class for toggle_readonly mode 2019-11-11 14:09:35 +01:00
Hadi Nategh
fb20fe69dd WIP nextmatch column sorting UI:
- Give the dialog a new look
2019-11-06 16:07:48 +01:00
Hadi Nategh
2f5fa5def3 WIP nextmatch column sorting UI:
- Apply user preference after sorting saved
2019-11-06 15:12:14 +01:00
Hadi Nategh
68f7e84fa3 WIP nextmatch column sorting UI 2019-11-05 16:22:49 +01:00
Hadi Nategh
16e09a1093 Set value_class option for multi-select list 2019-11-05 11:28:34 +01:00
Ralf Becker
5c8a19ba26 correctly encode success message 2019-11-01 11:40:44 +01:00
Hadi Nategh
3b4e2e43c6 Set style tag in htmlarea widget as valid by default 2019-10-29 13:36:51 +01:00
Ralf Becker
67c9f137d2 treat "0" as false as does php, our database storage and et2_checkType() 2019-10-25 18:25:35 +02:00
nathangray
00d995b4b5 Revert "* Api: Fix bug where some links opened in the application's main tab instead of popups"
It did not take into account all apps (projectmanager & addressbook should open in main tab)

This reverts commit 474796c9bb.
2019-10-17 15:03:47 -06:00
nathangray
46ec335c42 Add attribute to turn off double click to edit editable widget 2019-10-17 10:36:21 -06:00
Hadi Nategh
85496dddb3 Fix search query for vfsSelect search box 2019-10-16 13:10:25 +02:00
nathangray
474796c9bb * Api: Fix bug where some links opened in the application's main tab instead of popups 2019-10-15 13:43:21 -06:00
Hadi Nategh
5a1fbe7049 Use letter avatar when user have no personal avatar is set in addressbook 2019-10-15 14:06:33 +02:00
Hadi Nategh
fc1e0679fb Fix htmlarea "enable features in toolbar" preference not working 2019-10-14 14:57:45 +02:00
Hadi Nategh
0303adbc35 Implement letter avatar in client-side as avatar widget's component 2019-10-14 13:42:07 +02:00
Hadi Nategh
74100f53ae Add format block as preference for pre-selecting block on editor initialization 2019-10-09 16:22:23 +02:00
nathangray
c51108b71b Fix singe fields attribute (as string) did not work 2019-10-07 14:14:39 -06:00
nathangray
3f483478cd Different Download as ZIP url, some had errors with the previous
#37061
2019-10-04 10:24:29 -06:00
Hadi Nategh
a69d24ee66 * Api: Enable d-n-d into HtmlArea 2019-09-30 17:22:18 +02:00
nathangray
efc29d0631 Etemplate: Reduce some sizing issues in historylog 2019-09-25 09:20:38 -06:00
nathangray
6ce32d3e85 Etemplate: Better calculation for all fixed width columns to properly fit given width
This one avoids potential overflow due to rounding
2019-09-25 09:20:38 -06:00
Hadi Nategh
9b4f6a8349 Improve toolbar admin sections 2019-09-25 11:17:55 +02:00
nathangray
d602ec6677 Etemplate: More robust checking in get_tab_info() to handle tab template not fully loaded yet 2019-09-23 16:33:20 -06:00
nathangray
5b545e24ec Etemplate: Fix sizing and layout for diffs when they're part of a multipart entry 2019-09-19 11:30:34 -06:00
nathangray
62299b8a15 Etemplate: historylog - get diff to work as part of multi-part entries 2019-09-17 15:19:55 -06:00
nathangray
0e8b0e0562 Etemplate: Fix unable to clear color picker 2019-09-17 09:11:29 -06:00
nathangray
ca76e377cd Etemplate - avoid JS errors if unloading a nextmatch that didn't get properly initialized.
This can happen if the nm is set disabled via server-side modification
2019-09-16 09:46:57 -06:00
nathangray
a6a3cb9a0f Etemplate - make sure dialog is wide enough if there is no title 2019-09-10 09:51:35 -06:00
Hadi Nategh
8506bf5e5f * Mail: fix drag-n-drop files from desktop no longer works on htmlarea as expected 2019-08-28 16:16:36 +02:00
nathangray
b064760e0f Etemplate - Make sure dialog is wide enough for the title 2019-08-27 14:09:13 -06:00
nathangray
c07a0509ce Fix missing translations reported by Stefan Unverricht 2019-08-27 12:04:06 -06:00
Hadi Nategh
74d6322414 Fix modify mail subject action's title 2019-08-26 17:01:37 +02:00
nathangray
3e8f2274f2 Etemplate - make editableWidget a submitListener, so if someone submits while editing, the edit is still saved. 2019-08-22 14:22:31 -06:00
Hadi Nategh
0564e61c50 * Mail: add format selector into compose htmltext editor's toolbar 2019-08-20 15:55:53 +02:00
Hadi Nategh
70fd9a6529 Set correct appname when updating actions 2019-08-14 15:49:36 +02:00
Hadi Nategh
ae3db1bc28 * Mobile theme: fix broken html editor in mobile view (e.g. mail compose) 2019-08-14 10:05:28 +02:00
nathangray
be6325a68c Etemplate - fully implement label widget's "for" attribute 2019-08-13 13:28:56 -06:00
Hadi Nategh
a7bfd5c871 Apply editable_height independent of the height attribute 2019-08-02 10:21:38 +02:00
Hadi Nategh
824537068d Fix icon for select-file dialog 2019-07-30 15:57:19 +02:00
Hadi Nategh
a68f9f54b7 Fix search method in vfsSelect dialog 2019-07-30 12:26:26 +02:00
Hadi Nategh
16ec15573c Fix avatar edit dialog 2019-07-29 15:28:50 +02:00
Hadi Nategh
da0175a44c Add height attribute 2019-07-29 15:28:05 +02:00
nathangray
2194808244 Etemplate - fix bug where context menu actions only worked the first time 2019-07-26 10:25:28 -06:00
Hadi Nategh
c8151c6f30 WIP search in vfsSelect dialog:
Implement search query for file lists
2019-07-26 17:26:53 +02:00
Hadi Nategh
d5b8242b19 Merge branch 'changable_column_order' 2019-07-22 11:55:15 +02:00
nathangray
4d858234ab Etemplate - color widget - use white as an empty value instead of showing black 2019-07-19 11:27:53 -06:00
nathangray
feedce26c3 Etemplate - remove jPicker, now using browser's color picker for color widget 2019-07-18 16:16:43 -06:00
nathangray
0731731e27 Admin - fix missing/incorrect filter options in user export definition 2019-07-10 15:50:31 -06:00
nathangray
daffc427f9 Another attempt to solve the tracker comment height issue 2019-06-19 11:08:05 -06:00
nathangray
5fce8985b8 Missing translations from Stefan Unverricht 2019-06-18 11:43:37 -06:00
nathangray
cdcf2b1494 Change clickable VFS path to trigger normal change function instead of directly opening.
Fixes loading full UI when clicking path in a share.
2019-06-17 11:18:47 -06:00
nathangray
c2f7e2ab97 Try to fix tracker comments with not enough height 2019-06-05 10:48:38 -06:00
nathangray
f5b1b68e20 Fix missing translation on combined column titles 2019-06-05 09:15:40 -06:00
Hadi Nategh
797d396a4a Make sure we can submit before setting the loading prompt 2019-06-05 15:47:12 +02:00
Ralf Becker
ea2e9775ea support for data: urls 2019-06-05 14:43:57 +02:00
nathangray
0041c248ad Fix historylog multi-part widgets where child widgets have options 2019-05-24 11:45:43 -06:00
nathangray
e62e27b179 Fix some missing translations found by Stefan Unverricht 2019-05-23 11:25:06 -06:00
nathangray
edfd5fd24d Etemplate - also submit action data 2019-05-14 16:43:15 -06:00
nathangray
9daa2fe8b6 Etemplate - add new attributes to URL widget
allow_path: Allow a path instead of a URL, must start with /
	trailing_slash: Require or forbid that the URL ends with /
2019-05-10 14:53:00 -06:00
nathangray
b8a03cb6f1 Fix error if a parent key gets set as null 2019-05-03 16:09:50 -06:00
nathangray
a1419530cc Make sure we don't error when readonly 2019-05-02 10:28:29 -06:00
nathangray
b5762a6337 Unify timestamper formatting 2019-05-02 10:17:32 -06:00
nathangray
383b602c67 Etemplate - even better formatting for display of linked files in sub-directories
Now looks good for multiple files in the same sub-dir, not just one file per sub-dir
2019-04-25 11:57:42 -06:00
nathangray
64a0ec9c02 Etemplate - better formatting for display of linked files in sub-directories 2019-04-25 11:37:39 -06:00
nathangray
e93f212d4f Documentation fix 2019-04-23 15:44:24 -06:00
Ralf Becker
aad4db1617 allow statustext to contain multiple translated sub-strings eg: {Firstname}.{Lastname}
as we do for options already.
This allows to preserve existing translations, while adding further stuff
2019-04-19 10:17:26 +02:00
nathangray
b9470e8594 Get historylog to better fit its tab's full height 2019-04-18 14:12:16 -06:00
nathangray
e67e8672df Check to see if a history (list of) widget has matching select options before trying to use it as a list of widgets for a multi-part value. Should fix history problems with select options where one option is a widget name. 2019-04-18 11:42:06 -06:00
nathangray
8de13c5bba Get radioboxes to understand {value: ..., label: ...} option format 2019-04-17 12:43:27 -06:00
nathangray
afd1923851 Avoid error if dataStorePrefix & get_rows are not set 2019-04-17 11:34:38 -06:00
Hadi Nategh
c52ef308d3 Fix editing a textarea is not possible because of click handler 2019-04-15 12:35:34 +02:00
nathangray
d2bac9d654 Etemplate - allow trees to be readonly 2019-04-10 10:54:00 -06:00
nathangray
93647a034f Etemplate - add ability to give history log a different data source 2019-04-09 11:46:54 -06:00
nathangray
5ca06d432d Break print dialog creation out into its own function 2019-04-05 10:21:41 -06:00
Hadi Nategh
f33ed6b100 Show mouse scroll icon if only there's scroll left-right available on vfsPath container 2019-04-04 16:40:13 +02:00
nathangray
b21b905cb4 If nextmatch is on a tab, add the tab name to the print column selection dialog 2019-04-03 15:13:19 -06:00
nathangray
a462f30f9c Add a function to get information about the tab a widget is on 2019-04-03 15:12:40 -06:00
Hadi Nategh
0312d67b67 Make the code compatible with es5 2019-04-02 14:29:22 +02:00
nathangray
bec4eb8cf1 Better way to avoid JS errors if nextmatch is disabled 2019-04-01 16:49:28 -06:00
nathangray
eb45eea505 Avoid JS errors if nextmatch is disabled 2019-04-01 16:30:53 -06:00
nathangray
b7605e2b3b Get nextmatch to render a little more nicely on a tab when it's not on the first tab 2019-04-01 16:08:39 -06:00
nathangray
1b8ce9ac33 Get nextmatch to render a little more nicely on a tab 2019-04-01 11:34:23 -06:00
Ralf Becker
f28ff69e91 fix values like 0, null, false, used server-side for no account selected 2019-04-01 13:10:27 +02:00
Ralf Becker
be8a1ca991 fix taglist-account failed to dynamic load all accounts not already cached client-side
(everything worked before, if all accounts are cached client-side!)
2019-04-01 12:35:17 +02:00
nathangray
832f105982 Remove debug code
Thanks, scrutinizer
2019-03-29 09:46:23 -06:00
nathangray
1c8db476f3 Missing or not translated phrases from Stefan Unverricht 2019-03-29 09:22:06 -06:00