Thursday, December 23, 2021
21 changes · master
Enhancements to existing features
The mail module now checks whether a record involves multiple items earlier in the process, so the same check is not repeated. This is a small internal improvement that can reduce unnecessary work without changing how users interact with the system.
Original PR description
Move isMulti sooner in the flow so that the check is only done once.
This update removes unused internal references from the Mail app interface code. It does not change visible behavior, but it simplifies maintenance and reduces unnecessary code in messaging features.
Original PR description
Task-2694206
The mobile messaging navigation was reorganized behind the scenes to make the Discuss and Live Chat areas easier to modernize. This should not change day-to-day behavior for users, but it reduces future upgrade risk and supports upcoming framework improvements.
Original PR description
In preparation for using OWL v2 in discuss code. (shouldUpdateBasedOnProps will be removed) Solution consists of introducing MobileMessagingNavbar model. Task-2695743
Sales-related apps were aligned with updated pricelist behavior, helping prices stay consistent across rentals, subscriptions, and field service sales. Rental order lines were also corrected so discounts are not applied when they should not be, reducing billing surprises.
Original PR description
Community PR: https://github.com/odoo/odoo/pull/79605
Resolved issues and error corrections
Creating a new resource from the Planning schedule no longer triggers a recursion error that could interrupt the workflow. This helps users schedule work by resource without encountering an unexpected crash.
Original PR description
Maximum recursion depth traceback occurs when the resource is created from planning.
This has been fixed.
Reproducing steps:
- Planning
- Schedule by Resource
- Create new Resource
The issue occurs from this commit -https://github.com/odoo/odoo/commit/18952cdc76070f2a70789f2fa25e4fa0d546d470Code cleanup and technical improvements
This update streamlines how Odoo calculates product and sales prices, reducing hidden assumptions that could lead to inconsistent results. It improves maintainability across sales, products, point of sale, events, expenses, and repairs, making future pricing changes safer and easier to customize.
Miscellaneous changes
When an event is created from an external calendar account such as Google or Outlook, attendee info such as email and state may be given, and should be taken into account. For example, if the current user who is syncing his calendar is not the organizer of the event, his attendee state should be set to 'needsAction' and not automatically set to 'accepted'. opw-2489815 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#813
Original PR description
When an event is created from an external calendar account such as Google or Outlook, attendee info such as email and state may be given, and should be taken into account. For example, if the current user who is syncing his calendar is not the organizer of the event, his attendee state should be set to 'needsAction' and not automatically set to 'accepted'. opw-2489815 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#81338 Forward-Port-Of: odoo/odoo#79313
This update corrects visual problems in the online shop product grid that affected Firefox, Safari, and ribbon labels across browsers. Customers should now see properly aligned product cards, correctly placed ribbons, and consistent product image proportions, improving the shopping experience.
Original PR description
Description of the issue/feature this PR addresses: Bugfix Current behavior before PR: * /shop is broken on Firefox * Ribbon are broken (on all browsers). Desired behavior after PR is merged: No more bugs -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The Sign green savings report now keeps its layout intact when printed as a PDF, even when large values are shown. The report design was also refreshed with updated icons, making it clearer and more polished for users.
Original PR description
In the green savings report from sign, the current css breaks the layout when showing large values in the printed form. Since printing the css uses wkhtmltopdf, most modern css can't be used. This PR fixes the layout by decreasing the static width of the cards and aligning them vertically. task-2661095
Original PR description
Refactor the whole sale price computation logic in `product` & `sale` to improve code quality, maintainability, ... ### Drop/reduce as much as possible context-based logic * Drop magic `price` and…
Refactor the whole sale price computation logic in `product` & `sale` to improve code quality, maintainability, ... ### Drop/reduce as much as possible context-based logic * Drop magic `price` and `pricelist_id` fields on `product.product`/`product.template` * Keep one unique `_get_contextual_price()` to provide the old logic where it's still needed/difficult to remove atm. * Do not rely on context fallbacks on the lower level of price computation (aka `price_compute` method) It is way too dangerous to have such magic fallbacks so deeply in the logic, inducing potentially unexpected/wrong results ### Clean `product.pricelist` API * Clear parameters and fallbacks * Do not provide unused parameter(s) anymore (`partner`) * Stop providing products & quantities as a list of tuples, it was never used with different quantities in the existing code anyway * Removed unused methods * Split methods logic to ease and allow clean overrides and customizations * Convert the old hardcoded SQL query to a clear domain, using ORM querying and formatting logic instead * Improved documentation (docstrings, ...) ### Side cleanups in related/impacted modules * Update to use the new clean pricelist API * Code cleanup in sale prices computation (`sale_*`, `website_sale`, ...) * Some onchanges -> computes conversion in `sale_*` scope * Cache applied pricelist rule on SOL (avoid recomputing the pricelist rule in the price AND in the discount computation) Task ID - 2688106 Community PR: https://github.com/odoo/odoo/pull/79605 Enterprise PR: https://github.com/odoo/enterprise/pull/22211 <!-- Keep both authorship for the merge commit (author=robodoo) --> Co-authored-by: Victor Feyens <vfe@odoo.com> Co-authored-by: Yannick Tivisse <yti@odoo.com> -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes double unload popup on website discard. task-id: 2710507 Forward-Port-Of: odoo/odoo#81810
Original PR description
This fixes double unload popup on website discard. task-id: 2710507 Forward-Port-Of: odoo/odoo#81810
This string is used by mollie support. Read more at: https://docs.mollie.com/integration-partners/user-agent-strings -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#81789
Original PR description
This string is used by mollie support. Read more at: https://docs.mollie.com/integration-partners/user-agent-strings -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#81789
Commit [1] did adapt the selection of savable to include cover properties detected through `[data-name="Cover"]`, but [2] did rename the blog cover option block from `Cover` to `Blog Post Cover` therefore it did not get detected. Because of this, only changing attributes on the root element of the blog post cover was not marking it dirty, and therefore not saving it unless other changes also happened (e.g. change the picture) Given that the name might even be translated, this commit doe
Original PR description
Commit [1] did adapt the selection of savable to include cover properties detected through `[data-name="Cover"]`, but [2] did rename the blog cover option block from `Cover` to `Blog Post Cover`…
Commit [1] did adapt the selection of savable to include cover properties detected through `[data-name="Cover"]`, but [2] did rename the blog cover option block from `Cover` to `Blog Post Cover` therefore it did not get detected. Because of this, only changing attributes on the root element of the blog post cover was not marking it dirty, and therefore not saving it unless other changes also happened (e.g. change the picture) Given that the name might even be translated, this commit does not use the value of `data-name` anymore but relies on either the `s_cover` or the `o_record_cover_container` class. Now the cover dataset is updated when an option is selected instead of after updateUI, and takes its values from the edited DOM instead of the editor panel's options. This handles the specific "save before closing the color palette" case. This PR also cherry-picks #77018 to fix the lost resize class issue on save. [1] https://github.com/odoo/odoo/commit/fc67a3370ab04facff28dd956590e4dfa71f8441 [2] https://github.com/odoo/odoo/commit/27e4f8a3e164cad6814cc8d77e4f46515eab5fb4 task-2678100 Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#79028
Before this commit, the "ripple effect" no longer worked because the assets were never activated for the following 2 reasons: - To activate the ripple effect assets via the editor options, we activated a template that no longer exists (with data-customize-website-views). Instead of activating the assets with the new system of assets using records. - To activate the ripple effect when installing themes, we looked for assets with the "name" field instead of the "key" field. After thi
Original PR description
Before this commit, the "ripple effect" no longer worked because the assets were never activated for the following 2 reasons: - To activate the ripple effect assets via the editor options, we activated a template that no longer exists (with data-customize-website-views). Instead of activating the assets with the new system of assets using records. - To activate the ripple effect when installing themes, we looked for assets with the "name" field instead of the "key" field. After this commit, a new "data-customize-website-assets" xml attribute was created so that the assets can enable/disable in the same way as the views. The "write" method for ir.asset has also been overridden in website so that each website has its specific assets (via COW). task-2686370 Forward-Port-Of: odoo/odoo#79783
There is a default Available Today filter on products view but it is not enough to prevent a very hungry employee to order a product from a vendor not available today if he removes the filter. Description of the issue/feature this PR addresses: opw-2704736 Current behavior before PR: Desired behavior after PR is merged: -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#80809
Original PR description
There is a default Available Today filter on products view but it is not enough to prevent a very hungry employee to order a product from a vendor not available today if he removes the filter. Description of the issue/feature this PR addresses: opw-2704736 Current behavior before PR: Desired behavior after PR is merged: -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#80809
invoice line Steps: - Create 2 service products with "Invoicing based on timesheet" & " Create a task in sales order's project" - Create a SO with both products > confirm - Add hours to both tasks - Create invoice > remove one invoice line > Save Issue: - The removed invoice line is still appearing in the Timesheet stat button Cause: - account_analytic_line.timesheet_invoice_id is set to the invoice when the invoice is created - It is not reset to False when the line is removed f
Original PR description
invoice line Steps: - Create 2 service products with "Invoicing based on timesheet" & " Create a task in sales order's project" - Create a SO with both products > confirm - Add hours to both tasks - Create invoice > remove one invoice line > Save Issue: - The removed invoice line is still appearing in the Timesheet stat button Cause: - account_analytic_line.timesheet_invoice_id is set to the invoice when the invoice is created - It is not reset to False when the line is removed from the invoice Fix: - Reset it to False when the move the line is removed from invoice opw-2668814 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#81145
since https://github.com/odoo/odoo/pull/79947 edit buttons in forms views `o_form_buttons_view` are invisible This is due to the missing super call in on_attach_callback and on_detach_callback linked pr: https://github.com/odoo/enterprise/pull/23074 Forward-Port-Of: odoo/odoo#81800
Original PR description
since https://github.com/odoo/odoo/pull/79947 edit buttons in forms views `o_form_buttons_view` are invisible This is due to the missing super call in on_attach_callback and on_detach_callback linked pr: https://github.com/odoo/enterprise/pull/23074 Forward-Port-Of: odoo/odoo#81800
The rules to match a PO were too strict, it didn't match anything most of the time. In this new version, we will match a PO even if it isn't a perfect match and notify the user that he needs to manually check the imported lines. See task #2655372 for details on the new matching mechanisms. Forward-Port-Of: odoo/enterprise#23039 Forward-Port-Of: odoo/enterprise#22857
Original PR description
The rules to match a PO were too strict, it didn't match anything most of the time. In this new version, we will match a PO even if it isn't a perfect match and notify the user that he needs to manually check the imported lines. See task #2655372 for details on the new matching mechanisms. Forward-Port-Of: odoo/enterprise#23039 Forward-Port-Of: odoo/enterprise#22857
since: https://github.com/odoo/odoo/pull/79947 the view save/edit button was broken this pr adds a case to check this case linked pr: https://github.com/odoo/odoo/pull/81800 Forward-Port-Of: odoo/enterprise#23074
Original PR description
since: https://github.com/odoo/odoo/pull/79947 the view save/edit button was broken this pr adds a case to check this case linked pr: https://github.com/odoo/odoo/pull/81800 Forward-Port-Of: odoo/enterprise#23074
Current behavior : When clicking on a odt file in the document app you had an empty preview and the document was downloaded Steps to reproduce : -Go in the document app -Upload a .odt file -Click on the preview image -An empty preview appears and the document is downloaded opw-2668179 Forward-Port-Of: odoo/enterprise#23038
Original PR description
Current behavior : When clicking on a odt file in the document app you had an empty preview and the document was downloaded Steps to reproduce : -Go in the document app -Upload a .odt file -Click on the preview image -An empty preview appears and the document is downloaded opw-2668179 Forward-Port-Of: odoo/enterprise#23038
Forward-Port-Of: odoo/enterprise#23065
Original PR description
Forward-Port-Of: odoo/enterprise#23065
If you generate a balance sheet report and select as date 'Today' the computations will be wrong because the starting date will be the 1st of the month instead of the first year of the fiscal year. Signed-off-by: Adrien Minet <admi@odoo.com> Forward-Port-Of: odoo/enterprise#22822 Forward-Port-Of: odoo/enterprise#22386
Original PR description
If you generate a balance sheet report and select as date 'Today' the computations will be wrong because the starting date will be the 1st of the month instead of the first year of the fiscal year. Signed-off-by: Adrien Minet <admi@odoo.com> Forward-Port-Of: odoo/enterprise#22822 Forward-Port-Of: odoo/enterprise#22386