Monday, October 21, 2024
6 changes · 18.0
Resolved issues and error corrections
This update improves how email addresses are compared and used in mailing workflows, reducing duplicate sends and unsubscribe issues caused by different email formatting. It also strengthens internal test tools and fixes a missing Point of Sale dependency, helping future updates remain more reliable.
Original PR description
When working on Task-2667099: [mail] Improve default template values various fixes have been found for some corner cases in mail. This PR submits them for 18.0 as they are valid for stable. Testing tools improvements are also added in 18.0 to ease forward port and adding tests in stable when necessary. See sub commit for more details. Task-2667099: [mail] Improve default template values Task-4264367: [mass_mailing] Store/Compare normalized emails on traces Prepares Task-4224145: [marketing_automation] Improve test coverage
Existing website carousel sections in Odoo 18 now keep their automatic slide behavior without requiring users to rebuild them. This preserves expected website presentation and avoids extra maintenance work for businesses already using these carousel snippets.
Original PR description
Follow-up of [1]. It fixed carousels for new databases and for databases upgraded from a version < 18.0 but half-fixed the issue for existing databases in 18.0. Indeed, in this version, 2 new carousel snippets were introduced. Technically, the problem can be solved by updating the website app and re-adding a new carousel but this commit will make existing ones work too. At some point, we'll migrate the XML content avoiding the need for this compatibility JS. [1]: https://github.com/odoo/odoo/commit/91cff43970689431a2d81efdde604b6af709f820
Certificate private key attachments are now found using the correct record link instead of the active company on the attachment. This prevents certificates from using or missing the wrong private key when company context differs.
Original PR description
This commit fixes the incorrect private key computation due to a incorrect domain search in `ir.attachment` model. The `company_id` field was used to search the private key and that is wrong because the `company_id` set on attachments is not same as the record set's company, ORM always sets active company on attachments created from binary field.
This fix prevents an error that could block users from printing and sending invoices in the Argentina and Chile localization modules. It corrects the invoice tax summary handling so affected invoices can be processed normally.
Original PR description
When the customer tries to print & send an invoice, a traceback will appear. Steps to reproduce the error: - Install ``l10n_ar`` module - Switch to ``(AR) Exento`` company - Create a tax (Type:…
When the customer tries to print & send an invoice,
a traceback will appear.
Steps to reproduce the error:
- Install ``l10n_ar`` module
- Switch to ``(AR) Exento`` company
- Create a tax (Type: Sales) > Advanced Options > Tax Group (VAT 2.5%)
- Create a new invoice > add a product > add that tax > Confirm
- Print & Send > Print & Send
Traceback:
```
AttributeError: 'account.tax' object has no attribute '_exclude_tax_group_from_tax_totals_summary'
File "<1878>", line 2220, in template_1878
File "<1878>", line 2202, in template_1878_content
File "<1878>", line 1292, in template_1878_t_call_0
File "<1878>", line 166, in template_1878_t_call_6
File "addons/l10n_ar/models/account_move.py", line 350, in _l10n_ar_get_invoice_totals_for_report
return self.env['account.tax']._exclude_tax_group_from_tax_totals_summary(tax_totals, tax_group_ids_to_exclude)
```
https://github.com/odoo/odoo/blob/8502e87f4c7543d66c3dc0b12d1260c1d72d05ec/addons/l10n_ar/models/account_move.py#L350
https://github.com/odoo/odoo/blob/8502e87f4c7543d66c3dc0b12d1260c1d72d05ec/addons/l10n_cl/models/account_move.py#L155 Here, ``_exclude_tax_group_from_tax_totals_summary`` method is used instead of ``_exclude_tax_groups_from_tax_totals_summary`` method.
So, it will lead to the above traceback.
sentry-5999534010
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-prRental configuration fields such as buffer time and extra-time charges now update and save correctly for each company. This ensures businesses can adjust rental defaults as expected and have those settings persist reliably.
Original PR description
Before the commit: - The fields such as `padding_time`, `extra_hour`, and `extra_day` did not update since the adoption of `ir.default` in the related onchange methods. After the commit: - Removed the related attribute from the fields, and converted them into computed fields. The compute methods now retrieve the company-specific default values using the _get method from `ir.default`. - Added inverse methods to ensure that changes made to these fields are saved back to `ir.default`, allowing company-specific default values to be updated as expected. - This change allows for the correct fetching and updating of default values, ensuring that fields can be modified and persisted properly.
The portal task list no longer crashes when tasks from multiple projects are grouped by stage. The Documents button is now hidden in cases where showing it could create conflicts, and related portal task display issues are avoided when timesheets and documents are both installed.
Original PR description
Before this commit, when the user has more than one project linked to a same stage then a traceback will be raised when the user will group by stage in `/my/tasks` portal view. This commit reviews…
Before this commit, when the user has more than one project linked to a same stage then a traceback will be raised when the user will group by stage in `/my/tasks` portal view. This commit reviews the visibility condition of the Documents button in that portal list view and makes sure the project variable in the template contains either no project or just one project to avoid having a traceback because `project` variable contains more than one project. And so, in `/my/tasks` view, the Documents button should not be displayed when the view is grouped by Stage. Steps to reproduce the issue ============================ 1. Install documents_project 2. Create 2 projects 3. Go to Tasks stage menu and set the both projects in the first stage (create new stage if there is no stage displayed in that menu) 4. create a task for each project with that first stage 5. Go to `/my/tasks` portal list view 6. Group by `Stage` Actual Behavior --------------- A traceback is raised because there is more than one project contained inside `project` variable. Expected Behavior ----------------- The documents button should not be displayed in `/my/tasks` since we could have more than one project in that view. task-4239772