Thursday, January 18, 2024
38 changes · master
Enhancements to existing features
The timesheet timer header now shows the activity description before the project and task details. This makes the most immediate work context more prominent when starting or tracking time.
Original PR description
Steps: - Install timesheet_grid. - Start the timer from timesheet header. - `Project` -> `Task` -> `Describe your activity` is displayed in this sequence. Improvement: - Move the description to the left of the project. task-3429424
This update tidies and clarifies the Amazon sales integration test suite, including related wording and documentation. It does not introduce new business functionality, but helps maintain reliability and makes future changes easier to validate.
Miscellaneous changes
- define a relational global filter without any default value. - reference that filter with `ODOO.FILTER.VALUE` => when loading the spreadsheet, a `read` RPC is triggered with an empty list of ids. This is: - useless network call - useless evaluation when the RPC resolves --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#149741
Original PR description
- define a relational global filter without any default value. - reference that filter with `ODOO.FILTER.VALUE` => when loading the spreadsheet, a `read` RPC is triggered with an empty list of ids. This is: - useless network call - useless evaluation when the RPC resolves --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#149741
Before this commit, the test "switching to non-existing record" was not waiting for the notification to show. After this commit, it waits. Fixes runbot issue 53395 Fixes runbot issue 54852 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#149751
Original PR description
Before this commit, the test "switching to non-existing record" was not waiting for the notification to show. After this commit, it waits. Fixes runbot issue 53395 Fixes runbot issue 54852 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#149751
When clicking on a filter on a progress bar of a group, the aggregates need to be recomputed. To do this, a web_read_group is called. Since [1], the key groupDomain was removed, with the result that, the web_read_group is called for all the groups and not only for the needed one. This can be a performance issue. Now, the key groupDomain was reintroduced and the web_read_group is done only for the modified filter's group. [1]: https://github.com/odoo/odoo/commit/8723f020c3587a900c811b8
Original PR description
When clicking on a filter on a progress bar of a group, the aggregates need to be recomputed. To do this, a web_read_group is called. Since [1], the key groupDomain was removed, with the result that, the web_read_group is called for all the groups and not only for the needed one. This can be a performance issue. Now, the key groupDomain was reintroduced and the web_read_group is done only for the modified filter's group. [1]: https://github.com/odoo/odoo/commit/8723f020c3587a900c811b8cc23f53fe34b98df3 Forward-Port-Of: odoo/odoo#149695
How to reproduce it: - Install website_slides - Go in the course "Basics of Gardening" - Do the test "Test you knowledge" in full screen mode - The information displayed about your answer is glued to the information icon This fix the problem by adding space between the icon and the text using a bootstrap class. Technical note: Although the html has not changed, the problem was not present in previous version because the rendering process was not removing all spaces which is now the cas
Original PR description
How to reproduce it: - Install website_slides - Go in the course "Basics of Gardening" - Do the test "Test you knowledge" in full screen mode - The information displayed about your answer is glued to the information icon This fix the problem by adding space between the icon and the text using a bootstrap class. Technical note: Although the html has not changed, the problem was not present in previous version because the rendering process was not removing all spaces which is now the case. So this doesn't solve the root cause but only that particular case. Task-3607117 Forward-Port-Of: odoo/odoo#144985
**How to reproduce** 1. Go to website slides. 2. Open any course which has quiz content. 3. Solve the quiz or open an already solved quiz. -> Here we can see that the reset and continue buttons are overlapped. **After this PR** Now there will be a space between the reset and continue buttons. Task-3635485 Forward-Port-Of: odoo/odoo#146646
Original PR description
**How to reproduce** 1. Go to website slides. 2. Open any course which has quiz content. 3. Solve the quiz or open an already solved quiz. -> Here we can see that the reset and continue buttons are overlapped. **After this PR** Now there will be a space between the reset and continue buttons. Task-3635485 Forward-Port-Of: odoo/odoo#146646
This commit replaces the icons of the `/banner` commands with standard emojis and enables users to customize them. Users can now click on a banner emoji to open an emoji picker and choose the emoji they want. These changes enable users to customize the banners and make the document more joyful. task-3676855 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#149008
Original PR description
This commit replaces the icons of the `/banner` commands with standard emojis and enables users to customize them. Users can now click on a banner emoji to open an emoji picker and choose the emoji they want. These changes enable users to customize the banners and make the document more joyful. task-3676855 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#149008
Before this PR =================== 1). Go to website slides. 2). Open any Course. 3). Click on 'Add a review' or 'Edit your review'. -> We can see that textarea and div both have a border. After this PR ================= When we are in the pop-up view div border will be not shown. Task-3623765 Forward-Port-Of: odoo/odoo#149434
Original PR description
Before this PR =================== 1). Go to website slides. 2). Open any Course. 3). Click on 'Add a review' or 'Edit your review'. -> We can see that textarea and div both have a border. After this PR ================= When we are in the pop-up view div border will be not shown. Task-3623765 Forward-Port-Of: odoo/odoo#149434
"He lovesto" -> "He loves to" The msg is updated in translation file. Task-3685546 Forward-Port-Of: odoo/odoo#149531
Original PR description
"He lovesto" -> "He loves to" The msg is updated in translation file. Task-3685546 Forward-Port-Of: odoo/odoo#149531
To reproduce: - Select a partner in the partner list - Try to modify the selected partner - The modification won't be taken into account in the front-end Fix: When the partner list was loaded at the render of the template, a copy of the selected partner was put at the top of the list. This copy didn't contain the modified fields. This PR makes sure that the updated partner information is loaded. Task-id: 3672197 Description of the issue/feature this PR addresses: Current behavior
Original PR description
To reproduce: - Select a partner in the partner list - Try to modify the selected partner - The modification won't be taken into account in the front-end Fix: When the partner list was loaded at the render of the template, a copy of the selected partner was put at the top of the list. This copy didn't contain the modified fields. This PR makes sure that the updated partner information is loaded. Task-id: 3672197 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 Forward-Port-Of: odoo/odoo#148885
Description of the issue/feature this PR addresses: When a calendar event gets synchronized from Outlook calendar to Odoo in which the organizer's email address' capitalization doesn't match between Outlook and Odoo, the event is created in Odoo without an organizer. (i.e. `user_id` is `False`) Current behavior before PR: If the organizer's email address is `Firstname.Lastname@example.com` in Outlook and `firstname.lastname@example.com` in Odoo, the event is created in Odoo without an o
Original PR description
Description of the issue/feature this PR addresses: When a calendar event gets synchronized from Outlook calendar to Odoo in which the organizer's email address' capitalization doesn't match between Outlook and Odoo, the event is created in Odoo without an organizer. (i.e. `user_id` is `False`) Current behavior before PR: If the organizer's email address is `Firstname.Lastname@example.com` in Outlook and `firstname.lastname@example.com` in Odoo, the event is created in Odoo without an organizer. Desired behavior after PR is merged: Odoo is able to find the correct organizer user ID even though the capitalization of the email address wouldn't match. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#147069
[Commit 1](https://github.com/odoo/odoo/commit/7594d71ca8610d5947e80f325ccb57abc23c2c76) changed the class from .ui-draggable to .o_draggable in the snippet_version test, specifically in the run function that checks if all snippets have their data-snippet properly set. Indeed, .o_draggable is set on the parents of draggable elements and not on the elements which are draggable themselves. This lead to a `.every` on an empty array which returns true, and therefore avoids the console.error
Original PR description
[Commit 1](https://github.com/odoo/odoo/commit/7594d71ca8610d5947e80f325ccb57abc23c2c76) changed the class from .ui-draggable to .o_draggable in the snippet_version test, specifically in the run function that checks if all snippets have their data-snippet properly set. Indeed, .o_draggable is set on the parents of draggable elements and not on the elements which are draggable themselves. This lead to a `.every` on an empty array which returns true, and therefore avoids the console.error but did not properly check the snippets. This commit changes the selector to all snippets which do not have a [data-module-id] which should be all snippets that are draggable. [1]: https://github.com/odoo/odoo/commit/7594d71ca8610d5947e80f325ccb57abc23c2c76 Forward-Port-Of: odoo/odoo#148824
This PR retrieves space between checkbox and label in course groups from view which may be lost in a major owl refactor(https://github.com/odoo/odoo/commit/48ef812a635f70571b395f82ffdb2969ce99da9e) in form view. **Task**-3557567 Forward-Port-Of: odoo/odoo#139313
Original PR description
This PR retrieves space between checkbox and label in course groups from view which may be lost in a major owl refactor(https://github.com/odoo/odoo/commit/48ef812a635f70571b395f82ffdb2969ce99da9e) in form view. **Task**-3557567 Forward-Port-Of: odoo/odoo#139313
This commit resolves an issue in the `link_tools` test, specifically addressing a failure that arises when verifying the synchronization between the link's href and the content of the `<a>` tag. The failure was attributed to the oversight of not clicking outside the popup to close it before interacting with the link. runbot-24929 Forward-Port-Of: odoo/odoo#149854 Forward-Port-Of: odoo/odoo#144234
Original PR description
This commit resolves an issue in the `link_tools` test, specifically addressing a failure that arises when verifying the synchronization between the link's href and the content of the `<a>` tag. The failure was attributed to the oversight of not clicking outside the popup to close it before interacting with the link. runbot-24929 Forward-Port-Of: odoo/odoo#149854 Forward-Port-Of: odoo/odoo#144234
# HOW TO REPRODUCE - Create Product P, storable, AVCO - Create Purchase Order for 100 units of P for $10 each > confirm - Receive 40 units of P, create backorder - Create Bill, change price to $12, confirm - Return 10 units of P - Receive 60 units of P => unit-cost in SVL is $12 instead of $10 --- Result of the test without the fix: ``` 2024-01-11 09:02:45,649 9822 ERROR oes_purchase_test odoo.addons.purchase_stock.tests.test_stockvaluation: FAIL: TestStockValuationWithCOA.test_pu
Original PR description
# HOW TO REPRODUCE - Create Product P, storable, AVCO - Create Purchase Order for 100 units of P for $10 each > confirm - Receive 40 units of P, create backorder - Create Bill, change price to $12,…
# HOW TO REPRODUCE
- Create Product P, storable, AVCO
- Create Purchase Order for 100 units of P for $10 each > confirm
- Receive 40 units of P, create backorder
- Create Bill, change price to $12, confirm
- Return 10 units of P
- Receive 60 units of P
=> unit-cost in SVL is $12 instead of $10
---
Result of the test without the fix:
```
2024-01-11 09:02:45,649 9822 ERROR oes_purchase_test odoo.addons.purchase_stock.tests.test_stockvaluation: FAIL: TestStockValuationWithCOA.test_purchase_with_backorders_and_return_and_price_changes
Traceback (most recent call last):
File "/home/odoo/projects/odoo-src/multiverse/src/16.0/odoo/addons/purchase_stock/tests/test_stockvaluation.py", line 2740, in test_purchase_with_backorders_and_return_and_price_changes
self.assertEqual(receipt03.move_ids.stock_valuation_layer_ids.ensure_one().value, 300.0)
AssertionError: 375.0 != 300.0
```
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#149312
Forward-Port-Of: odoo/odoo#148912Following a fix in 16.3 with 5052b9e4a15155c694cf005fdf330997770c6cac, backported in 16.0+ with commit d28a8f67da06e58358b40636d1dca1f91a84e1ad, the rates for the different carriers were computed on page loading, to make sure unavailable carriers were hidden. Nevertheless, this leads to significant increases of /shop/payment page loading time depending on the enabled carriers. This commit restricts the previous fix to the targeted type of carriers, aka `base_on_rule` ones, whose rates do n
Original PR description
Following a fix in 16.3 with 5052b9e4a15155c694cf005fdf330997770c6cac, backported in 16.0+ with commit d28a8f67da06e58358b40636d1dca1f91a84e1ad, the rates for the different carriers were computed on page loading, to make sure unavailable carriers were hidden. Nevertheless, this leads to significant increases of /shop/payment page loading time depending on the enabled carriers. This commit restricts the previous fix to the targeted type of carriers, aka `base_on_rule` ones, whose rates do not depend on third party API requests. Forward-Port-Of: odoo/odoo#149602 Forward-Port-Of: odoo/odoo#149363
Step: ---- - install planning module - active the Dark Mode - open planning model - create shift with material resource - check the material resource icon Issue: ----- when dark mode active that time background and color are not proper show Fix: ----- We have fixed according the tag_list. task-3524295  - requires : https://github.com/odoo/enterprise/pull/54510
Original PR description
Step: ---- - install planning module - active the Dark Mode - open planning model - create shift with material resource - check the material resource icon Issue: ----- when dark mode active that time background and color are not proper show Fix: ----- We have fixed according the tag_list. task-3524295  - requires : https://github.com/odoo/enterprise/pull/54510 Forward-Port-Of: odoo/odoo#138391
Issue: ===== Users with IOS can't sign with safari. Steps to reproduce the issue: ============================= - Install sign - Make sure you have a template which has at least one signature sign item. - Share the docuemnt and open the link with ios on safari in v 15.4+ (browserstack) for example. - Go to the signature sign item and use auto and click sign or sign all - Nothing will happen. Origin of the issue: ==================== https://github.com/niklasvh/html2canvas/issues/
Original PR description
Issue: ===== Users with IOS can't sign with safari. Steps to reproduce the issue: ============================= - Install sign - Make sure you have a template which has at least one signature sign item. - Share the docuemnt and open the link with ios on safari in v 15.4+ (browserstack) for example. - Go to the signature sign item and use auto and click sign or sign all - Nothing will happen. Origin of the issue: ==================== https://github.com/niklasvh/html2canvas/issues/2864 Solution: ========= https://github.com/niklasvh/html2canvas/issues/2864#issuecomment-1111044861 opw-3660682 Forward-Port-Of: odoo/odoo#148329
This pr contains 2 parts: Part 1: ===== Backport of https://github.com/odoo/odoo/commit/94ed203404b3b2121122697f5ebfe09cc21e3630 to not change the carrier_id on reload. Part2: ===== Issue: ====== Payment methods doesn't show when updating delivery method Steps to reproduce the issue: ============================= - Install website_sale - Activate coupons and promotions in settings - Create a coupon program with the follwing values : reward: discount, percentage: 100% - Save
Original PR description
This pr contains 2 parts: Part 1: ===== Backport of https://github.com/odoo/odoo/commit/94ed203404b3b2121122697f5ebfe09cc21e3630 to not change the carrier_id on reload. Part2: ===== Issue: ======…
This pr contains 2 parts: Part 1: ===== Backport of https://github.com/odoo/odoo/commit/94ed203404b3b2121122697f5ebfe09cc21e3630 to not change the carrier_id on reload. Part2: ===== Issue: ====== Payment methods doesn't show when updating delivery method Steps to reproduce the issue: ============================= - Install website_sale - Activate coupons and promotions in settings - Create a coupon program with the follwing values : reward: discount, percentage: 100% - Save the program and generate some coupons - Activate at least 1 free delivery method and 1 free delivery method - Activate at least one payment method - Go to shop add anything to cart - Apply one of the codes from the generated coupons - Go to confirm order and change between the delivery methods. - If the default delivery method is free, the payment methods will never show , otherwise they will always show. Origin of the issue: ==================== The payment methods were rendered using `t-if` directive which means that we can't toggle it dynamically since they don't exist in the view. Solution: ========= we reload the page only when we toggle from zero to non zero total. opw-3662606 Forward-Port-Of: odoo/odoo#149782 Forward-Port-Of: odoo/odoo#148431
Steps to Reproduce : 1. Open Email Marketing 2. Type a long text in the subject line 3. You will notice that the content gets overlapped over the emoji icon Observed behavior: content getting overlap over emoji icon Expected behavior: the content should be hidden by the emoji icon Task-3628324 Forward-Port-Of: odoo/odoo#149895 Forward-Port-Of: odoo/odoo#148257
Original PR description
Steps to Reproduce : 1. Open Email Marketing 2. Type a long text in the subject line 3. You will notice that the content gets overlapped over the emoji icon Observed behavior: content getting overlap over emoji icon Expected behavior: the content should be hidden by the emoji icon Task-3628324 Forward-Port-Of: odoo/odoo#149895 Forward-Port-Of: odoo/odoo#148257
Steps to reproduce: - Install Inventory and Sales - Go to "Inventory / Configuration / Settings" - Activate "Storage Locations" and "Multi-Steps Routes" - Go to "Inventory / Configuration / Warehouse Management / Warehouses" - Configure main warehouse: (e.g. San Francisco warehouse) * Outgoing Shipments: Send goods in output and then deliver (2 steps) - Go to "Inventory / Configuration / Warehouse Management / Rules" - Configure the following rule: * Action: Pull From opw-3548123
Original PR description
Steps to reproduce: - Install Inventory and Sales - Go to "Inventory / Configuration / Settings" - Activate "Storage Locations" and "Multi-Steps Routes" - Go to "Inventory / Configuration / Warehouse Management / Warehouses" - Configure main warehouse: (e.g. San Francisco warehouse) * Outgoing Shipments: Send goods in output and then deliver (2 steps) - Go to "Inventory / Configuration / Warehouse Management / Rules" - Configure the following rule: * Action: Pull From opw-3548123 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#149867 Forward-Port-Of: odoo/odoo#149421
Curently when trying to select an existing/newly created project in the timesheet section of time off types, it will not recognize that the project exists and will suggest to create it. Steps to reproduce: ------------------- * Go to **Setting** -> Enable timesheets * Go to **Time Off** App -> Configuration -> Time off types * Create new type * Go to **Project** App * Create a new project * Go back to the configuration of the new time off type * Enable **developer mode** * Under time
Original PR description
Curently when trying to select an existing/newly created project in the timesheet section of time off types, it will not recognize that the project exists and will suggest to create it. Steps to…
Curently when trying to select an existing/newly created project in the timesheet section of time off types, it will not recognize that the project exists and will suggest to create it. Steps to reproduce: ------------------- * Go to **Setting** -> Enable timesheets * Go to **Time Off** App -> Configuration -> Time off types * Create new type * Go to **Project** App * Create a new project * Go back to the configuration of the new time off type * Enable **developer mode** * Under timesheet section, select project * Try selection the new project created * It suggests to create the project/does not recognize it is already created. Why the fix: ------------ In multi-company this issue can be handled by going into the settings of the project and selecting the same company as the one in the time off type. This issue is more problematic in case of single company because the field `company_id` is not available in neither the project form nor the time of type. As of currently, the `company_id` on time off type is by default the current company, while it is `False` by default for the project. This PR introduced that behavior: https://github.com/odoo/odoo/pull/122144 Since the `company_id` can now also be `False`, it makes sense to enlarge the filter domain on the time off type form. With that in place, the field `timesheet_task_id` also requires changes because a task created in a project with no `company_id` will not have a `company_id`. opw-3644265 Forward-Port-Of: odoo/odoo#149620 Forward-Port-Of: odoo/odoo#148317
Since [this other commit], the performance test of the blog may use less queries than before. This commit change the test to update the number of expected queries. [this other commit]: https://github.com/odoo/odoo/commit/7466ecd400bd27e4b612a5fcbdd779f34301982a runbot-54860 Forward-Port-Of: odoo/odoo#149839
Original PR description
Since [this other commit], the performance test of the blog may use less queries than before. This commit change the test to update the number of expected queries. [this other commit]: https://github.com/odoo/odoo/commit/7466ecd400bd27e4b612a5fcbdd779f34301982a runbot-54860 Forward-Port-Of: odoo/odoo#149839
Steps to reproduce: - Configure a non-ASCII custom domain (Punycode encoded) on a database (e.g. `test-môu.com` <> `xn--test-mu-y0a.com`). - Setup test API keys on a Stripe account ("Publishable" & "Secret"). - Install and activate the Stripe payment acquirer (in "Test Mode"). - Go to the Stripe Odoo config (Invoicing > Payment Acquirers > Stripe). - Configure Stripe API keys and click on the button to "GENERATE YOUR WEBHOOK" > traceback: `Invalid URL: Non-ASCII characters in URLs must
Original PR description
Steps to reproduce: - Configure a non-ASCII custom domain (Punycode encoded) on a database (e.g. `test-môu.com` <> `xn--test-mu-y0a.com`). - Setup test API keys on a Stripe account ("Publishable" &…
Steps to reproduce:
- Configure a non-ASCII custom domain (Punycode encoded) on a database
(e.g. `test-môu.com` <> `xn--test-mu-y0a.com`).
- Setup test API keys on a Stripe account ("Publishable" & "Secret").
- Install and activate the Stripe payment acquirer (in "Test Mode").
- Go to the Stripe Odoo config (Invoicing > Payment Acquirers > Stripe).
- Configure Stripe API keys and click on the button to "GENERATE YOUR
WEBHOOK" > traceback:
`Invalid URL: Non-ASCII characters in URLs must be percent-encoded in order for the URL to be valid`.
The same error occurs in every interaction with the Stripe API.
The `get_base_url()` refactoring (exactly [1]) introduced a way to get
the most suited URL for a record in the following order:
`record.website_id` > `record.company_id.website_id` > The ICP:
`web.base.url`.
For payment acquirers, and to handle multi-website scenarios, the code
uses the base URL: `httprequest.url_root` which explains why the error
occurs even when the domain name is configured in punycode.
The goal of this commit is to fix this behavior by correctly encoding
the returned base URL.
[1]: https://github.com/odoo/odoo/commit/92175d3341b576676a550c60db7c759f71cb17ea
opw-3619608
Forward-Port-Of: odoo/odoo#149801
Forward-Port-Of: odoo/odoo#147388Steps to Reproduce =================== 1 Open any course 2 Add a review / or edit the review 3 Go to the Reviews tab. (you will find a comment button under each review) 4 Post a comment on any one review. 5 Now from the 3 dots, click on Edit 6 Now, your mind has changed and you don't want to edit anything. Click on the "Cancel" button. The whole comment section disappears, including the existing comment if any, and the 'comment' button on the parent comment. Technical =========
Original PR description
Steps to Reproduce =================== 1 Open any course 2 Add a review / or edit the review 3 Go to the Reviews tab. (you will find a comment button under each review) 4 Post a comment on any one review. 5 Now from the 3 dots, click on Edit 6 Now, your mind has changed and you don't want to edit anything. Click on the "Cancel" button. The whole comment section disappears, including the existing comment if any, and the 'comment' button on the parent comment. Technical ========= This issue was introduced after the removal of qweb https://github.com/odoo/odoo/commit/6303a3eacdca012649a2ffda627b65c17a7217f1 After this commit ================== The comments section appears properly after canceling the edition. Task-3642425 Forward-Port-Of: odoo/odoo#148415
TLDR: the context key `check_move_validity` should never be used explicitly. `check_move_validity` is a context key used to disable some important integrity check in accounting: `debit=credit`, which is one of the most fundamental rule. It is possible to disable this in some cases, when creating and updating lines one by one, since the constraint cannot be satisfied between each line if the operations are not atomic. A mechanism has been created for this, with `_check_balanced`. It is a c
Original PR description
TLDR: the context key `check_move_validity` should never be used explicitly. `check_move_validity` is a context key used to disable some important integrity check in accounting: `debit=credit`, which…
TLDR: the context key `check_move_validity` should never be used explicitly. `check_move_validity` is a context key used to disable some important integrity check in accounting: `debit=credit`, which is one of the most fundamental rule. It is possible to disable this in some cases, when creating and updating lines one by one, since the constraint cannot be satisfied between each line if the operations are not atomic. A mechanism has been created for this, with `_check_balanced`. It is a context manager using `_disable_recursion`, which will taint all the contexts while inside of the context manager. Putting any code changing lines one by one inside of that context manager will then allow having a transient invalid state, but still always check the validity at the end, when exiting the context. That context key has been kept only in `point_of_sale` because a special wizard is used there to be able to validate a session with an unbalanced move, but a wizard is then in charge of balancing it. The check is then done at that time. Forward-Port-Of: odoo/odoo#146824
### Steps to reproduce: 1. Create multiple forums. 2. Click on edit in Forums front page. 3. Toggle Last Post button. 4. Last Post doesn't appear. ### Explanation: Last Post was removed from the `forum_all_all_entries` template in *v16.4*. ### Fix: Recreate Last Post, mixing the behaviour and look of *v16.3* (clickable title, truncated text) and the look of *v16.4* (badge with dark background). The `<object>` tag wraps the inner `<a>` tag to avoid nested links issues. opw
Original PR description
### Steps to reproduce: 1. Create multiple forums. 2. Click on edit in Forums front page. 3. Toggle Last Post button. 4. Last Post doesn't appear. ### Explanation: Last Post was removed from the `forum_all_all_entries` template in *v16.4*. ### Fix: Recreate Last Post, mixing the behaviour and look of *v16.3* (clickable title, truncated text) and the look of *v16.4* (badge with dark background). The `<object>` tag wraps the inner `<a>` tag to avoid nested links issues. opw-3558730 Forward-Port-Of: odoo/odoo#146121
Missing _t to translate a string made it so the cart notification title was always in English. opw-3683578 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#149875 Forward-Port-Of: odoo/odoo#149761
Original PR description
Missing _t to translate a string made it so the cart notification title was always in English. opw-3683578 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#149875 Forward-Port-Of: odoo/odoo#149761
Issue: ====== The email template isn't saved in automation rule Changing `Stage goes from` in existing automation rule will break too. Steps to reproduce the issue: ============================= - Install subscription - Go so subscription/configuration/automation rules - Create a new rule with the following values: name:anything - Action to do: `Send an email to the customer`, Email template:`Payment Failure` or anything else - Save - Change an existing automation rule `Stage
Original PR description
Issue: ====== The email template isn't saved in automation rule Changing `Stage goes from` in existing automation rule will break too. Steps to reproduce the issue: ============================= - Install subscription - Go so subscription/configuration/automation rules - Create a new rule with the following values: name:anything - Action to do: `Send an email to the customer`, Email template:`Payment Failure` or anything else - Save - Change an existing automation rule `Stage goes from` it will break Origin of the issue: =================== Creation bug: `template_id` is now a related field. Upon creation , the `template_id` wasn't passed in the `action_values` so we lose the value entered by the user. Update bug: There is an infinite loop in write in `sale.order.alert`, write will call `_configure_alert` wich will call write and so on. opw-3645355 Forward-Port-Of: odoo/enterprise#53442
Steps to reproduce: - Install account_intrastat - Install a localization that should declare intrastat report (e.g. l10n_be) - Switch to a Belgian company - Create a product with the country of origin set to United Kingdom - Create an invoice with that product and set Intrastat country to any country except United Kingdom - Confirm the invoice - Go to "Accounting / Reporting / Audit Reports / Intrastat Report" - Filter on the period of the invoice - Export in XML Issue: The country
Original PR description
Steps to reproduce: - Install account_intrastat - Install a localization that should declare intrastat report (e.g. l10n_be) - Switch to a Belgian company - Create a product with the country of…
Steps to reproduce: - Install account_intrastat - Install a localization that should declare intrastat report (e.g. l10n_be) - Switch to a Belgian company - Create a product with the country of origin set to United Kingdom - Create an invoice with that product and set Intrastat country to any country except United Kingdom - Confirm the invoice - Go to "Accounting / Reporting / Audit Reports / Intrastat Report" - Filter on the period of the invoice - Export in XML Issue: The country code for United Kingdom in the report is GB. However, since Brexit, 2 different codes should be used for United Kingdom (XU) and Northen Ireland (XI). Since 2024, GB is not accepted anymore by the government and the intrastat report is rejected if XU/XI are not used instead. Solution: This fix adds Northern Ireland as a country, to be able to select it as a country of origin of a product. In the intrastat report, if the country code is GB, it will be changed to XU. opw-3669871 Forward-Port-Of: odoo/enterprise#54583 Forward-Port-Of: odoo/enterprise#54176
Forward-Port-Of: odoo/enterprise#54381
Original PR description
Forward-Port-Of: odoo/enterprise#54381
- Requires : https://github.com/odoo/odoo/pull/138391 task-3524295 -------------------------- This PR fixes an issue about the `colorlist_item` contrast in dark mode. With Odoo 17, the dark mode received an update, and the way we handle our tags changed. We now use two CSS variables: 1. `--background-color` for the background ; 2. `--color` to handle the colors of the tags. This approach allow us to have full control on the visual result of our badges depending on the col
Original PR description
- Requires : https://github.com/odoo/odoo/pull/138391 task-3524295 -------------------------- This PR fixes an issue about the `colorlist_item` contrast in dark mode. With Odoo 17, the dark mode…
- Requires : https://github.com/odoo/odoo/pull/138391 task-3524295 -------------------------- This PR fixes an issue about the `colorlist_item` contrast in dark mode. With Odoo 17, the dark mode received an update, and the way we handle our tags changed. We now use two CSS variables: 1. `--background-color` for the background ; 2. `--color` to handle the colors of the tags. This approach allow us to have full control on the visual result of our badges depending on the color scheme used by the user, by using the same color but with different adjustments. While this approach was applied to our badges, it was not applied to the `colorlist_item_color` class, resulting in a readability issue in dark mode. To fix this issue, we simply add a `--color` CSS variable inside the color adjustments made to `colorlist_item`, with the same parameters as the badges one, to ensure that the text/icon inside a `colorlist` element is always readable. | 17.0 | master-web-gantt-dark-mode-issue-irsa | | ------------- | ------------- | |  |  | Forward-Port-Of: odoo/enterprise#54510
Before this commit, when the user tries to update a timesheet of an archived employee, he got an error saying: "Timesheets before the {last_validated_timesheet_date set on the employee} (included) have been validated, and can no longer be modified" The reason is because the employee is archived and so the check does not fetch the employee to be sure the approver who alters the timesheet is the manager/timesheet manager of the employee archived. This commit fixes the issue by also fetching th
Original PR description
Before this commit, when the user tries to update a timesheet of an archived employee, he got an error saying:
"Timesheets before the {last_validated_timesheet_date set on the employee} (included) have been validated, and can no longer be modified" The reason is because the employee is archived and so the check does not fetch the employee to be sure the approver who alters the timesheet is the manager/timesheet manager of the employee archived.
This commit fixes the issue by also fetching the archived employees to be sure to check is correctly done as expected.
opw-3613473
Forward-Port-Of: odoo/enterprise#54356
Forward-Port-Of: odoo/enterprise#53832To reproduce: - Open CL company pos - Open partner list - Try to create a new partner - A traceback will be shown Fix: The attribute l10n_latam_identification_types was changed to l10n_latam.identification.type in this pr: https://github.com/odoo/enterprise/pull/51000. Two places have been forgotten. This pr also adapts the template to the new bootstrap implementation. Task-id: 3672197 Forward-Port-Of: odoo/enterprise#54061
Original PR description
To reproduce: - Open CL company pos - Open partner list - Try to create a new partner - A traceback will be shown Fix: The attribute l10n_latam_identification_types was changed to l10n_latam.identification.type in this pr: https://github.com/odoo/enterprise/pull/51000. Two places have been forgotten. This pr also adapts the template to the new bootstrap implementation. Task-id: 3672197 Forward-Port-Of: odoo/enterprise#54061
Currently, there is a CSS rule constraining all form sheets of Odoo to have a maximal width of 2600px. Since the Knowledge editor is a form view, it is affected by this rule. As a result, the editor does not fully utilize the available space on large displays, leaving blank space on the right side of the screen. To enhance user comfort, we unset the max-width constraint of the form sheet of Knowledge. The page now takes all available space and the editor is now centered. task-3636625 Forw
Original PR description
Currently, there is a CSS rule constraining all form sheets of Odoo to have a maximal width of 2600px. Since the Knowledge editor is a form view, it is affected by this rule. As a result, the editor does not fully utilize the available space on large displays, leaving blank space on the right side of the screen. To enhance user comfort, we unset the max-width constraint of the form sheet of Knowledge. The page now takes all available space and the editor is now centered. task-3636625 Forward-Port-Of: odoo/enterprise#54513 Forward-Port-Of: odoo/enterprise#53926
This traceback arises when the user tries to create a new `Staff Booking` in a `gantt` view. To reproduce this issue: 1) Install `Appointment` 2) Open `Appointment/Schedule/Staff Booking` 3) Click on `New` in gantt view of `Staff Booking`. 4) Traceback arises. Error:- ``` TypeError: 'int' object is not subscriptable File "odoo/http.py", line 2150, in __call__ response = request._serve_db() File "odoo/http.py", line 1722, in _serve_db return service_model.retrying
Original PR description
This traceback arises when the user tries to create a new `Staff Booking` in a `gantt` view. To reproduce this issue: 1) Install `Appointment` 2) Open `Appointment/Schedule/Staff Booking` 3) Click on…
This traceback arises when the user tries to create a new `Staff Booking` in a `gantt` view.
To reproduce this issue:
1) Install `Appointment`
2) Open `Appointment/Schedule/Staff Booking`
3) Click on `New` in gantt view of `Staff Booking`.
4) Traceback arises.
Error:-
```
TypeError: 'int' object is not subscriptable
File "odoo/http.py", line 2150, in __call__
response = request._serve_db()
File "odoo/http.py", line 1722, in _serve_db
return service_model.retrying(self._serve_ir_http, self.env)
File "odoo/service/model.py", line 133, in retrying
result = func()
File "odoo/http.py", line 1749, in _serve_ir_http
response = self.dispatcher.dispatch(rule.endpoint, args)
File "odoo/http.py", line 1953, in dispatch
result = self.request.registry['ir.http']._dispatch(endpoint)
File "odoo/addons/base/models/ir_http.py", line 222, in _dispatch
result = endpoint(**request.params)
File "odoo/http.py", line 722, in route_wrapper
result = endpoint(self, *args, **params_ok)
File "addons/web/controllers/dataset.py", line 24, in call_kw
return self._call_kw(model, method, args, kwargs)
File "addons/web/controllers/dataset.py", line 20, in _call_kw
return call_kw(request.env[model], method, args, kwargs)
File "odoo/api.py", line 466, in call_kw
result = _call_kw_multi(method, model, args, kwargs)
File "odoo/api.py", line 453, in _call_kw_multi
result = method(recs, *args, **kwargs)
File "addons/web/models/models.py", line 953, in onchange
if cmd[0] in (Command.UPDATE, Command.LINK):
```
In `default_get` method, the `partner_ids` value is given as a list of ids.
https://github.com/odoo/enterprise/blob/43f09c5ed91f012a4caa12379ef913ab77de8d2c/appointment/models/calendar_event.py#L41-L42
Which leads to a traceback from here.
https://github.com/odoo/odoo/blob/5e9918f8459c113f1fbf5e59c167fc79a0767f6a/addons/web/models/models.py#L946-L954
After applying this commit, It will resolve the issue by assigning a value using command.
sentry-4625709760
Forward-Port-Of: odoo/enterprise#54493- Fixes missing report label - Fixes incorrect accounts on salary rules - Remove unused salary rules - Adds missing salary rules - Fixes missing leave withhold - Fix report formatting task - 3569881 Forward-Port-Of: odoo/enterprise#54175
Original PR description
- Fixes missing report label - Fixes incorrect accounts on salary rules - Remove unused salary rules - Adds missing salary rules - Fixes missing leave withhold - Fix report formatting task - 3569881 Forward-Port-Of: odoo/enterprise#54175