Friday, January 19, 2024
32 changes · saas-17.1
Resolved issues and error corrections
Project sharing users no longer see an error when hovering over task stages in the kanban view. The unused stage tooltip setting was removed because it relied on information that is no longer available, improving stability without changing visible functionality.
Original PR description
shout out to luve https://github.com/odoo/odoo/pull/149002 Issue: When the user hovers the stage in project sharing task kanban view, a traceback appears. Reason: In the task kanban view, there is a groupby tooltip description. That is supposed to display a tooltip on stage hover with the description of the stage. However, the field description is not present on the project.task.type since the 17.1 Solution: Remove the group_by_tooltip option on the stage_id field in the project sharing kanban view (which was already not displaying anything) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The Knowledge app now places embedded view actions like Open and Rename inside the settings menu instead of showing them directly on the article. This keeps the article layout cleaner and avoids overlap with content or comments.
Original PR description
This commit moves the embedded actions `Open` and `Rename` to the cog menu of the embedded views so that it doesn't interfer with either the top of the article or, in later versions, with comments. task-3635780 This commit is a FW of c3e83668bf9953aea361fb6e3e461bb65c83316c
Miscellaneous changes
This commit addresses an issue when the logo is in text mode and we want to click on the `logo` check button under the `Header`/`Elements` options. The bug manifested itself in [this commit] during the redesign of the website template headers. The logo button, initially assumed to have two states, is, in fact, comprised of three: None, Text, and Logo. To address this issue, a workaround has been implemented, treating None and Text as a single state. Consequently, if the current state is
Original PR description
This commit addresses an issue when the logo is in text mode and we want to click on the `logo` check button under the `Header`/`Elements` options. The bug manifested itself in [this commit] during…
This commit addresses an issue when the logo is in text mode and we want to click on the `logo` check button under the `Header`/`Elements` options. The bug manifested itself in [this commit] during the redesign of the website template headers. The logo button, initially assumed to have two states, is, in fact, comprised of three: None, Text, and Logo. To address this issue, a workaround has been implemented, treating None and Text as a single state. Consequently, if the current state is Text or None, toggling will transition to Logo, and conversely, if it is Logo, the toggle will shift to None. Steps to reproduce: - enter edit mode - click on the header navbar - click on the logo - go to navbar brand options and choose `Text` in the dropdown Logo selector - the website is now saved. click on the button `LOGO` under the `Header`/`Elements` option. - An error occur : the template is not well-formed or wrong. [this commit]:https://github.com/odoo/odoo/commit/e5380a8e40be47cddf53aa24ff01e7c6802bbdb7 task-3624285 Forward-Port-Of: odoo/odoo#146839
Typing a valid http URL + SPACE transforms the URL into a link (anchor element). [1] broke such URL transformation if the URL is followed by punctuation characters, e.g. "somelink.com...". After this commit, typing "somelink.com..." + SPACE transforms "somelink.com" into a link, restoring the behavior prior to [1]. task-3602890 [1]: https://github.com/odoo/odoo/commit/4da0608f7c7cd7a6550ec40535b9562fb35c5417 Forward-Port-Of: odoo/odoo#147845
Original PR description
Typing a valid http URL + SPACE transforms the URL into a link (anchor element). [1] broke such URL transformation if the URL is followed by punctuation characters, e.g. "somelink.com...". After this commit, typing "somelink.com..." + SPACE transforms "somelink.com" into a link, restoring the behavior prior to [1]. task-3602890 [1]: https://github.com/odoo/odoo/commit/4da0608f7c7cd7a6550ec40535b9562fb35c5417 Forward-Port-Of: odoo/odoo#147845
When a test case class inherits from another class that has test methods, those tests are executed again for both classes. While it could be done on purpose, it does not seems to be the case here. Moreover, in this particular case, we are talking about 51 tests. Also, as the child class is tagged `post_install` those tests are run again on runbot in a post install build. This class is also inherited in more class in upper Odoo version, in master those tests are run up to 18 times. Forward
Original PR description
When a test case class inherits from another class that has test methods, those tests are executed again for both classes. While it could be done on purpose, it does not seems to be the case here. Moreover, in this particular case, we are talking about 51 tests. Also, as the child class is tagged `post_install` those tests are run again on runbot in a post install build. This class is also inherited in more class in upper Odoo version, in master those tests are run up to 18 times. Forward-Port-Of: odoo/odoo#149959
Since [1], the `insert` method accepts the `html` option to automatically cast record fields marked as `html` to markup. Before this PR, this option was ignored after the first insertion if the field value remains the same. Steps to reproduce this issue: - Insert a message without passing the `html` option: the body field is an instance of string. - Insert the same message setting the `html` option to true: the body field of the message is still an instance of string while it should be
Original PR description
Since [1], the `insert` method accepts the `html` option to automatically cast record fields marked as `html` to markup. Before this PR, this option was ignored after the first insertion if the field value remains the same. Steps to reproduce this issue: - Insert a message without passing the `html` option: the body field is an instance of string. - Insert the same message setting the `html` option to true: the body field of the message is still an instance of string while it should be an instance of markup. This PR fixes this issue. [1]: https://github.com/odoo/odoo/pull/139501 Forward-Port-Of: odoo/odoo#149953
Steps: - Open the Project module. - Open any project. - Add a subtask. - Without manually saving the subtask beforehand, click on 'View'. Form view of sub-task opens that doesn't have any of the fields it should inherit from its parent task. - Go back to the parent task using the breadcrumbs. - Click on 'View' again. Now, the sub-task has all of its fields set as it should. Issue: - After clicking on 'View', the form view of the sub-task opens, but it doesn't have any of the fields i
Original PR description
Steps: - Open the Project module. - Open any project. - Add a subtask. - Without manually saving the subtask beforehand, click on 'View'. Form view of sub-task opens that doesn't have any of the…
Steps: - Open the Project module. - Open any project. - Add a subtask. - Without manually saving the subtask beforehand, click on 'View'. Form view of sub-task opens that doesn't have any of the fields it should inherit from its parent task. - Go back to the parent task using the breadcrumbs. - Click on 'View' again. Now, the sub-task has all of its fields set as it should. Issue: - After clicking on 'View', the form view of the sub-task opens, but it doesn't have any of the fields it should inherit from its parent task. Cause: - On clicking 'View', the switchToForm action is called, and this action doesn't save records before switching to the form view. Also, it should load that record into the Parent task after saving. In other modules, when clicking on 'View', the openRecord action is called, which is also not saving data. Fix: - Records should be saved when the action is called on clicking 'View'. For the project module, when the action is called, after saving the record, it should also load records in the parent task. Task: 3631285 Forward-Port-Of: odoo/odoo#147665
This PR addresses an issue where the text selection disappears from editor when clicking on the font size option from the toolbar. Modifications: * The issue of text selection disappearing when interacting with the font size dropdown has been fixed. * A new toolbar option, `customFontSize`, has been added. This option is exclusively enabled for editor that have a toolbar in the same document. The `readonly` attribute has been added to the input field to make it read-only in our
Original PR description
This PR addresses an issue where the text selection disappears from editor when clicking on the font size option
from the toolbar.
Modifications:
* The issue of text selection disappearing when interacting with the font size dropdown has been fixed.
* A new toolbar option, `customFontSize`, has been added. This option is exclusively enabled for editor that have a toolbar in the same document. The `readonly` attribute has been added to the input field to make it read-only in our scenario, providing dropdown functionality for font size in the editor. However, the functionality remains unchanged for the website.
task-3500827
Forward-Port-Of: odoo/odoo#142808*: mail This commit fixes the behavior of the notification to install the PWA. The initial spec was not completely achieved, since the 'Dismiss' button, using the fa-close icon was not present. See task-3275275. Now, the button is present, and it can hide the notification and the user don't need to interact with the installation prompt to dismiss it. The fix also fixes the behavior of the notification when being used in an incognito tab. The installPrompt service assumed the PWA could b
Original PR description
*: mail This commit fixes the behavior of the notification to install the PWA. The initial spec was not completely achieved, since the 'Dismiss' button, using the fa-close icon was not present. See…
*: mail This commit fixes the behavior of the notification to install the PWA. The initial spec was not completely achieved, since the 'Dismiss' button, using the fa-close icon was not present. See task-3275275. Now, the button is present, and it can hide the notification and the user don't need to interact with the installation prompt to dismiss it. The fix also fixes the behavior of the notification when being used in an incognito tab. The installPrompt service assumed the PWA could be installed, since window.BeforeInstallPromptEvent is defined. But in an incognito scenario, the event was never actually triggered, since the feature is disabled by the browser. This could finally create a UX issue if the app had been installed, and the localStorage cleaned. The notification would appear, but wouldn't do anything when clicking on the Install button since the event is no longer triggered by the browser. Now, we rely on the trigger of the event exclusively, except on Safari, where we rely on the installationState and the standalone display-mode. Now, the service only set its state when the event has effectivelly been triggered and the native prompt can be called. Since the UI relies on the state from the service, the notification is no longer shown. Tests have been adapted, to dispatch a custom event, allowing the service to be initialized as if it was in a situation where the PWA can be installed effectively. A new test have been added to verify the interaction with the close icon. Forward-Port-Of: odoo/odoo#149961
### 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
### Steps to reproduce issue: 1. Go to Products. 2. Select a Product with an existing Barcode. 3. Click on Print Labels. 4. Select Dymo as format, add Extra Content, Confirm. 5. Extra Content is not shown. ### Explanation: The Extra Content is pushed out of the label by other elements. ### Suggested fix: Remove Extra Content to make up for lack of space. Approved by PO (thd) and already removed on other label formats. opw-3614842 Forward-Port-Of: odoo/odoo#149843 Forward-P
Original PR description
### Steps to reproduce issue: 1. Go to Products. 2. Select a Product with an existing Barcode. 3. Click on Print Labels. 4. Select Dymo as format, add Extra Content, Confirm. 5. Extra Content is not shown. ### Explanation: The Extra Content is pushed out of the label by other elements. ### Suggested fix: Remove Extra Content to make up for lack of space. Approved by PO (thd) and already removed on other label formats. opw-3614842 Forward-Port-Of: odoo/odoo#149843 Forward-Port-Of: odoo/odoo#146308
*: account_edi, account_edi_ubl_cii, l10n_ch Description of the issue/feature this PR addresses: This PR moves the check whether requested report is an invoice one in a separate function so that it can be inherited in case we need to have extra invoice report formats. Current behavior before PR: In case you generate new invoice reports, EDI document will not be included unless you rewrite (or copy/update) the full code of _render_qweb_pdf() and _render_qweb_pdf_prepare_streams() function
Original PR description
*: account_edi, account_edi_ubl_cii, l10n_ch Description of the issue/feature this PR addresses: This PR moves the check whether requested report is an invoice one in a separate function so that it…
*: account_edi, account_edi_ubl_cii, l10n_ch Description of the issue/feature this PR addresses: This PR moves the check whether requested report is an invoice one in a separate function so that it can be inherited in case we need to have extra invoice report formats. Current behavior before PR: In case you generate new invoice reports, EDI document will not be included unless you rewrite (or copy/update) the full code of _render_qweb_pdf() and _render_qweb_pdf_prepare_streams() functions. Desired behavior after PR is merged: With this PR, you can only inherits _is_invoice_report() function to add your new report name. Since this is a IMP PR, I am not sure it would be OK to have it in 16.0 (which is where I would need the functionality for now) ? So I made this PR on v16.0 but also another one on master : https://github.com/odoo/odoo/pull/147120 (since in 17.0 and master account_edi_ubl_cii does not need update there) --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#149114 Forward-Port-Of: odoo/odoo#147124
Currently, when a user that is not part of the 'base.group_system' group, they are unable to submit invoices to ZATCA and print B2B invoices since the QR code requires the use of the l10n_sa_production_csid_json fields. To fix this, we mark the l10n_sa_qr_code_str as compute_sudo=True and use sudo when we try to sign XML before submission to ZATCA Description of the issue/feature this PR addresses: If a user that is not part of the base.group_system group and tries to either submit an invo
Original PR description
Currently, when a user that is not part of the 'base.group_system' group, they are unable to submit invoices to ZATCA and print B2B invoices since the QR code requires the use of the…
Currently, when a user that is not part of the 'base.group_system' group, they are unable to submit invoices to ZATCA and print B2B invoices since the QR code requires the use of the l10n_sa_production_csid_json fields. To fix this, we mark the l10n_sa_qr_code_str as compute_sudo=True and use sudo when we try to sign XML before submission to ZATCA Description of the issue/feature this PR addresses: If a user that is not part of the base.group_system group and tries to either submit an invoice to ZATCA or print a submitted invoice with QR code, an exception will show up since one of the fields required, l10n_sa_production_csid_json, is restricted to the base.group_system group. Current behavior before PR: Access error shows up when a user that is not part of the base.group_system group tries to submit/print an invoice. Desired behavior after PR is merged: Users should be able to submit invoices to ZATCA or print submitted Invoices irrespective of their belonging to the base.group_system group. --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#149342 Forward-Port-Of: odoo/odoo#147893
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 =========
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: - 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#147388Since [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 : 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
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
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
# 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#148912Description 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
Before this commit, opening chat window from messaging menu might not work. Step to reproduce: - open Discuss app - Go to home menu - Reload the page - Click on Messaging Menu - Click on chat item to open chat => Chat window is not open This happens because when in the home menu from Discuss app in background page reload, the URL contains the Discuss app menu_id, but the action is "menu" rather the action id. This difference is crucial to distinct discuss app being actively open or it
Original PR description
Before this commit, opening chat window from messaging menu might not work. Step to reproduce: - open Discuss app - Go to home menu - Reload the page - Click on Messaging Menu - Click on chat item to…
Before this commit, opening chat window from messaging menu might not work. Step to reproduce: - open Discuss app - Go to home menu - Reload the page - Click on Messaging Menu - Click on chat item to open chat => Chat window is not open This happens because when in the home menu from Discuss app in background page reload, the URL contains the Discuss app menu_id, but the action is "menu" rather the action id. This difference is crucial to distinct discuss app being actively open or it's in the background from home menu. The latter should NOT consider Discuss app being open. This is not a problem when opening/closing Discuss app, because the mounting/unmounting of the Discuss app component is good enough to detect that. However, with page reload, the way to detect Discuss app being open from URL was only relying on `menu_id` instead of `action` value. This commit fixes the issue by checking `active_id` of discuss app rather than `menu_id`, as `active_id` is 100% reliable whereas `menu_id` is not. The problem with home menu is one example among many other cases (e.g. page reload in channel settings form view). https://github.com/odoo/odoo/pull/149969 Forward-Port-Of: odoo/enterprise#54638
- Create an invoice with account 151000 - Create an asset with this account as Depreciation Account - Sell this asset with the invoice => You have a weird error talking about remaining value In case of disposal with same accounts, the computation of depreciation_value is wrong. We should instead take the right line to compute it. Forward-Port-Of: odoo/enterprise#54430
Original PR description
- Create an invoice with account 151000 - Create an asset with this account as Depreciation Account - Sell this asset with the invoice => You have a weird error talking about remaining value In case of disposal with same accounts, the computation of depreciation_value is wrong. We should instead take the right line to compute it. Forward-Port-Of: odoo/enterprise#54430
Steps to reproduce: -------------------------- 1) Install documents_project_sale module. 2) Open project 3) Go to configuration > task stages. 4) There is a 'To Do' stage that isn't linked to any project. Issue: -------- before this commit, the 'To Do' stage that stage that isn't linked to any project. which is showing abnormally. Cause: --------- The created stage will be removed automatically but the problem is it searches for 'To do' not 'To Do' that's why it was not removed.
Original PR description
Steps to reproduce: -------------------------- 1) Install documents_project_sale module. 2) Open project 3) Go to configuration > task stages. 4) There is a 'To Do' stage that isn't linked to any project. Issue: -------- before this commit, the 'To Do' stage that stage that isn't linked to any project. which is showing abnormally. Cause: --------- The created stage will be removed automatically but the problem is it searches for 'To do' not 'To Do' that's why it was not removed. Fix: ----- after this commit, when we go to the task stages it will search for the 'To Do' stage if there is no project linked to the 'To Do' stage then it will be removed automatically the 'To Do' stage. task-3550638 Forward-Port-Of: odoo/enterprise#49641
**Before this PR:** The "Delete" button was visible in all instances of the document form view, including documents, projects, etc even while creating a new record. This was not logical since the "Delete" button is only useful when editing a workspace, not while creating a new record. **Technical:** We have added an `attrs` having invisible with the condition `('id', '=', 'False')` to the delete button, so It won't be visible if the record is not created. **After this PR:** The Delete
Original PR description
**Before this PR:**
The "Delete" button was visible in all instances of the document form view, including documents, projects, etc even while creating a new record. This was not logical since the "Delete" button is only useful when editing a workspace, not while creating a new record.
**Technical:**
We have added an `attrs` having invisible with the condition `('id', '=', 'False')` to the delete button, so It won't be visible if the record is not created.
**After this PR:**
The Delete button will only be visible in the Documents app when editing a workspace.
**Task**-3607426
Forward-Port-Of: odoo/enterprise#54071
Forward-Port-Of: odoo/enterprise#51636Turns out we don't want to pollute Runbot instances with these demo data Forward-Port-Of: odoo/enterprise#54555
Original PR description
Turns out we don't want to pollute Runbot instances with these demo data Forward-Port-Of: odoo/enterprise#54555
### Before this PR: User was allowed to do the following operations: - User was able to change month/quarter/year once the GSTR was filed/received - User was able to delete GSTR Period after sending/receiving data ### After this PR: - We restrict the user from doing the above operations as it could be problematic task-3672403 Forward-Port-Of: odoo/enterprise#54103
Original PR description
### Before this PR: User was allowed to do the following operations: - User was able to change month/quarter/year once the GSTR was filed/received - User was able to delete GSTR Period after sending/receiving data ### After this PR: - We restrict the user from doing the above operations as it could be problematic task-3672403 Forward-Port-Of: odoo/enterprise#54103
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