Daily updates from Odoo
Friday, April 12, 2024
4 changes
Resolved issues and error corrections
A recent change to website_enterprise created a dependency on web_enterprise that wasn't properly declared, causing the web client to fail when web_enterprise was uninstalled. This fix adds the missing dependency declaration so the system works correctly and existing affected installations will automatically recover after a server restart.
Original PR description
Since [1], when attempting to uninstall web_enterprise, the webclient will no longer start with website_enterprise installed. The reason for this is because the patch to color_scheme_service imports the service from web_enterprise, but `__manifest__` was not updated to mention the dependency. This commit fixes that. [1]: https://github.com/odoo/enterprise/commit/90df39603b07
This update fixes a critical issue where corrupted module category data could cause the system to freeze in an infinite loop when updating the modules list. The fix automatically detects and breaks these loops by clearing problematic parent relationships, allowing users to recover from situations where they cannot update modules anymore.
Original PR description
When updating the categories, if by any chance there is a loop in the category hierarchy, the current code was falling into an infinite loop. With this commit, the graph loop is broken by clearing a parent_id, and if the resulting module category path is wrong, a clean new one will be recreated anyway. This allows unblocking uncomfortable situations where people cannot update the modules list any more. In 15.0, [a check](https://github.com/odoo/odoo/commit/6932714200d158a21bf10b90b2f71fa5cae0b13f) has been introduced to prevent the existence of recursive categories, but as it is a python check it doesn't prevent corrupted data to remain corrupted. [OPW-3704007](https://www.odoo.com/web#id=3704007&model=project.task) Related to odoo/upgrade#5574 Forward-Port-Of: odoo/odoo#155709
This fix corrects an issue where reversing a payment entry would incorrectly keep an invoice marked as paid instead of reverting it to unpaid status. Additionally, it removes duplicate buttons that appeared when reversing a payment, ensuring users see only the appropriate "Reverse" option. This ensures accurate financial record-keeping when payments need to be reversed.
Original PR description
Steps:
- Create a Customer Invoice CI
- Register a full payment P
- Create a Bank Transaction BT
- Reconcile BT with P
- Go to the payment's move and click on "Reverse Entry" button
-> First issue: Two buttons ("Reverse" and "Reverse and create invoice")
It should be only one ("Reverse")
- Click on "Reverse" button
-> The invoice is still marked as "paid", it should be "not paid"
The reason is that `is_cancel_needed` variable is not well computed
in `reverse_moves()` as since 4d3ac4cbd87fa3db2bf7ac21d729a91eaf52a9be,
there is no `refund_method` on the reversal wizard, which was used
instead of `is_modify` parameter, which is not enough in our case.
opw-3772117
Forward-Port-Of: odoo/odoo#161461
Forward-Port-Of: odoo/odoo#159740Fixed an issue where customers purchasing courses with payment methods like wire transfer would encounter a crash on the final payment screen. The system now properly displays the payment confirmation screen even when the payment is still pending and course access hasn't been granted yet, improving the checkout experience for payment methods that require manual confirmation.
Original PR description
Issue: When a course is set to 'On Payment' and linked to our 'Course Access' product, users encounter an issue where they cannot view the final screen of the payment process when selecting payment methods like 'wire transfer'. This occurs because the payment status remains 'pending', and the user has not yet been granted access to the course, meaning no invitation link is available. Steps to Reproduce: 1. Install website_sale_slides. 2. Create or modify a course with the 'On Payment' status. 3. Link it to a 'Course Access' product. 4. Navigate to the website and attempt to purchase the course. 5. Proceed through all the steps of the payment process. Solution: The template needs to accommodate scenarios where certain payment methods do not immediately provide an invitation link. Even without the invitation link, it should still display the last payment screen, awaiting payment confirmation to grant access. opw-3683024 Forward-Port-Of: odoo/odoo#153610