nathangray
51f9177634
Try harder for nextmatch template name so it can be passed to hooks. If it can't be found in value, look in original attributes.
2021-04-19 10:42:48 -06:00
Ralf Becker
fb30713cbb
fix not working load_via parameter
2021-04-18 21:07:38 +02:00
Ralf Becker
e03b1aeb16
fix PHP 8 error: key() Argument #1 must be of type array, null given
2021-04-07 13:12:32 +02:00
Ralf Becker
fed41622c2
fixing all sorts of PHP 8 errors and PHPStorm errors
2021-03-31 17:50:01 +02:00
Ralf Becker
868135775c
PHP 8 fixes
2021-03-29 16:47:19 +02:00
Ralf Becker
e54aebebca
xml tags must not include undeclared namespaces like: <link-entry:infolog
...
Reinstating "throw an exception on XML errors in eTemplates for easier fixing"
This reverts commit 18b7d9311c
.
2021-02-16 21:52:40 +02: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
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
Ralf Becker
1259ae8d04
More automatic timezone handling schema for new code (hopefully not breaking existing code):
...
1. SO converts all timestamps to Api\DateTime objects using Api\DateTime::server2user($ts, 'object')
- Api\Storage and Api\Storage\Base class do that automatic if using 'object' as $timestamp_type constructor parameter
- if using just Api\Db you need to iterate over your selects manually and apply Api\DateTime::server2user($ts, 'object')
- timestamps are store in DB in server timezone and above conversation honors that and additionally set the user TZ
2. Rest of the app should keep all timestamps as Api\DateTime objects
- direct comparison works for Api\DateTime (and PHP \DateTime) as __toString() method automatic converts to UTC timestamps
- do NOT convert them to timezone-less timestamps and no further timezone conversation needed for output with eTemplate
3. eTemplate2 converts automatic to user timezone for displaying dates and times
- you need to use <date-time ... data_format="object"/> to get Api\DateTime objects back from eTemplate!
4. Api\Db converts automatic to server timezone when quoting DateTime objects for integer or timestamp columns
5. only output other then eTemplate might need to set a timezone different from the user TZ before calling $ts->format()
2021-01-26 11:16:42 +02: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
Ralf Becker
fe320938e5
document EGroupware timestamps and remove own __toString() method to be able to compare objects
2021-01-22 15:18:39 +02: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
93b64235a2
Etemplate: Fix customfield prefix attribute length assumption
2020-12-17 10:07:50 -07:00
nathangray
8910983c8e
Etemplate: Fix for some attributes not getting set
2020-12-17 09:17:38 -07:00
Hadi Nategh
cde6c10e05
Add Segoe font family into HTMLEditor
2020-12-09 13:17:37 +01:00
Hadi Nategh
c8020e6456
Do not query server if there's no actual taglist query, fix fatal error "Memory exhaustion"
2020-12-07 10:58:42 +01:00
nathangray
15084c8439
Etemplate: Use the actual template attribute if set for action processing, instead of always using the deprecated options attribute
2020-11-12 14:41:23 -07:00
nathangray
0fcfad04b4
Etemplate: Match server-side grid row namespacing to client-side
...
Client side does not open a new data perspective if row has an ID, server now doesn't to match. Fixes grids with row IDs lost their data on submit.
2020-11-05 13:41:36 -07:00
nathangray
10b98897d2
Etemplate: Fix sub-templates not expanded and children not processed if id is set but does not expand
2020-11-04 16:10:09 -07:00
nathangray
b3ed6372f7
Etemplate: Fix unwanted row reset if box had no ID
2020-11-04 12:53:29 -07:00
nathangray
1eae5d3780
Etemplate: Fix for Box not properly handling namespaces, now working for submit too
2020-10-28 09:51:55 -06:00
nathangray
5566a9d971
Etemplate: Fix for Box not properly handling namespaces
2020-10-27 10:29:46 -06:00
Ralf Becker
3292e478b6
creating a new dir from filemanager-select dialog always gave an error
2020-10-19 13:00:05 +02:00
Hadi Nategh
43600426c7
* Api: Add table button into html editor's toolbar
2020-10-14 11:05:51 +02:00
nathangray
05ee7eba37
Avoid some 'array_key_exists() expects parameter 2 to be array' warnings by checking first
2020-10-13 15:20:33 -06: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
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
4c7709d49f
Etemplate: Get vfsUpload values to use expose so they work like links
2020-07-03 14:23:41 -06:00
nathangray
ee498f703d
Etemplate: Fix password widget could not be cleared entirely
2020-07-03 09:25:51 -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
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
Ralf Becker
1ea45e6591
Mime-Type check can only work for the first chunk, further ones will always fail
2020-06-02 13:46:46 +02:00
Hadi Nategh
8d022c5908
do not try to push notifications for api.queue requests
2020-05-22 10:16:59 +02:00
Ralf Becker
ab20dbb70c
* Mail: automatic remove some invisible Unicode chars breaking email addresses: zero width space, variation selectors
2020-04-30 10:16:24 +02:00
nathangray
6664aea901
Etemplate: Register time_or_date widget, fixes wrong timestamps in mobile template mail list
2020-04-01 15:03:58 -04:00
Hadi Nategh
faca76f6a9
Do not run restrict validation check for type taglist-account if free entries are allowed
2020-01-31 16:13:45 +01:00
nathangray
121d5f82ef
Etemplate: Fix taglist-account would reject most values
2019-10-11 11:55:10 -06:00
nathangray
084d2f7ac7
Etemplate: Expand VFS path attribute, if present
2019-09-27 13:40:24 -06:00
nathangray
1131d07199
Revert "Etemplate - avoid error if child is not a widget", it causes other random breaking
...
This reverts commit 1f63996a2c
.
2019-08-02 11:08:14 -06:00
nathangray
1f63996a2c
Etemplate - avoid error if child is not a widget
...
though it never should be...
2019-08-02 10:33:38 -06:00
nathangray
6f7c939d8b
Etemplate - avoid warning from method_exists if method is a callable
2019-07-11 11:25:30 -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
a4a4a32d7b
If there's a failure storing uploaded file, make sure to show it
2019-04-29 16:03:34 -06:00
nathangray
7e51edf39d
Etemplate - contact widget: Fix sometimes missing n_fn
2019-04-24 14:28:40 -06:00
nathangray
eeab4ebe31
Use expanded form name to look up path from widget ID
2019-04-23 14:47:52 -06:00