Thursday, January 9, 2025
17 changes · saas-17.2
Resolved issues and error corrections
The Planning app now has the needed resource color information to correctly show the wrench icon in resource avatar fields. This keeps planning screens visually consistent and helps users identify resource-related entries more reliably.
Original PR description
Changes in enterprise related to PR https://github.com/odoo/odoo/pull/157968 Added the resource_color as dependency for the widget to display the color task-3801551
Material resources now show the expected wrench icon instead of an empty photo placeholder when selected in Planning forms. The update also improves icon and text alignment in resource selection fields, making the interface clearer and more polished for users.
Original PR description
Steps to reproduce: - Open planning app and click on New. - A form is opened and searched for a material resource in the Resource field ex. Crane - An empty photo icon is displayed in the selection bar. Issue: - An empty photo icon is being displayed instead of a wrench. Cause: - Many2XAutocomplete which adds an image in the many2one selection field is not modified to display - the wrench icon in the many2one_avatar_resource_field. Solution: - A similar modification is done in many2many_avatar_resource_field through class which extends Many2XAutocomplete which can be imported and added into components of many2one_avatar_resource_field. fix the alignment between of icon and text in many2many_avatar_resource. task-3801551
Miscellaneous changes
Behavior Before the Commit: When generating a new payment link, the system creates a new mandate without explicitly setting the `company_id`. As a result, the default company (`company_id` of the public user, `user_id = 4`) is assigned, which may not match the intended company if the payment is being processed for a company other than the default one. This mismatch between the journal's company and the mandate's `company_id` prevents the payment from being completed. Fix: The `company_id` i
Original PR description
Behavior Before the Commit: When generating a new payment link, the system creates a new mandate without explicitly setting the `company_id`. As a result, the default company (`company_id` of the…
Behavior Before the Commit: When generating a new payment link, the system creates a new mandate without explicitly setting the `company_id`. As a result, the default company (`company_id` of the public user, `user_id = 4`) is assigned, which may not match the intended company if the payment is being processed for a company other than the default one. This mismatch between the journal's company and the mandate's `company_id` prevents the payment from being completed. Fix: The `company_id` is properly set during mandate creation, aligning it with the payment link's associated company and preventing unexpected behavior. Steps: 1) Configure two companies with accounting setups. 2) Open the Payment Providers menu. 3) Select SEPA, activate test mode, and ensure it is published. 4) Duplicate the SEPA payment provider, set the company_id to the second company, activate test mode, and ensure it is published. 5) Go to any sales order in the first company, generate a payment link, open it, and select SEPA. Enter any fake IBAN — it will process successfully. 6) Switch to the second company and repeat step 5. You will encounter an error message because the mandate is incorrectly assigned to the first company, preventing payment completion. Forward-Port-Of: odoo/enterprise#76705
Backport of a00faee178b94e455a670fb59a3c77c3827b3b49 Forward-Port-Of: odoo/enterprise#76541
Original PR description
Backport of a00faee178b94e455a670fb59a3c77c3827b3b49 Forward-Port-Of: odoo/enterprise#76541
…endar editor Steps to reproduce ================== - Install industry_fsm,web_studio - Go to Field Service - Switch to the calendar view - Open studio => The color value is empty, it should be "Color" Cause of the issue ================== We only keep many2one and selection fields, but in this case, it's an integer field. Solution ======== Here's a few example where integer field are used: [planning_view_calendar] and [project_task_view_calendar_fsm_worksheet]. => Kee
Original PR description
…endar editor Steps to reproduce ================== - Install industry_fsm,web_studio - Go to Field Service - Switch to the calendar view - Open studio => The color value is empty, it should be "Color" Cause of the issue ================== We only keep many2one and selection fields, but in this case, it's an integer field. Solution ======== Here's a few example where integer field are used: [planning_view_calendar] and [project_task_view_calendar_fsm_worksheet]. => Keep integer fields --- [planning_view_calendar]: https://github.com/odoo/enterprise/blob/c37ed1a684fd9b91e394b7b14f282b9ebabcb751/planning/views/planning_views.xml#L332 [project_task_view_calendar_fsm_worksheet]: https://github.com/odoo/enterprise/blob/3205a82c4616b969b87aa2f6d05a2da636688037/industry_fsm_report/views/project_views.xml#L29 opw-4443497 Forward-Port-Of: odoo/enterprise#76675 Forward-Port-Of: odoo/enterprise#76454
With the changes done to `account.external.tax.mixin` the name of ir.logging is now the module name and not 'Avatax' anymore. So us logs resulted in Avatax US and were not shown by default when opening the window with the window actions. opw-4429151 Forward-Port-Of: odoo/enterprise#76557
Original PR description
With the changes done to `account.external.tax.mixin` the name of ir.logging is now the module name and not 'Avatax' anymore. So us logs resulted in Avatax US and were not shown by default when opening the window with the window actions. opw-4429151 Forward-Port-Of: odoo/enterprise#76557
Camera driver was not working, so we updated the logic to detect camera devices, and improved the one to take pictures. We also caught the opportunity to move IoT Handlers corresponding to `quality` modules to `quality_iot`. Community PR: [https://github.com/odoo/odoo/pull/192449](https://github.com/odoo/odoo/pull/192449) Task: 4432584 Forward-Port-Of: odoo/enterprise#76511
Original PR description
Camera driver was not working, so we updated the logic to detect camera devices, and improved the one to take pictures. We also caught the opportunity to move IoT Handlers corresponding to `quality` modules to `quality_iot`. Community PR: [https://github.com/odoo/odoo/pull/192449](https://github.com/odoo/odoo/pull/192449) Task: 4432584 Forward-Port-Of: odoo/enterprise#76511
Versions: ------------- 16.0 Steps to Reproduce: ---------------------------- 1. Open the Sign app. 2. Switch to the kanban view of sign templates. 3. Upload a document without adding any sign items. 4. Switch to the list view and open the template. 5. In the form view, go to the "Fields" notebook tab. 6. Add 2-3 sign items, then go back to the kanban view. 7. Reopen the template. Issue: --------- An error occurs when trying to sign the template. Cause: ---------- When a
Original PR description
Versions: ------------- 16.0 Steps to Reproduce: ---------------------------- 1. Open the Sign app. 2. Switch to the kanban view of sign templates. 3. Upload a document without adding any sign items. 4. Switch to the list view and open the template. 5. In the form view, go to the "Fields" notebook tab. 6. Add 2-3 sign items, then go back to the kanban view. 7. Reopen the template. Issue: --------- An error occurs when trying to sign the template. Cause: ---------- When adding sign items in the form view, other required fields are left empty. These missing values are needed to properly render the items in the PDF iframe. Solution: ------------ Make the sign items in the "Fields" notebook read-only. task-4212762 Forward-Port-Of: odoo/enterprise#71017
Steps ----- - Have two companies A and B. - Activate Project Stages, and in the list of stages set the first one of the list as belonging to company A. - Create a project (from 'new' button in list view to be able to set a company at creation) belonging to company B (company B needs to be in the list of selected companies). - Save it: the project's company has changed to company A. Cause ----- If no stage is set on the project at creation, we default to the default stage provided by `_
Original PR description
Steps ----- - Have two companies A and B. - Activate Project Stages, and in the list of stages set the first one of the list as belonging to company A. - Create a project (from 'new' button in list…
Steps ----- - Have two companies A and B. - Activate Project Stages, and in the list of stages set the first one of the list as belonging to company A. - Create a project (from 'new' button in list view to be able to set a company at creation) belonging to company B (company B needs to be in the list of selected companies). - Save it: the project's company has changed to company A. Cause ----- If no stage is set on the project at creation, we default to the default stage provided by `_default_stage_id`, which is the first stage in sequence, regardless of its company. We then change the company of the project to match the stage's company, which overrides the stage set at creation. Change ----- If the project has a company set a creation, use the first stage without a company or with the same company as the project. This is done even if the user doesn't have multiple companies selected, since the `search` on `project.project.stage` can return a stage from another company than the one selected. opw-4290711 Forward-Port-Of: odoo/odoo#187635
Versions -------- - 17.0+ Steps ----- 1. Download a VoIP provider like Skype or Linphone to open tel:* urls; 2. use a browser that supports this (FireFox works for me, but Chrome doesn't); 3. with Studio, edit the Sales Order form to add the customer phone; 4. create a new Sales Order with one order line; 5. save the form; 6. add a second line; 7. click on the phone number to start the VoIP app; 8. save the Sales Order form. Issue ----- The 2nd line is duplicated. Cause --
Original PR description
Versions -------- - 17.0+ Steps ----- 1. Download a VoIP provider like Skype or Linphone to open tel:* urls; 2. use a browser that supports this (FireFox works for me, but Chrome doesn't); 3. with Studio, edit the Sales Order form to add the customer phone; 4. create a new Sales Order with one order line; 5. save the form; 6. add a second line; 7. click on the phone number to start the VoIP app; 8. save the Sales Order form. Issue ----- The 2nd line is duplicated. Cause ----- Starting VoIP initiates an "urgent" web save, saving the first time. Usually this only happens when leaving the page, so it doesn't clear the changes to be saved. In this scenario however, we remain on the page, and the changes are saved again when clicking the save button. Solution -------- Clear the saved changes if the urgent save succeeded. opw-4308954 Forward-Port-Of: odoo/odoo#192517
Steps to reproduce (db with Accounting installed): - create a child company - give a user (e.g. Marc Demo) access to the child company, set their "Accounting" rights to "Accountant" and "Administration" to None. - log as this user and select only the child company in the company selector. - try to access "Accounting/Configuration/Accounting/Currencies" -> Access Error It is happening as in the `res.currency` model, several methods try to access the root company, but there's only the c
Original PR description
Steps to reproduce (db with Accounting installed): - create a child company - give a user (e.g. Marc Demo) access to the child company, set their "Accounting" rights to "Accountant" and "Administration" to None. - log as this user and select only the child company in the company selector. - try to access "Accounting/Configuration/Accounting/Currencies" -> Access Error It is happening as in the `res.currency` model, several methods try to access the root company, but there's only the child company in `allowed_company_ids` from the context. The fix here is to: 1) When accessing the root company in order the get its currency, just access the currency of the child company, as it is the same. 2) Use sudo when accessing other fields from the root company. opw-4352595 Forward-Port-Of: odoo/odoo#192632
As we updated the camera interface's logic, we need to add the new library to the IoT Box image. We also removed the python lib patching part, as it was only used by the old camera detection logic. Enterprise PR: [https://github.com/odoo/enterprise/pull/76511](https://github.com/odoo/enterprise/pull/76511) Task: 4432584 Forward-Port-Of: odoo/odoo#192449
Original PR description
As we updated the camera interface's logic, we need to add the new library to the IoT Box image. We also removed the python lib patching part, as it was only used by the old camera detection logic. Enterprise PR: [https://github.com/odoo/enterprise/pull/76511](https://github.com/odoo/enterprise/pull/76511) Task: 4432584 Forward-Port-Of: odoo/odoo#192449
**Behaviour before PR:** In website, in some snippets font-size of paragraph like elements is not displayed correctly in toolbar. This issue happens because in `getFontSizeDisplayValue` method if there is no font-size class applied to element then it will set the value of `--font-size-base` css variable which is `16px`. **Behaviour after PR is merged:** Now, `getFontSizeDisplayValue` method will set font-size using `getComputedStyle` if there is no font related class is applied to that
Original PR description
**Behaviour before PR:** In website, in some snippets font-size of paragraph like elements is not displayed correctly in toolbar. This issue happens because in `getFontSizeDisplayValue` method if there is no font-size class applied to element then it will set the value of `--font-size-base` css variable which is `16px`. **Behaviour after PR is merged:** Now, `getFontSizeDisplayValue` method will set font-size using `getComputedStyle` if there is no font related class is applied to that element. task-4420329 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#191577
Steps to reproduce ================== - Install industry_fsm,web_studio - Go to Field Service - Switch to the calendar view - Open studio - Unset the color => fields[fieldMapping.color] is undefined Cause of the issue ================== We have a field that has the color attribute with a value of color. ```xml <field name="worksheet_template_id" attrs="{'invisible': [('worksheet_template_id', '=', False)]}" filters="1" color="color"/> ``` `shouldFetchColor` checks if th
Original PR description
Steps to reproduce
==================
- Install industry_fsm,web_studio
- Go to Field Service
- Switch to the calendar view
- Open studio
- Unset the color
=> fields[fieldMapping.color] is undefined
Cause of the issue
==================
We have a field that has the color attribute with a value of color.
```xml
<field name="worksheet_template_id" attrs="{'invisible': [('worksheet_template_id', '=', False)]}" filters="1" color="color"/>
```
`shouldFetchColor` checks if the filter color is the same one as the calendar record color.
Solution
========
Since it's possible to have a color filter without a record color, we should fetch the filter colors in that case.
opw-4443497
Forward-Port-Of: odoo/odoo#192841
Forward-Port-Of: odoo/odoo#192334Steps: === - Open a POS shop. - Create an order, select a customer, and validate it. Issue: === - The generated receipt did not include customer name and phone details. Cause: === - Customer details were not being passed correctly to the receipt template. Fix: === - Updated the function for setting customer details to correctly include in the receipt. Task- 4431623 Forward-Port-Of: odoo/odoo#191972
Original PR description
Steps: === - Open a POS shop. - Create an order, select a customer, and validate it. Issue: === - The generated receipt did not include customer name and phone details. Cause: === - Customer details were not being passed correctly to the receipt template. Fix: === - Updated the function for setting customer details to correctly include in the receipt. Task- 4431623 Forward-Port-Of: odoo/odoo#191972
**Current behavior before PR:** prior to this PR fa-plane icon does not displayed after user comes online/offline/away while on leave without any reload. **Desired behavior after PR is merged:** now fa-plane icon is displayed with respective color of im_status without any reload task-4237384 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#184471
Original PR description
**Current behavior before PR:** prior to this PR fa-plane icon does not displayed after user comes online/offline/away while on leave without any reload. **Desired behavior after PR is merged:** now fa-plane icon is displayed with respective color of im_status without any reload task-4237384 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#184471
We improve the image reliability by: - Improving handlers cleanup (we only removed os-specific handlers but downloaded all), - Forcing Odoo service to restart after checkout, even if an error occurred. Task: 4433461 Forward-Port-Of: odoo/odoo#191928
Original PR description
We improve the image reliability by: - Improving handlers cleanup (we only removed os-specific handlers but downloaded all), - Forcing Odoo service to restart after checkout, even if an error occurred. Task: 4433461 Forward-Port-Of: odoo/odoo#191928