Daily updates from Odoo
Navigate
Branch
Monday, March 9, 2020
20 changes
Enhancements to existing features
Website shop builders can now adjust product search input settings from the editor side panel instead of a modal window. This streamlines page editing and reorganizes the underlying snippet files without changing the customer shopping experience.
Original PR description
[MOVE] website_sale: moves the product input files This commit changes the file structure of the product input snippet. [IMP] website_sale: moves the product input options This commit moves the product search input snippet options from a modal to the option side panel. task-2189645
Installing website sale coupons no longer forces the Sales Management module to be installed. This keeps the setup lighter and avoids adding unnecessary sales features for businesses that only need coupon functionality.
Original PR description
When installing website_sale_coupon, you are forced to install sale_management, it shouldn't be the case. Task Id : 2192587 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This change aims to reduce the number of database requests needed to load website menus. It should improve page responsiveness for visitors and editors, though the pull request notes this is still exploratory and may require security-related refinement before release.
Original PR description
still need to fix ir rule group stuff doing an additional query at every step (because of select_distinct_from_where_not_null) and additional group queries for each record when reading childs Note: the thing done in fields.py is probably too brutal and will fuck up some security, but it's a POC for number of queries (at worse we have 1 more if we keep not prefetching there, but then the search above should actually be a search + read in a single query if possible)
The quality app now uses the clearer label "Instructions" instead of "Text" for this type of quality check. This small wording change helps users better understand when a check is meant to provide guidance rather than collect input.
Original PR description
This commit renames quality test type "Text" into "Instructions". This is addresses specification 3 of overall usability improvement task. Task: 2041853 Migration PR: odoo/upgrade#904
VoIP users can now access and use the dialpad while already on a call. The update also prevents Enter from accidentally repeating the last clicked digit, making in-call number entry more reliable for menus and extensions.
Original PR description
Task: https://www.odoo.com/web?#id=2071310&action=327&model=project.task&view_type=form&menu_id=4720 Pad: https://pad.odoo.com/p/r.a25dff6c0f04d4eec1e19fd486dc2209
This update aligns Colombian e-invoicing and Spanish reporting modules with the renamed invoice classification field in accounting records. It helps keep localized accounting features compatible with the current account move structure without changing business workflows.
Original PR description
Rename field 'type' to 'move_type' in a model account.move Related Task-ID: 2028813
Resolved issues and error corrections
Opening Studio from the default Documents view no longer causes an error. This lets users customize Documents views without being blocked, with a small visual difference in tag display while in Studio mode.
Original PR description
PURPOSE Getting a traceback when trying to open studio on the default Documents view, opening studio should not give traceback. SPEC Opening studio should not throw traceback and studio mode should work normally in documents. TASK 2189992
Fixed an issue in Studio where the conditional visibility field selector could be hidden behind a grey overlay when editing one-to-many list fields. This makes the dialog usable again and prevents configuration options from being blocked.
Original PR description
PURPOSE Can't access the field selector of the 'conditional visibility' modal of a one2many_list field since the grey overlay is 'above' the modal. SPEC Do not hide conditional dialog dropdown behind x2m overlay, x2m overlay has less z-index than dialog dropdown. TASK 2187354
Code cleanup and technical improvements
This update simplifies how messages are prepared for display by relying on newer platform caching instead of extra data lookups. It is intended to keep the same behavior while reducing internal complexity and protecting message performance with added tests.
Original PR description
Remove aggregation from `message_format `and `_message_read_dict_postprocess`. There should be no functional change in this PR. Purpose ======= The existing code working with "tree" for aggregation…
Remove aggregation from `message_format `and `_message_read_dict_postprocess`. There should be no functional change in this PR. Purpose ======= The existing code working with "tree" for aggregation and doing explicit "read" or "search" for related fields does not seem necessary since the ORM of v13. Considering that it adds complexity to the method, if its original purpose is not necessary anymore, it would be better to change it. The notable changes of the ORM that would justify this task are: - single cache, shared between current user and sudo (which is called a lot in those methods and might explain why the "tree" mechanism was put in place originally) - m2o and o2m being kept consistent with each other, which allows accessing o2m through fields directly (instead of having to use "search" to ensure getting consistent data) Explanation =========== Doing "read" or "search" could be counter-productive if the data are already in cache because using those methods will lead to a query no matter what. The ideal way is to simply access the fields through the records. As for the "tree" and aggregation in general, the prefetch is automatically taking care of that when iterating. task-2180311
Miscellaneous changes
Currently, when clicking on the systray activity action icon and click on any record from the activity, kanban or list view, not redirecting to its form view. This commit adds the form view for that action and now click on record will redirect to its form view. LINKS PR https://github.com/odoo/odoo/pull/46877 Task 2198480 Forward-Port-Of: odoo/odoo#46877
Original PR description
Currently, when clicking on the systray activity action icon and click on any record from the activity, kanban or list view, not redirecting to its form view. This commit adds the form view for that action and now click on record will redirect to its form view. LINKS PR https://github.com/odoo/odoo/pull/46877 Task 2198480 Forward-Port-Of: odoo/odoo#46877
Before this change we were showing the Verify on AFIP button in all the vendor bills if the company settings was set to "Verify on AFIP = Available / Required". Now we also take into account the selected Document Type to only show the button and related verify fields when the Document can actually be verified. With this change we ensure that if a user try to validate a type of document that is not available for verify does not set AFIP Verify Status: Rejected wrongly Forward-Port-Of: odoo
Original PR description
Before this change we were showing the Verify on AFIP button in all the vendor bills if the company settings was set to "Verify on AFIP = Available / Required". Now we also take into account the selected Document Type to only show the button and related verify fields when the Document can actually be verified. With this change we ensure that if a user try to validate a type of document that is not available for verify does not set AFIP Verify Status: Rejected wrongly Forward-Port-Of: odoo/enterprise#9051
reason: debit_credit field was removed by 172e8a4f3df759ad6261563222f5b65eb5e12149 Task: 2210808 Forward-Port-Of: odoo/enterprise#9114
Original PR description
reason: debit_credit field was removed by 172e8a4f3df759ad6261563222f5b65eb5e12149 Task: 2210808 Forward-Port-Of: odoo/enterprise#9114
Prevent unexpected loss of context. Forward-Port-Of: odoo/enterprise#9099 Forward-Port-Of: odoo/enterprise#8812
Original PR description
Prevent unexpected loss of context. Forward-Port-Of: odoo/enterprise#9099 Forward-Port-Of: odoo/enterprise#8812
Task: https://www.odoo.com/web#id=2206675&action=327&model=project.task&view_type=form&cids=2&menu_id=4720 Forward-Port-Of: odoo/enterprise#9081 Forward-Port-Of: odoo/enterprise#8920
Original PR description
Task: https://www.odoo.com/web#id=2206675&action=327&model=project.task&view_type=form&cids=2&menu_id=4720 Forward-Port-Of: odoo/enterprise#9081 Forward-Port-Of: odoo/enterprise#8920
When a report is generated, the header/foot/bodies are split before being given to wkhtmltopdf in ir.actions.report `_prepare_html`. This can be done because we have special class .header for header, .footer for footer and .article for bodies. But in followup report, if the option "Join open Invoices" (join_invoices) is enabled, we would get a structure such as: ``` <div class="header"></div> <div class="article"> <div class="page">body of follow report</div> <div class="
Original PR description
When a report is generated, the header/foot/bodies are split before being given to wkhtmltopdf in ir.actions.report `_prepare_html`. This can be done because we have special class .header for header,…
When a report is generated, the header/foot/bodies are split before
being given to wkhtmltopdf in ir.actions.report `_prepare_html`.
This can be done because we have special class .header for header,
.footer for footer and .article for bodies.
But in followup report, if the option "Join open Invoices"
(join_invoices) is enabled, we would get a structure such as:
```
<div class="header"></div>
<div class="article">
<div class="page">body of follow report</div>
<div class="page">
<div class="header"></div>
<div class="article">body of first invoice</div>
<div class="footer"></div>
</div>
<div class="page">
<div class="header"></div>
<div class="article">body of second invoice</div>
<div class="footer"></div>
</div>
</div>
<div class="header"></div>
```
This cause an issue, because then when we print the 3 bodies, we will
print the first one that also contain the second and third bodies. But
then the second and third bodies are also printed and we get duplicates,
so we get these bodies:
body1:
- body of follow report
- header first invoice
- body of first invoice
- footer first invoice
- header second invoice
- body of second invoice
- footer second invoice
body2:
- body of first invoice
body3:
- body of second invoice
opw-2207706
Forward-Port-Of: odoo/enterprise#9072This PR adds a rather large set of compatibility features for the sign module in a mobile environment. Check individual commits for a precise description. In a nutshell: - UX redesign of the sign frontend on mobile: - navigation helper is now a fixed button at the top of the document - pinch to zoom is handled on the pdf correctly - add button in the pdf viewer to download the completed document - UX fixes of the sign backend on mobile: - remove buttons allowing to upload a
Original PR description
This PR adds a rather large set of compatibility features for the sign module
in a mobile environment. Check individual commits for a precise description.
In a nutshell:
- UX redesign of the sign frontend on mobile:
- navigation helper is now a fixed button at the top of the document
- pinch to zoom is handled on the pdf correctly
- add button in the pdf viewer to download the completed document
- UX fixes of the sign backend on mobile:
- remove buttons allowing to upload a template (since the field
edition is unusable on mobile)
- open some modals in fullscreen mode
Task 2155601
Counterpart odoo/odoo#46520
Forward-Port-Of: odoo/enterprise#9045
Forward-Port-Of: odoo/enterprise#8871The tests in account_followup must be run always with a chart of accounts installed, post_install then. Also, this commit contains a little cleanup about deprecated tests. Forward-Port-Of: odoo/enterprise#8775 Forward-Port-Of: odoo/enterprise#8736
Original PR description
The tests in account_followup must be run always with a chart of accounts installed, post_install then. Also, this commit contains a little cleanup about deprecated tests. Forward-Port-Of: odoo/enterprise#8775 Forward-Port-Of: odoo/enterprise#8736
The compute method crashes if called with more than one record. Compute methods should always be implemented with batch in mind. \+ add `employee_id.company_id` to the field's dependencies. Forward-Port-Of: odoo/enterprise#8805
Original PR description
The compute method crashes if called with more than one record. Compute methods should always be implemented with batch in mind. \+ add `employee_id.company_id` to the field's dependencies. Forward-Port-Of: odoo/enterprise#8805
This commit requires write permission on the account in order to check the credentials. This prevents unhautorized users to reach the rate limit on the account for the related API function. Forward-Port-Of: odoo/enterprise#9073
Original PR description
This commit requires write permission on the account in order to check the credentials. This prevents unhautorized users to reach the rate limit on the account for the related API function. Forward-Port-Of: odoo/enterprise#9073
Steps to reproduce the bug: - Go to Profit and Loss report Bug: Gross Profit was not equal to Operating Income - Cost of Revenue and the Income was not equal to Gross Profit + Other Income opw:2190370 Forward-Port-Of: odoo/enterprise#8340 Forward-Port-Of: odoo/enterprise#8294
Original PR description
Steps to reproduce the bug: - Go to Profit and Loss report Bug: Gross Profit was not equal to Operating Income - Cost of Revenue and the Income was not equal to Gross Profit + Other Income opw:2190370 Forward-Port-Of: odoo/enterprise#8340 Forward-Port-Of: odoo/enterprise#8294