Thursday, October 31, 2024
11 changes · 18.0
Enhancements to existing features
Odoo now applies email-specific cleanup rules when generating outgoing email content, preserving formatting needed by email clients such as Outlook while still sanitizing content. This improves consistency and reliability for emails created from templates, composers, and mass mailing campaigns.
Odoo now enables restricted email template rendering by default, allowing regular users to use common simple template fields without broad template-editing rights. This reduces the need to grant wider permissions while preserving flexibility for companies that want to allow all internal users to edit templates via settings.
Original PR description
https://github.com/odoo/odoo/pull/164671 offers a way for non-template editors to use simple expressions. Thanks to this, most of the expressions used in email templates, such as the partner name in an opportunity email template, can be used by regular users without the need to be an email template editor. Thanks to this, the need to set, by default, internal users as template editors is no longer a strong necessity. This revision aims to set the "Restrict Template Rendering" setting by default. Companies needing to set everyone as an email template editor can enable this back by un-checking its related box in the general settings. task-4246174
Email template rendering is now restricted by default, reducing the need to give all internal users broad template editing rights. Regular users can still use common simple expressions in templates, while companies that prefer the previous behavior can re-enable it in general settings.
Original PR description
https://github.com/odoo/odoo/pull/164671 offers a way for non-template editors to use simple expressions. Thanks to this, most of the expressions used in email templates, such as the partner name in an opportunity email template, can be used by regular users without the need to be an email template editor. Thanks to this, the need to set, by default, internal users as template editors is no longer a strong necessity. This revision aims to set the "Restrict Template Rendering" setting by default. Companies needing to set everyone as an email template editor can enable this back by un-checking its related box in the general settings. task-4246174
Resolved issues and error corrections
Odoo Community now automatically creates the needed payment accounting entry when a payment is recorded. This ensures invoices show the correct paid status and remaining amount without requiring bank reconciliation or Enterprise-only journal account setup.
Original PR description
In Odoo Community, bank reconciliation is not available. For that reason, when recording a Payment, this should be enough to fully recognize the payment of the invoice, as there is no second "reconciliation step". In this case, we always want a "behind-the-scene" entry to be created to compute the amount_residual and the status of the invoice accordingly. After the Payments rework, the problem is that by default, no Outstanding account is set up on basic Payment Methods, not triggering any entry and messing up the computation of the invoice status. On top of that, the user shouldn't even have to configure accounts on journals, as this is a pure Accounting work. task-4224553 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
The combo product configurator has been adjusted to work better on mobile screens. This makes it easier for shoppers and sales users to view product options and adjust quantities without layout issues.
Original PR description
This commit fix usability issues related to the layout of the combo configurator on mobile. task-4243795 | Before | After | |--------|--------| | <img width="507" alt="Capture d’écran 2024-10-22 à 13 28 53" src="https://github.com/user-attachments/assets/cac3aa9b-165e-49e6-98e3-3dd1eb2d8d9b"> | <img width="489" alt="Capture d’écran 2024-10-22 à 13 30 14" src="https://github.com/user-attachments/assets/fc0da502-291f-4154-af5e-df1e74c8c61f"> | --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Customer and contact lists can now be ordered alphabetically by name, making it easier for users to browse and find records. This fixes a limitation caused by sorting on a non-stored display field and improves day-to-day usability in customer management views.
Original PR description
Steps to reproduce: Go to Accounting > Customers > Customers. Current behavior: The contact list cannot be ordered alphabetically by name. The `Name` field is `display_name`, a computed field in `res.partner` that is not stored, preventing alphabetical sorting. In future versions (starting from saas-17.2), `display_name` will be replaced by `complete_name`, a stored field containing the full name of the customer, which supports alphabetical ordering. opw-4262464 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The Manufacturing overview's Plan Orders button now opens the relevant work orders for the selected work center and its alternatives, instead of sending users to an unrelated manufacturing order or broad work order list. This helps planners find the right operational tasks faster and reduces confusion when managing work center capacity.
Original PR description
The 'PLAN ORDERS' button in the Manufacturing overview now leads to the list of all WOs regardless of workcenter and status. Task ID: [4154879](https://www.odoo.com/odoo/966/tasks/4154879)
Customers checking out on Argentina- or Brazil-localized websites can now edit their address without the checkout failing. The fix ensures the required local address fields are handled properly, reducing purchase interruptions for public web shop users.
Original PR description
- Change the company of the first website to the localized company - Open web shop as public user - Make a purchase - Checkout and fill the address - Edit the address - Confirm Issue: Traceback will raise because of the missing localization fields opw-4232531
This fix ensures sales orders with down payments show the correct remaining amount to invoice. It helps prevent billing mistakes and gives sales and accounting teams more reliable invoice information.
Original PR description
task-4213628 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
New portal users can complete appointment bookings more easily when they do not yet have a phone number. The flow now encourages sign-in, updates missing phone details for logged-in users, and avoids carrying appointment form data into ecommerce in ways that could alter booking details.
Original PR description
As new portal users usually have no phone, let us ease their booking flow while ensuring correct data. Their phone will be updated if logged and not set. Encourage them to sign in with a new Sign In button. Also remove propagation to ecommerce flow so that we make sure appointment form data is kept as is and description remains correct. A test and pot files are adapted accordingly. Task-4207064
This fixes an appointment payment flow where paid invoices did not always create the related meeting because payments were no longer consistently linked to accounting entries. Meetings are now created when the invoice is posted, whether that happens automatically after payment processing or manually by staff.
Original PR description
ISSUE Introduced in odoo/odoo@01b87f1230beac0568f4e3b1b76e547909506892 the payments are not always linked to account moves. As the invoicing + appointment flow was creating the meeting on reconciliation between the invoice account move line and the payment account move line, using the _invoice_paid_hook method, the flow does not work out of the box anymore. FIX Let us align ourselves to what we do with eCommerce. As the only time we create a link between the invoice and the booking is using the flow, we are creating the invoice in draft at that time, we can consider that posting the invoice is either a manual action, either done automatically when post processing transactions, which would restore the previous flow, and also give more flexibility in the backend, as manually posting the invoice will also create the meeting. Task-4251392