Wednesday, June 17, 2026
37 changes · saas-19.3
Enhancements to existing features
This update changes the color of the 'To Review' status on employee records from grey to orange. This improves readability, particularly in dark mode, ensuring that managers can quickly identify and address outstanding tasks. This enhancement ensures consistent and clear communication regarding employee status.
Original PR description
The 'To Review' status on employees uses a grey badge ('secondary'), which has poor contrast and is nearly invisible in dark mode.
Update the 'review_state' field options to change '2_to_review' to 'warning' (orange). This ensures the badge is readable in both light and dark modes.
Task: 6289919
Forward-Port-Of: odoo/enterprise#120486
Forward-Port-Of: odoo/enterprise#120268This update ensures Odoo sends the LC116 code with dots, as required by Avalara's integration tool. Currently, Odoo removes these dots, which prevents Avalara from properly sanitizing the data. This change improves compatibility with Avalara's service.
Original PR description
Purpose: Avalara requires the LC116 code to be dotted for certain city webservices. Their tool will automatically sanitize the dots for cities that don't support it. Current Behavior: Odoo sanitizes the LC116 code before sending the JSON payload. Expected Behavior: The LC116 code is sent in the JSON payload with the dots. task-6304351 Forward-Port-Of: odoo/enterprise#120648
Resolved issues and error corrections
A visual glitch was causing the Timesheets configuration menu to appear twice in the user interface. This update corrects a configuration issue, ensuring the menu displays correctly for all users. This resolves a minor usability problem.
Original PR description
Steps to reproduce the issue: 1- Log in as a user with Timesheets Administrator access rights. 2- Go to Timesheets → Configuration. 3- Disable Timesheets Assistant (BETA) and save. 4- Refresh the page. The Configuration menu is displayed twice. After (Expected): The Configuration menu should be displayed only once in the Timesheets app. solution: Adjusted the config menu blacklisting condition to hide the unwanted menu --- task-6302568
Features or functions removed from Odoo
This update removes a redundant, read-only column ('Extra Hours (encoded)') from the employee attendance view. Previously, this column was introduced as a temporary fix, but it's no longer needed. This change simplifies the user interface and improves clarity.
Original PR description
The 'Extra Hours (encoded)' column was previously made read-only in a stable fix, making its presence obsolete for users in this view. This commit removes the `manual_duration` field column entirely from the view to clear interface clutter. Task: 6253553 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#269799 Forward-Port-Of: odoo/odoo#266921
Code cleanup and technical improvements
This update streamlines the account module's code by creating reusable JavaScript classes and removing unnecessary conditional statements. These changes improve the module's efficiency and stability, ensuring consistent behavior across different account processes.
Original PR description
Made some generic JS classes that can be used between account move and account bank statement and removed some if statements that are no longer needed from account_tree controller because they were used to bypass default behavior if used by a model other than the intended one. This issue was fixed in: https://github.com/odoo/enterprise/pull/117476 task-5892419 Forward-Port-Of: odoo/odoo#264775
This update resolves a discrepancy where the social demo module was not correctly utilizing data after removing the demo partner. The fix ensures that the demo mode functions as intended, providing a consistent and accurate demonstration of the social features. This improves the reliability of the demo for potential customers and internal testing.
Original PR description
Since ce264a23798588ca7f9376900c44576acd89bc6a , we remove the demo partner in the social_demo module, but we didn't update the code to use the demo data in base. Task-6293738
This update fixes a visual issue where portal cards on the customer portal lacked a background color. The problem was caused by an initial setting of the 'portal-card' color variable to 'null'. Now, all portal cards will display with a default background color, improving the overall user experience and visual consistency.
Original PR description
Steps to reproduce: 1. Go to the "/my" or "/my/home" page. Issues: Portal cards do not have a background color by default. Cause: The `portal-card` color variable was initialized with a `null` value, preventing any default background color from being applied to portal cards. task-6250258 Forward-Port-Of: odoo/odoo#269574
This update resolves an issue that prevented users from properly closing the email composer when sending emails to a large number of leads (over 500). The fix avoids a technical error related to data formatting, ensuring the composer function works reliably even with extensive lists.
Original PR description
Steps to reproduce: 1. Install `crm` 2. Create leads more than 500. 3. Select all and try to send email 4. Not close the wizard by "X" Issue: - Traceback occurs: `Uncaught Promise > Unexpected end of JSON input` Cause: - res_ids is not set on the composer when more than 500 records are selected. This is expected, as the compute method `_compute_res_ids()` does not write `res_ids` when the number of `active_ids` exceeds 500 (to avoid storing large payloads on the field). Because of this, the code trying to JSON.parse(res_ids) fails while dismissing the wizard at `onCloseWizardModal` Solution: - Fallback to context.active_ids when res_ids is not available opw-5891862 Forward-Port-Of: odoo/odoo#252670 Forward-Port-Of: odoo/odoo#248406
This update corrects a technical issue where removing a subformula from reports didn't properly reset its value, leading to processing errors. The fix ensures that subformula values are set to 'False' when removed, preventing these errors and maintaining report accuracy. This improves the stability of financial reporting.
Original PR description
The subformula was [removed](https://github.com/odoo/enterprise/pull/117601) without resetting its value to False, leaving existing values in the database. This causes errors when processing records that still contain a subformula value. ```.py Invalid subformula in expression "balance" of line "Treasury shares": -sum ``` To prevent these errors, existing subformula values are reset to False opw-6297901 Forward-Port-Of: odoo/enterprise#120663
This update resolves an issue that occurred when using IoT printers with LNA enabled. Previously, the system would display an error message when attempting to process LNA status updates. This change adds a check to ensure printers have an IP address before attempting to split it, preventing the error and improving the stability of the Point of Sale system.
Original PR description
Before this commit, when clicking the lna status button when only iot printers were configured with use_lna set to true for at least one of them, a traceback would appear as we tried to split the printer_ip of the printers but those were undefined (iot printers do not have an ip). This commit adds a check on the ip field before trying to split it. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update fixes a bug where follow invitations weren't appearing in user inboxes unless a comment was added. The change ensures that the notification subject is always displayed, regardless of the notification body content, resulting in more reliable and visible follow invitation notifications. This improves the user experience for receiving and responding to follow requests.
Original PR description
Steps to reproduce: - Configure user A to receive inbox notifications. - As user B, invite user A to follow a record with Notify recipients enabled. - Open the inbox of user A. The Invitation to follow notification is not displayed in the inbox when no additional comment is provided. This happens because the notification body is empty unless extra comments are added. This commit fixes the issue by displaying only the subject when the body is empty. Task-[5485727](https://www.odoo.com/odoo/project/1519/tasks/5485727) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#269851 Forward-Port-Of: odoo/odoo#244653
This update fixes a visual issue on mobile devices where an unnecessary caret appeared next to the 'Expand' button in the Inbox. It also corrected the alignment of header buttons, preventing them from wrapping onto multiple lines when the messaging menu was open. This ensures a cleaner and more user-friendly experience.
Original PR description
On mobile, an unwanted caret was displayed next to the message 'Expand' button in the Inbox because the messaging menu itself opens a dropdown, causing any nested Dropdown to automatically display a caret. This commit also fixes the alignment of the Inbox header action buttons, which wrapped onto multiple lines when opening the messaging menu on mobile while the Inbox tab was already selected. In this case, the `AutoresizeInput` width was computed at its maximum size, leaving insufficient space for the header action buttons and causing them to wrap onto multiple lines. Task-[6244177](https://www.odoo.com/odoo/project/1519/tasks/6244177) Forward-Port-Of: odoo/odoo#270257 Forward-Port-Of: odoo/odoo#266343
This update resolves an issue where users without accounting permissions would encounter an error when duplicating Manufacturing Orders. The fix prevents the system from attempting to copy accounting-related data during duplication, avoiding the access error. This ensures smoother operation for all users.
Original PR description
Currently, when a user without accounting permissions attempts to duplicate a Manufacturing Order (MO), an Access Error is raised. ## Steps to produce: - Install Manufacturing and Accounting with…
Currently, when a user without accounting permissions attempts to duplicate a Manufacturing Order (MO), an Access Error is raised. ## Steps to produce: - Install Manufacturing and Accounting with demo data. - Users > Marc Demo > Remove Accounting Permissions and give Admin permissions for Manufacturing - Login as Marc Demo - Create an MO and try to duplicate it. ## Observed Behavior: An Access Error is displayed saying failed to read mrp.production.wip_move_ids ## Root cause: After PR [1], version 19.0 introduced access checks when reading many2many fields. As a result, if a user lacks read access to a model field, an access error is raised during record duplication. During duplication, `copy_data` is called, and the error occurs when invoking the super method at [2], because the user does not have read access to the `wip_move_ids` field on account.move. **Why does this error not occur in 19.3+?** Commit [3] prevents the `wip_move_ids` field from being copied, which avoids triggering the access check and therefore prevents this error. [2]- https://github.com/odoo/odoo/blob/a2f072fe99a03aaf521bba1965e7f29a1c99e325/addons/mrp/models/mrp_production.py#L1135-L1137 ## Solution: Prevent copying the `wip_move_ids` fields because, as noted in commit [3], it does not make sense to carry over work-in-progress journal entries from a previous Manufacturing Order to a newly duplicated one. WIP entries represent accounting values for partially completed goods tied to the original Manufacturing Order, so duplicating those links is both functionally incorrect and can trigger the access error described above. [1]: https://github.com/odoo/odoo/pull/217277 [3]: https://github.com/odoo/odoo/pull/251731/changes/27b5d5551cc772f238695768478a448da75cac61 Related enterprise PR: https://github.com/odoo/enterprise/pull/118950 opw-6204049 Forward-Port-Of: odoo/odoo#264925
This update fixes an error in the VAT balance calculation within the l10n_uy module for Uruguay. The previous formula was inaccurate, leading to incorrect reporting. This change ensures accurate VAT reporting, aligning with local tax regulations and improving financial data reliability.
Original PR description
### Steps to reproduce the issue: 1. Download Accounting and l10n_uy 2. Go to tax report and see the formula of the VAT balance that is incorrect ### Reason to introduce the fix: Correct the formula to display the right amount. opw-6261211 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#269376 Forward-Port-Of: odoo/odoo#268478
This update resolves a technical issue that caused tracebacks when printing invoices through IoT devices. The fix corrects how printer information is retrieved, preventing errors and ensuring reliable invoice printing. Additionally, the update includes a security enhancement to redact sensitive data from logged websocket messages.
Original PR description
When printing invoices from PoS, using an IoT device, we get a traceback, as the orm call to read device infos gets the whole selected printers params (duplex, don't ask me again, printer ids) instead of the printer ids. Issue was introduced in odoo/enterprise#113128 We also take the opportunity to redact documents from logged websocket messages. task-6307690 opw-6284287
This update fixes a bug that prevented receipt printing from the Odoo App's Point of Sale (POS) section. The fix allows users to print receipts for paid orders, mirroring the functionality available in the browser or desktop versions. This ensures consistent receipt printing across all Odoo App experiences.
Original PR description
**Steps to reproduce:** - Go on the Odoo App, start the pos - Go to orders, and go to paid ones - Click on review - Click on Print Receipt - It doesn't do anything, but it prints correctly on browser or desktop **Why the fix:** The Odoo app does not support the iframe printing, so we use this commit to make a hook function to be able to patch it in the enterprise related commit in pos_mobile. This is a backport of eb1e824 Enterprise PR: https://github.com/odoo/enterprise/pull/120043 opw-6186261 Forward-Port-Of: odoo/odoo#265024
This update fixes an issue where long text labels in SelectMenu multi-select tags would overflow, creating a poor user experience. Now, tags are automatically truncated to fit, aligning with the design of Many2ManyTags, ensuring consistent and readable tag display.
Original PR description
Before: Tags in SelectMenu (multi-select) had no text-overflow handling. After: Tags now truncate text, consistent with Many2ManyTags behavior. task-5226503 Forward-Port-Of: odoo/odoo#269563
This update fixes a minor visual issue in the Web Studio interface. Previously, property tags within SelectMenu widgets were limited in width, leading to unused space. Now, tags automatically expand to fill the available width, creating a cleaner and more user-friendly experience.
Original PR description
Before: Each tag was limited to 200px, leaving available space unused. After: Each tag now expands to 100% of the available width. task-5226503 Forward-Port-Of: odoo/enterprise#120260
This update resolves an issue that caused a traceback when deleting the last column from a table within the Odoo Report Editor. The fix ensures the editor remains stable by preventing errors related to a null value when the last column is removed, improving the user experience and preventing potential disruptions to report creation.
Original PR description
Problem: When deleting the last column in a table in studio we get a traceback. Cause: `firstCell` will be null if we delete the last cell in the table. Fix: Added a null check on `firstCell` before calling `setCursorEnd`, so the cursor is only repositioned when the table still has remaining cells. Steps to reproduce: - Edit a report with a table. - Remove all columns. - Traceback will occur when deleting the last one. opw-6263696 Forward-Port-Of: odoo/enterprise#119502
This update fixes an issue where Odoo's cron workers weren't efficiently managing database connections. By introducing a new configuration option, we can now set a lower memory limit for cron workers, preventing them from cycling through all databases and optimizing memory usage. This improves overall system performance and stability.
Original PR description
The configuration option `registry_lru_size` does not exist and does not work at all in recent versions. Defining odoo-specific environment variables to handle: - ODOO_REGISTRY_LRU_SIZE: the default registries size - ODOO_REGISTRY_LRU_SIZE_CRON: overwrite for cron workers Cron workers have often a different workload than HTTP workers and we may set a different limit there. If the limit is lower than the number of databases, a cron job will not reuse registries because it cycles through all known ones - in such cases, we can set a lower limit to keep the memory lower. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#270069 Forward-Port-Of: odoo/odoo#268587
This update resolves an issue preventing live chat visitors on mobile from adding emojis to their messages. The fix utilizes a technique to correctly identify clicks within the emoji picker, ensuring emojis are properly inserted into the composer. This improvement enhances the user experience for mobile live chat interactions.
Original PR description
Before this commit, livechat visitors couldn't use the "Add emojis" feature in composer when in mobile: this was opening the emoji picker, but when selecting an emoji this wouldn't add the emoji to the composer text. This happens because the livechat is inside a shadow DOM, and `ev.target` maps to livechat root rather than the specific click inside the emoji picker of livechat. This commit fixes the issue by using `ev.composedPath`, which goes through any open shadow DOM to find the most specific targets. The livechat is an open shadow DOM, thus this works like `ev.target` when there's no shadow DOM into play. This commit is also a follow-up of [1] where the file viewer was shown twice in website due to an accidental regression with fixing overlays: emoji picker was not working in desktop too, therefore the test also covers issues with the overlay like in [1]. [1]: https://github.com/odoo/odoo/pull/265603 Forward-Port-Of: odoo/odoo#267795
This update corrects a technical error where Star printers were receiving incorrect commands. The fix ensures Star printers utilize the proper protocol and commands, resolving a compatibility issue and improving printer functionality.
Original PR description
Currently Star printers were correctly identified and thus were not using the right protocol and esc/pos commands were instead sent to the printers. `device_id` previously used is `""` for Star printers Star printers ignore such commands. This PR fixes the protocol used with Star printers Forward-Port-Of: odoo/odoo#270285
This update refines the controller for importing bank statements, addressing previous issues caused by shared logic with the general accounting module. By using a more targeted controller, we've streamlined the process and ensured accurate bank statement handling.
Original PR description
account_bank_statement_import_view was using the same controller used in account.move which caused some wrong behavior when some logic isn't shared between both modules, now account_bank_statement_import uses a generic controller that doesn't add unneeded behavior. As well as removing all of the account move classes from bank statement import and using generic ones or ones specific to account bank statement import. task-5892419 Forward-Port-Of: odoo/enterprise#117476
This update resolves a crash that occurred when adding reactions to messages on smaller screens. The fix ensures the correct action object is passed, preventing errors and improving the user experience across different screen sizes. This enhances usability for all users.
Original PR description
Before this commit, when browser window is small while not on a mobile device, clicking on the message action "Add a reaction" would lead to the following crash: ``` Cannot destructure property…
Before this commit, when browser window is small while not on a mobile device, clicking on the message action "Add a reaction" would lead to the following crash:
```
Cannot destructure property 'owner' of 'undefined' as it is undefined.
at Proxy.onSelected
```
This happens because cliking on this button on small screen would immediately trigger the complete showing of the emoji picker rather than just the quick menu. While this calls `action.onSelected()` and is expected to work [1], the problem is that this was passing the action definition rather than the action object as prop. As a result, `onSelected()` was using the definition and didn't pass the expected params that are destructed in the definition.
This commit fixes the issue by passing the `action` object to `QuickReactionMenu` component, so that the `action.onSelected()` is properly passing the `action.params`.
[1]: https://github.com/odoo/odoo/blob/19.0/addons/mail/static/src/core/common/quick_reaction_menu.js#L84
Forward-Port-Of: odoo/odoo#270158This update fixes an issue where capitalized email domains in aliases caused emails to be misrouted. The change prevents users from saving capitalized domain names, ensuring emails are correctly processed and delivered. This resolves a technical problem that could impact email delivery reliability.
Original PR description
[FIX] mail_alias_domain: prevent capitalization in domain names to avoid email routing issues Currently, we allow capitalization in the name / display_name field for Email Domains…
[FIX] mail_alias_domain: prevent capitalization in domain names to avoid email routing issues
Currently, we allow capitalization in the name / display_name field for Email Domains (mail.alias.domain), which allows for capitalized domains in email aliases. When the system receives incoming emails via mail_thread.py's message_route,
the reply_to email addresses are sanitized (all lowercase). We then use the case-sensitive 'in' to identify
message routes, which will always fail for capitalized email domains.
This PR applies sanitizing to the name field so that users cannot save capitalized email domains.
Other options are not viable because:
1. we don't have a case-insensitive equivalent of the 'in' operator
2. altering the current logic to be case-insensitive would decrease performance
3. altering the current logic would change the structure of message_route
Fixes #opw-5401633
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#257792This update corrects a bug where selection fields in the Odoo Studio were incorrectly marked as required by default. The fix ensures that selection fields are only required when explicitly set to 'true', improving usability and preventing accidental data entry errors. This resolves a previous issue impacting Studio workflow.
Original PR description
Before: any studio property using a SelectMenu (selection) component, without a `required: false` in the childProps, was implicitly required because the check used `required !== false`, which evaluates `undefined` as truthy. After: `required` is only applied when explicitly set to `true`. task-5226503 Forward-Port-Of: odoo/enterprise#120037
This update resolves an issue where multiple Oboxes connected to a database weren't all displaying a green Websocket status in the Kanban view. Now, all connected Oboxes show the correct status, ensuring accurate monitoring of Obox connectivity.
Original PR description
Before this commit, if you had multiple Oboxes connected to a DB, and you looked at them in the Kanban view, only 1 Obox would show a green status for Websocket, despite all of them being connected. After this commit, the Websocket status for each Obox is green as expected. Forward-Port-Of: odoo/enterprise#120828
This update fixes an issue where tags and input fields were overlapping in the SelectMenu, particularly when multiple selections were made. The change ensures tags and the input field are always displayed on separate lines, improving readability and usability for users. This resolves a minor visual inconsistency.
Original PR description
Before: With multiSelect enabled, tags appear on the same line as the input, shrinking it. After multiple selections, the input wraps to the next line inconsistently. After: Tags and the input are always on separate lines. task-5226503 Forward-Port-Of: odoo/odoo#269497
This update resolves a technical problem preventing the Odoo upgrade command from functioning correctly when running Odoo in standalone mode. The fix addresses issues with argument handling and the system's path configuration, ensuring the upgrade process now works reliably. This improves the stability of our standalone Odoo deployments.
Original PR description
The command no longer works in standalone mode due to the following issues: - Each access to `self.parser` creates a new parser, so previously added arguments are lost. - The parsed `addons_path` value is already a list, but the command attempts to split it again. - The temporary Odoo paths remain in `sys.path`, causing Odoo modules to shadow standard library modules when running upgrade scripts. This commit addresses all the above issues. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#269931
This update resolves an issue where the Facebook statistics refresh process would fail due to a calculation error when data was unavailable. The fix prevents a 'None' value from causing a calculation error, ensuring statistics are consistently updated. This improves the reliability of Facebook integration for users.
Original PR description
Traceback: ```py TypeError: unsupported operand type(s) for -: 'NoneType' and 'int' ``` Cause: https://github.com/odoo/enterprise/blob/f6c5ce7de737794a675d1b2485dd5c1a9ed0cb17/social_facebook/models/social_account.py#L92-L108 ``meta_run_request_batch()`` may return ``None`` for failed requests. In that case, ``page_global_stats`` is ``None``, leading to ``fan_count`` being ``None``. The statistics computation then calls ``_compute_trend()`` with a ``None`` value, causing the above traceback. https://github.com/odoo/enterprise/blob/f6c5ce7de737794a675d1b2485dd5c1a9ed0cb17/social/models/social_account.py#L143-L144 sentry-7545763666
This update fixes several visual issues within the Odoo spreadsheet component, specifically addressing problems with dark mode display and usability. The changes improve the spreadsheet's appearance and functionality, ensuring a consistent and readable experience across different themes.
Original PR description
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/e061163e2e [REL] 19.3.7 [Task: 0](https://www.odoo.com/odoo/2328/tasks/0)…
### Contains the following commits: https://github.com/odoo/o-spreadsheet/commit/e061163e2e [REL] 19.3.7 [Task: 0](https://www.odoo.com/odoo/2328/tasks/0) https://github.com/odoo/o-spreadsheet/commit/0d81fad529 [FIX] Headers overlay: unhide headers in dark mode [Task: 6233467](https://www.odoo.com/odoo/2328/tasks/6233467) https://github.com/odoo/o-spreadsheet/commit/8eaa180d01 [FIX] autofill: make tooltip readable in dark mode [Task: 6289977](https://www.odoo.com/odoo/2328/tasks/6289977) https://github.com/odoo/o-spreadsheet/commit/0e6b5108a9 [FIX] pivot: hide collapse icon when displaying formulas [Task: 6218524](https://www.odoo.com/odoo/2328/tasks/6218524) https://github.com/odoo/o-spreadsheet/commit/d5547b637d [FIX] side_panel: autocomplete dropdown transparency issue on scroll [Task: 6254807](https://www.odoo.com/odoo/2328/tasks/6254807) Co-authored-by: Florian Damhaut (flda) <flda@odoo.com> Co-authored-by: Anthony Hendrickx (anhe) <anhe@odoo.com> Co-authored-by: Alexis Lacroix (laa) <laa@odoo.com> Co-authored-by: Lucas Lefèvre (lul) <lul@odoo.com> Co-authored-by: Adrien Minne (adrm) <adrm@odoo.com> Co-authored-by: Ronak Mukeshbhai Bharadiya (rmbh) <rmbh@odoo.com> Co-authored-by: Dhrutik Patel (dhrp) <dhrp@odoo.com> Co-authored-by: Rémi Rahir (rar) <rar@odoo.com> Co-authored-by: Pierre Rousseau (pro) <pro@odoo.com> Co-authored-by: Vincent Schippefilt (vsc) <vsc@odoo.com> Co-authored-by: Marceline Thomas (matho) <matho@odoo.com>
A recent update to the Weblate translation system unexpectedly reverted some code changes. This pull request is correcting this issue by restoring the original code. This ensures that all features continue to function as designed after the translation update.
Original PR description
The regular Weblate translation update reverted some code changes. This should normally not happen. We're reverting it back to the previous state. This partially reverts commit 3c73ba831077e166d1dbaf6003ba0d735469f5f9.
This update simplifies accessing employee profiles from the avatar card. Previously, a confirmation dialog forced users to activate inactive companies. Now, a 'View Profile' dropdown offers two options: directly opening the employee profile (activating the company) or accessing the contact profile without company activation. This provides a smoother user experience and avoids unnecessary company activations.
Original PR description
When opening a profile from the avatar card, the employee's company may not be in the user's active companies. Until now this popped a confirmation dialog that only let the user either activate the…
When opening a profile from the avatar card, the employee's company may not be in the user's active companies. Until now this popped a confirmation dialog that only let the user either activate the other company or cancel, with no way to reach the still-accessible contact profile. Replace the dialog with a less intrusive "View Profile" dropdown, shown only when the employee's company is allowed but not active. It offers two choices: - Open Employee Profile (activates the company) - Open Contact Profile (no company activation) Activating an extra company widens the active-company scope for the whole session, which is not always desirable, so keeping a non-mutating path to the contact profile is useful. In every other case (no employee, company already active, or company not allowed) the plain "View Profile" button is unchanged. task-6074597 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#270312 Forward-Port-Of: odoo/odoo#264073
This update resolves an issue that caused a traceback when accessing the Time Off feature on mobile devices. The fix ensures the system consistently returns an array of data, preventing errors that occurred when receiving an empty dictionary. This improves the stability and usability of the Time Off module for all users.
Original PR description
Steps to reproduce: 1. Access the database from a mobile device (or a small browser window) 2. Sign in as a user who has access to the Time Off module, but doesn't have an employee record 3. Open Time Off 4. Observe the traceback When we try to access Time Off with a user who has no employee record, we get a traceback due to receiving an empty dictionary from the backend. The error occurs because we try to iterate over this dictionary, even though we normally expect an array from the request we make. This commit will ensure we always return an array to the frontend, preventing the error. [opw-6295568](https://www.odoo.com/odoo/project/49/tasks/6295568?debug=assets) Forward-Port-Of: odoo/odoo#269882
This update corrects a bug where the website's recruitment search function wasn't finding refused applicants. The issue stemmed from a recent change in how refused applications were being searched, combined with the fact that refused applications are automatically archived. This fix ensures the website correctly displays all refused applicants during searches.
Original PR description
Searching on `[("application_status", "=", "refused")]` is always empty. It is an overlook from [odoo/206645] ([b6e4817]), where the `_search` query was changed to search only active refused applications. However, refused applications are always archived.
This was breaking `website_hr_recruitment` which was searching for refused applications, without finding any.
[odoo/206645]: https://github.com/odoo/odoo/pull/206645
[b6e4817]: https://github.com/odoo/odoo/commit/b6e48176219b2b123bcbf0353b8586c888fc6a94
opw-6204868
Forward-Port-Of: odoo/odoo#270396
Forward-Port-Of: odoo/odoo#266370This update ensures that the Intermediary SWIFT code for US bank accounts remains visible in Odoo, regardless of the selected country. Previously, this field was hidden when the company wasn't set to the US fiscal localization. This change simplifies bank account setup and reporting for US businesses.
Original PR description
**Steps to reproduce:** - Install the `l10n_us_account` module and switch to a My US company - Navigate to Invoicing > Configuration > Journals > Bank - Click the internal link of the `Bank Account…
**Steps to reproduce:** - Install the `l10n_us_account` module and switch to a My US company - Navigate to Invoicing > Configuration > Journals > Bank - Click the internal link of the `Bank Account Number` - Go to the `Bank Information` tab - Observe that the `Intermediary SWIFT` field is visible - Remove `United States` from the bank address **Observation:** The `Intermediary SWIFT` field becomes `invisible` when the country is not set to `United States`. **Root Cause:** At [1], the field Intermediary SWIFT( `intermediary_bank_bic`) is defined with a condition that makes it invisible when the country is not 'US'. **Fix:** This commit ensures that the `Intermediary SWIFT` field remains visible when the company uses the US fiscal localization package, even if the bank country is not set to United States. [1]: https://github.com/odoo/odoo/blob/1d4715e58613912bfd0ded4fd370c50c131ff164/addons/l10n_us_account/views/res_partner_bank_views.xml#L9 opw-6145872 Forward-Port-Of: odoo/odoo#260989
This update removes a redundant payment feature related to payment terminals. The removal of fast payments using these terminals made the associated override unnecessary, streamlining the system. This change improves efficiency and reduces potential complexity.
Original PR description
We removed fast payments using payment terminals, making the `fastPayments` method override useless. see odoo/odoo#270240 task-6303855 Forward-Port-Of: odoo/enterprise#120672