Commit Graph
59513 Commits
Author SHA1 Message Date
Cédric Krier 6718a613cf Convert UnidentifiedImageError from PIL into validation error
The image conversion that are done as preprocessing of the user input should be
considered as data validation.

Closes #14084
2025-06-18 01:26:39 +02:00
Cédric Krier 2cd40e46a8 Catch error from clipboard.writeText
Closes #14082
2025-06-17 17:21:52 +02:00
Cédric Krier c3a9faea42 Convert domain without checking access
The searcher of Function field may execute code for which the user has no
access.

Closes #14077
2025-06-16 19:42:12 +02:00
Cédric Krier 98f6f4b037 Convert tuple from XML ID into string before join them
9941357a9b7c modified the 'ref' method of the eval context of XML file to
return reference string but get_id return a tuple of string and integer. So the
integer must be converted to string before being joined.

Closes #14066
2025-06-19 09:45:55 +02:00
Cédric Krier a41611ddd5 Do not fail if the cache name to clear does not exist
Cache instance can be created on usage like in ValueMixin, so a process may not
have an instance of the cleared cache.

Closes #14067
2025-06-12 12:48:22 +02:00
Cédric Krier d1b33c2dc0 Define product variable to raise error when cost price expression is not a Decimal
The product variable is used to format the error message but also as for
50bf49b7b031 it may be empty.

Closes #14062
2025-06-10 18:12:43 +02:00
Adrià Tarroja Caubet 4b07c0d666 Inherit marketing reporting abstract models in right order
Abstract models should be always the last in inheritance because
they are object when optional dependencies are not activated

Closes #14057
2025-06-13 10:56:40 +02:00
Maxime Richez 207f097a95 Do not check access when register button click
e6c72b1f23e7 missed to add the decorator on the register method.

Closes #14060
2025-06-19 23:40:11 +02:00
Cédric Krier fa4c2ae1fb Limit the height of completion dropdown
The actions are set as sticky to be always visible.

Closes #14063
2025-06-10 23:00:30 +02:00
Cédric Krier 7425bc176a Use dedicated list view to display children line on budget form
We do not need to full record name but just the current name when editing
children from the parent form.
2025-05-10 11:57:50 +02:00
Maxime Richez 776814ba5c Convert shipments set to list when calling set_measurements
Closes #14071
2025-06-13 15:57:31 +02:00
Cédric Krier 1921487213 Replace the usage of field definitions with field attributes in the ModelStorage
Model.fields_get is expensive to call as it create a new dictionary for each field.

Closes #14061
2025-06-10 14:31:11 +02:00
Cédric Krier 5e560afbdc Do not use field definitions when exporting data
Calling Model.fields_get is expensive especially for each record to export.

Closes #14061
2025-06-10 14:29:07 +02:00
Cédric Krier ed1e9d8916 Fill payment amount cache only when cache column is added by register
Closes #14034
2025-06-02 10:54:15 +02:00
Cédric Krier 593c8f0aea Use AND-ed clause when searching for implicit location for internal shipment
88978685 added a clause on the type but using an OR-ed clause which includes
all the storage locations instead of only the storage location with a
provisioning or overflowing location.

Closes #14016
2025-05-13 18:49:32 +02:00
Cédric Krier b708094026 Make trytond-gis depends on the trytond extras test for its tests 2025-06-01 23:19:18 +02:00
Cédric Krier ae71913833 Add transition from packed to cancelled for internal shipment
Since fee9e4e8c864 the internal shipment has a new packed state that can be
cancelled.

Closes #14053
2025-06-05 16:43:10 +02:00
Xavi Hermoso 3e4fea4b3c Set default flag to False in Own Requisition rule group as it is linked to Purchase Requisition group
Closes #13930
2025-03-20 12:22:47 +01:00
Cédric Krier 733df9d2dd Use the configured display size when selected or expanded row are defined
This ensure that we store on the view the selected/expanded rows by displaying
them after a reload.

Closes #14048
2025-06-01 12:49:28 +02:00
Cédric Krier eb7336c1c4 Delay the observation of the more button
#14048
2025-06-01 12:46:57 +02:00
Cédric Krier c37abac5dc Do not save tree state when setting value on form view 2025-06-01 12:45:53 +02:00
Cédric Krier 8e1e68727d Always wait for the promise of save_tree_state
#14048
2025-06-01 12:45:06 +02:00
Cédric Krier 312ae7b387 Forbid to set closed account on statement rule line
The domain must be the same as account domain of statement line.
2025-05-31 14:41:01 +02:00
Cédric Krier 75ccdb1ba2 Use -1 as fallback value for company in account domain of statement line 2025-05-31 14:40:02 +02:00
Sergi Almacellas Abellana e61ed092f6 Remove debug exception introduced by 2fbe3b55927a 2025-06-12 10:54:46 +02:00
Cédric Krier 1bc9046fbe Add test scenario for tax test wizard 2025-05-30 21:36:23 +02:00
Cédric Krier a4a655b05e Use explicit key when computing taxes and object instead of dict
This defines explicitly the available attribute and unify the use the values as
tax line instead of the keys.
2025-05-30 21:35:55 +02:00
Cédric Krier cc8901276e Round only the tax amount of the line when rounding per line
If we round the tax amount already added to the other line, the result may vary
depending on the order of the lines.
This is because round half even is used so the result may depend on the already
summed tax amounts.

Closes #14047
2025-05-30 18:10:27 +02:00
Cédric Krier c710994e2e Store the selected state before deselect all the rows
We must toggle the state of the row based on the original state.
Otherwise on single mode, clicking on a selected row keep it selected.

Closes #14045
2025-05-28 18:15:07 +02:00
Cédric Krier 45d3a25343 Unselect other rows when radio button of row is selected
The selection of a radio button, deselect automatically the other radio button
so we must update the selection of other rows to remove the selected class.

Closes #14044
2025-05-28 18:11:23 +02:00
Cédric Krier bd4b030518 Change the border color of checkbox and radio when focus
This provides a visual hint that the element has the focus.

Closes #14043
2025-05-28 18:05:16 +02:00
Cédric Krier eadd7bcffe Do not execute tab shortcuts if there is a modal open
The modals are linked to the current tab so we can not change the tab as long
as there is a modal.

Closes #14042
2025-05-28 18:02:21 +02:00
Cédric Krier e88fea9fc6 Apply filter on icon under primary background
Otherwise the icon is not visible as it has the same color as the background.

Closes #14032
2025-05-21 17:10:34 +02:00
Cédric Krier d10a8a243f Remove thousand separator when converting domain string to float
Since c8d97fac the domain parser format number using locale but the atof
function does not remove the thousand separator which could prevent Number to
parse the string.

Closes #14024
2025-05-23 12:53:44 +02:00
Cédric Krier 095ac6509b Use first description of statement lines as description of move line without origin
Closes #14038
2025-05-27 20:00:18 +02:00
Cédric Krier b859ee5074 Invert boolean operator when searching description with negative operator
Closes #14037
2025-05-27 19:57:03 +02:00
Maxime Richez 676050ff70 Remove useless variable quantity in explode_bom method
Closes #14036
2025-05-27 19:54:43 +02:00
Cédric Krier 6e49fd3e79 Add closed constraint on default receivable/payable account of configuration storage
The same domain constraint from the multivalue field must be applied to the
storage field.
2025-05-25 17:09:45 +02:00
Cédric Krier 98db94d3ef Remove explicit record name from export of relation field
This provides the same format as the import.
2025-05-21 17:02:51 +02:00
Cédric Krier 16d36ff2f7 Export Many2One and Reference using record name 2025-05-21 17:03:43 +02:00
Cédric Krier d769ff12c3 Support import of one2many as list of name 2025-05-21 17:03:21 +02:00
Cédric Krier eab2b6deb0 Support export of xxx2many fields as list of name 2025-05-21 17:00:31 +02:00
Cédric Krier 9843587815 Import multiselection field as CSV list
Closes #13995
2025-05-21 16:58:36 +02:00
Cédric Krier 840a342214 Export multiselection field as CSV list
Closes #13995
2025-05-21 18:38:40 +02:00
Cédric Krier 10c273d576 Avoid parsing image content as XML is they do not look like XML
This prevent the browser to log an error in the console.
Also we test for the presence of svg tag to be sure it is an svg image.

Closes #14019
2025-05-14 12:56:23 +02:00
Cédric Krier 0ad9570070 Document preferred languages order for get_email 2025-05-23 17:13:37 +02:00
Cédric Krier 5307e3303a Set email content with maintype when needed and correctly set Content-Language header
When the content is not a string, EmailMessage.set_content requires a maintype
argument but not when it is a string. The maintype is then deduced using the
mimetypes module.
The Content-Language of content or alternate must be set using the headers
parameter instead of params which is for the Content-Type.
And finally the Content-Language must be set on the main message only if it
contains multiparts otherwise it is set twice.

Closes #14028
2025-05-23 17:07:57 +02:00
Nicolas Évrard d3f93b46f8 Use class access model when testing for parent access 2025-05-22 10:59:36 +02:00
Cédric Krier db95c26b09 Store URL to open before getting the preferences
The preferences may execute actions which may change the original URL at the
login. Such that the original URL is never open.
This is more visible since ac5d71376fca which makes the actions sequential.

Closes #13975
2025-05-21 11:16:56 +02:00
Cédric Krier 0d361542fe Do not use state Function field of line to check against modification
The Function field is an helper to write PYSON statement so there is no need to
use it for checks.

Closes #14002
2025-05-08 18:36:13 +02:00