Commit Graph
237 Commits
Author SHA1 Message Date
Cédric Krier 765e828c19 Remove tempusdominus dependency
Instead we use native input of type date, datetime-local and time to pop-up a
calendar. Such input can not be directly used because we can not control the
format, so we synchronize the value with a text input using the proper format.
The text input is also parsed using the right format.

issue9922
review339181002
2021-02-21 19:38:25 +01:00
Cédric Krier 3535e2dce0 Add help for each value to selection and multiselection
issue9649
review320021002
2021-02-14 14:28:55 +01:00
Cédric Krier b52e343622 Compare date, datetime and number per value
issue9972
review309051002
2021-02-12 20:29:02 +01:00
Cédric Krier 082f6d0924 Use likify to convert search text in completion
issue10021
review320611003
2021-02-03 19:39:33 +01:00
Cédric Krier 0921f01ba3 Detect all wild cards and escaped wild cards in likify
issue10020
review320611002
2021-02-03 19:30:13 +01:00
Cédric Krier 9cb5543f9d Fall-back to internal selection value if selection is a string
When DomainParser format a domain from a DomainValidationError, the field
definition may contain as selection as string. At this place we can not really
make an other RPC call to convert the selection so we fall-back to the internal
value.

issue9989
review349271002
2021-01-22 01:11:08 +01:00
Cédric Krier 41513b2718 Support float represented by exponential
The domain parser need to find the number of digit to display by analysing the
string format of the value. Some small values may be formatted as exponential.

issue9955
review347261002
2021-01-18 23:29:44 +01:00
Cédric Krier 57c4962bd7 Support empty value for timedelta converter
issue5092
review316481002
2020-12-18 00:21:38 +01:00
Cédric Krier dc2a61f00d Set the same overflow for datetime picker than completion
issue9614
review292581002
2020-11-15 19:19:16 +01:00
Cédric Krier 520ce5dc4d Reject promise when selection is empty
It is reject that must be called instead of fail which is to add a callback.
2020-10-31 19:05:24 +01:00
Cédric Krier e98ab85f15 Animate processing dots
issue9619
review304291002
2020-10-04 00:39:12 +02:00
Cédric Krier 137852452e Fallback to model name as title
issue9596
review300381002
2020-10-04 00:35:23 +02:00
Cédric Krier 4f5c7d8af2 Remove overflow on fieldset when dropdown is shown
issue9626
review314311002
2020-10-03 23:42:18 +02:00
Cédric Krier b9cb36591e Allow sharing view searches
We add a rule to give read access to all view searches without a user.
We manage the delete access on client side thanks to the _delete attribute.
If the user does not have the delete right, the bookmark star is disabled.

issue9515
review323751002
2020-09-24 23:00:52 +02:00
Cédric Krier d9242e3a6b Send client email via server
issue9449
review292001002
2020-09-17 17:18:02 +02:00
Cédric Krier 36ab2dd7a5 Set field's name as input's name attribute
This makes the browser autocomplete suggestion smarter.

issue9461
review325741002
2020-08-05 00:30:02 +02:00
Cédric Krier 0e8c6b4c78 Do not set 'undefined' as button class
The precedence between the + operator and the || makes that the undefined size
is appended to the class string instead of the empty string.

issue9499
review310111002
2020-08-03 00:03:15 +02:00
Cédric Krier 878a67a9ae Use proper alert context for concurrency and error
issue9430
review303811002
2020-07-13 21:14:27 +02:00
Cédric Krier 4539fccb2b Allow configuration of default colors for graph and calendar
issue9435
review300011002
2020-07-09 00:34:01 +02:00
Cédric Krier ccc86922f9 Normalize wizard message views
We use the proper icon between info, question, warning and error.
We remove the exclamation mark in info messages.

issue9429
review301831002
2020-07-09 00:21:48 +02:00
Cédric Krier eda93a21ed Returns None when evaluating domain with None
We implement the same behavior as SQL with NULL which always returns NULL
except for IS operator. So the evaluation has the same result as the search.

issue8615
review290281002
2020-06-19 00:18:04 +02:00
Sergi Almacellas Abellana 668fc7599b Allow html objects in autocompletion entries
issue9385
review317551002
2020-06-03 21:02:49 +02:00
Cédric Krier 541c018e90 Escape external strings
issue9351
review301651002
2020-05-26 09:57:34 +02:00
Cédric Krier 6d9d4f447f Make overflow-y visible to display completion
issue9231
review293611002
2020-04-28 00:31:05 +02:00
Cédric Krier b1d501ee66 Skip invalid branch of domain without the inverted field
Those branches of the domain should not prevent to compute a proper inverted
domain for the field as the other fields will be fixed later.

issue9200
review311191002
2020-04-12 23:21:08 +02:00
Cédric Krier bdad20516f Add noreferrer noopener to external URL
issue9089
review289401002
2020-03-09 18:08:24 +01:00
Cédric Krier 3a079ab1d6 Do not force value in OR-ed clause
When any other variable in Or-ed clause is not known, we can not force the
value of the variable.

issue9092
review272941002
2020-03-06 23:14:24 +01:00
Sergi Almacellas Abellana 9813ace62a Support hours greater than 99 when formatting timedelta time's
issue9016
review258701002
2020-02-06 20:48:05 +01:00
Cédric Krier 1dcca1cf08 Use locale context to format date in domain parser
issue8999
review278401002
2020-02-04 18:28:09 +01:00
Cédric Krier d3ec7bf2d0 Manage escape key on UniqueDialog
On escape key pressed, we call close method and reject the promise like a
cancel.

issue8947
review266611002
2020-01-13 23:51:27 +01:00
Cédric Krier 91953bfc2b Properly test always checkbox in user warning
We stop using callback on checkbox to store the value but use directly the
value from the widget.

issue8847
review272541002
2019-12-05 21:43:59 +01:00
Cédric Krier 57ec231bff Display record name on the concurrency comparison tab
issue8803
review282351002
2019-11-26 22:34:49 +01:00
Cédric Krier 0fefec033f Convert to float when parsing timedelta
The user can enter a float value for the converter parts.

issue8816
review256231002
2019-11-16 12:51:50 +01:00
Cédric Krier 375e6acfd3 Replace table in cell of treeview by flex display
In order to have correct overflow ellipsis, we must stop to use table to align
affix inside a cell. Instead we use flexblox layout to expand the widget and
align the affixes.
Also as now content will be ellipsis, we must provide a title to the buttons.

issue8762
review268231002
2019-11-02 17:35:55 +01:00
Cédric Krier 37c4ac36b8 Use small button in tree view
This avoids to use negative margin to keep row heigh constant.
And we display the button as block on responsive tree to make it easier to
click on.

issue8761
review286171004
2019-10-30 14:06:51 +01:00
Cédric Krier 9ee63e7993 Use typeof instead of instanceof to test for string
All strings are not instance of String.

issue8706
2019-10-11 12:06:14 +02:00
Cédric Krier 7103a8a0e7 Use strict equality to compare clause against operator
In javascript, a list containing a string is equals to the string, e.g:

    ['foo'] == 'foo'

issue8711
review268071002
2019-10-11 11:46:37 +02:00
Cédric Krier 8a8cf61d46 Search for '..' only on string value in domain parser
The value can be a list if ';' is used.

issue8706
review254381002
2019-10-11 11:40:42 +02:00
Cédric Krier 1de6685654 Add MultiSelection field
issue7851
review249911002
2019-09-20 11:32:55 +02:00
Cédric Krier e9f6976eae Improve completion on boolean
- Do not convert None to False
- Complete with the opposite or both values

issue8620
review254181002
2019-09-16 23:59:43 +02:00
Cédric Krier 0e4419917c Implement and use scrollIntoViewIfNeeded instead of scrollIntoView
It is a better user experience to not scroll if the element is already visible.

issue8619
review258021002
2019-09-07 23:19:17 +02:00
Cédric Krier b513ae9994 Replace child_of target only if it is not a related field
issue8609
review285911002
2019-09-02 18:34:55 +02:00
Cédric Krier 58ea79382a Do not consider readonly/non editable widget as focusable
issue8475
review277751002
2019-09-02 18:28:23 +02:00
Cédric Krier 5f91e10c06 Ensure DomainParse.group returns a list of clause
issue8520
review255681002
2019-08-07 19:22:59 +02:00
Cédric Krier 7c0a248ec3 Prevent navigation key on completion input to leave the row
We do not propagate down key event on input completion and skip keydown event
from dropdown menu inside editable tree.

issue8507
review263901002
2019-08-07 19:17:15 +02:00
Cédric Krier 9695e3d378 Remove max-height on treeview to display dropdown
As the optional scrollbar of the treeview will be removed, the dropdown input
may no more be visible. So we must scroll until it is visible.

issue8509
review285581002
2019-07-25 10:18:51 +02:00
Cédric Krier 328d7abd21 Use faster way to remove children
issue8453
review255641002
2019-06-27 14:32:36 +02:00
Cédric Krier f841fd1bc7 Allow to search on related field in search box
The server adds to the definition of the fields, the definition of relation
fields up to specific deep level.
The clients use this relation fields definition to extend the domain parser
with those fields using a dot notation. But those "dotted fields" are not
shown in the search filter to not bloat the popup as it is dedicated to
learning.
In addition, Dict fields are also filled with relation fields coming from the
keys defined in the schema model. As the size can very large, it is possible
to deactivate this feature from the configuration.

issue8293
review259391005
2019-06-16 15:44:14 +02:00
Nicolas Évrard ddef8d7c06 Return an empty URL when the icon name is invalid
issue7904
review70461002
2019-06-04 17:38:17 +02:00
Cédric Krier 185eef1e63 Allow all models for reference if there is no restriction
If the allowed models is empty, it means that there is no constraint on the
reference model. So we must allow all of them.

issue8300
review275311002
2019-04-26 12:04:10 +02:00