Monday, February 19, 2024
37 changes · saas-17.1
Resolved issues and error corrections
Fixed an issue where changing a default skill level could immediately revert after selection. The toggle value is now saved before the page refreshes its skill data, ensuring HR users see and keep the choice they made.
Original PR description
### Steps to reproduce issue: 1. Select a Skill Type 2. Toggle a Default Level 3. The Toggle resets ### Explanation: With commit odoo@6bd2c1fdfb5722b1f2d4fc2684f20ed067b93b7d, booleans are no longer automatically saved in x2many fields. Because of this and `ListBooleanToggleLoadField` calling the main record to reload when toggled, the new value is not sent to the server. ### Suggested fix: To make up for this change in the global handling of booleans, the save method will be called separately in the onChange, before triggering the reload. opw-3730301
This update resolves a technical issue where the VAT field on partner records was incorrectly overriding the autocomplete feature. The fix reorganizes the display of VAT information, ensuring the autocomplete functionality now works as expected. This improves the accuracy of VAT data entry.
Original PR description
The xpath used in the res_partner_view replaces the vat field with a div, containing the partner vat and the VIES valid field (such that they are displayed on a single row). This results in the partner-autocomplete being removed from the field. The solution is to make a div, and a subsequent xpath that moves the "vat" field into this div (alongside the vies valid field). This no longer overrides the partner-autocomplete xpath. task-id: none Forward-Port-Of: odoo/odoo#154506 Forward-Port-Of: odoo/odoo#138528
This update enhances the way contract dates are filtered within the HR system. Previously, users could only filter by month, quarter, or year, which has now been expanded to include more granular date selection options. This improves the efficiency and accuracy of contract management.
Original PR description
This will add options for month, quarters and year selection to the start and end dates filters. Task: 3725209 Forward-Port-Of: odoo/odoo#152905
This update resolves a bug where the comparison price (strikethrough) remained visible on the website even after disabling the setting in the database. The fix ensures the strikethrough price only appears when the comparison price setting is actively enabled, improving website consistency.
Original PR description
**Current behavior:** Enabling the 'Comparison Price' setting and filling out the field will result in this strikethrough price appearing even after disabling the setting. **Expected behavior:** The…
**Current behavior:** Enabling the 'Comparison Price' setting and filling out the field will result in this strikethrough price appearing even after disabling the setting. **Expected behavior:** The strikethrough comparison price will only appear when the corresponding setting is enabled in the database settings. **Steps to reproduce:** 1. Enable the 'Comparison Price' setting in website settings 2. Select a product on the 'Shop' page of the website and edit it so it has a comparison price != to its regular one 3. Save product changes, go back to the db settings and disable the 'Comparison Price' setting 4. Go back to the website 'Shop' page and observe that the strikethrough comparison price is still displayed **Cause of the issue:** In the product.template model in website_sale, the price values are modified to those informed by the compare_list_price value independent of the current value of the corresponding database setting. It only checks if there is non-False value in the field. **Fix:** Look at the 'Comparison Price' setting before the price modification/calculations take place and skip them if it's False. opw-3705079 Forward-Port-Of: odoo/odoo#154274 Forward-Port-Of: odoo/odoo#151734
Miscellaneous changes
Steps to reproduce: [l10n_sa_edi] [phonenumbers must be pip installed] - create a customer with all needed information - create an invoice with the customer - confirm and process Issue: There will be a warning Cause: `phonenumbers` format the phone numbers with spaces -> len(phone) > max size authorized by api Note: revert the https://github.com/odoo/odoo/pull/148124 and only apply the fix for l10n_sa_edi in order to avoid test break from https://github.com/odoo/odoo/blob/dceaf
Original PR description
Steps to reproduce: [l10n_sa_edi] [phonenumbers must be pip installed] - create a customer with all needed information - create an invoice with the customer - confirm and process Issue: There will be a warning Cause: `phonenumbers` format the phone numbers with spaces -> len(phone) > max size authorized by api Note: revert the https://github.com/odoo/odoo/pull/148124 and only apply the fix for l10n_sa_edi in order to avoid test break from https://github.com/odoo/odoo/blob/dceaf735fd2e46342dcd144c1969853a55d7b661/addons/l10n_account_edi_ubl_cii_tests/tests/test_xml_ubl_de.py#L104 opw-3666195 Forward-Port-Of: odoo/odoo#153083
Description of the issue/feature this PR addresses: Creating a challenge with a goal definition set to "sum" mode failed to start - Open Settings/Gamification Tools/Challenges - Create a new challenge - Keep "Assign Challenge to" with default values - Need a domain that return some user - Create and Edit a goal - Computation Mode: "Automatic: sum on a field" - Save & Close - In reward Tab set "For Every Succeeding User" - Save - Start Challenge Current behavior be
Original PR description
Description of the issue/feature this PR addresses:
Creating a challenge with a goal definition set to "sum" mode failed to start
- Open Settings/Gamification Tools/Challenges
- Create a new challenge
- Keep "Assign Challenge to" with default values
- Need a domain that return some user
- Create and Edit a goal
- Computation Mode: "Automatic: sum on a field"
- Save & Close
- In reward Tab set "For Every Succeeding User"
- Save
- Start Challenge
Current behavior before PR:
- Traceback due to wrong aggregate value
- Challenge is not started
Desired behavior after PR is merged:
- Challenge is started
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#1545471. set a country like belgium 2. set a VAT number like BE123456789 => peppol_endpoint is not computed This is because some dependencies are missing on the field (current is: "country_code"). Step 1: Add the missing dependencies to the field (and improve the tests to make sure it works). Step 2: Try to make the code smarter! If the country_code is BE but the VAT number starts with FR, consider it's FR, not BE. If the codice_fiscale is set, it's IT whatever the country_code. If the VAT number
Original PR description
1. set a country like belgium 2. set a VAT number like BE123456789 => peppol_endpoint is not computed This is because some dependencies are missing on the field (current is: "country_code"). Step 1: Add the missing dependencies to the field (and improve the tests to make sure it works). Step 2: Try to make the code smarter! If the country_code is BE but the VAT number starts with FR, consider it's FR, not BE. If the codice_fiscale is set, it's IT whatever the country_code. If the VAT number has no ISO country code, use the country_code in that case. task-3690913 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#154375 Forward-Port-Of: odoo/odoo#150231
**Steps to reproduce:** 1- Install Field Service module 2- Create new task and click on products smart button 3- Hover over a product and click on the dropdown menu 4- Click on edit in the dropdown menu 5- Get back to the products page and check the quantity for the product you edited **Current behavior before PR:** When the user clicks on edit in the dropdown menu of any product the quantity gets increased by 1. This is happening because of the global click event so when the user
Original PR description
**Steps to reproduce:** 1- Install Field Service module 2- Create new task and click on products smart button 3- Hover over a product and click on the dropdown menu 4- Click on edit in the dropdown menu 5- Get back to the products page and check the quantity for the product you edited **Current behavior before PR:** When the user clicks on edit in the dropdown menu of any product the quantity gets increased by 1. This is happening because of the global click event so when the user clicks anywhere inside the kanban box the quantity gets updated. This is also happening in the catalog feature in the sale order. **Desired behavior after PR is merged:** This behavior has been adjusted by checking the target where the user click if it is inside the dropdown menu it will not update the product's quantity. opw-3689864 Check https://github.com/odoo/enterprise/pull/54645 Forward-Port-Of: odoo/odoo#153293
Before this commit, highlighting several days from the calendar view in Time Off would still take the first day selected as the default date_to. The expected behaviour is that it should be the last day highlighted instead. Forward-Port-Of: odoo/odoo#154388
Original PR description
Before this commit, highlighting several days from the calendar view in Time Off would still take the first day selected as the default date_to. The expected behaviour is that it should be the last day highlighted instead. Forward-Port-Of: odoo/odoo#154388
To reproduce the issue: - set a leave type and an accrual plan based on hours - create a new accrual allocation on those leave type and accrual - change the date_from so that some hours are accrued - set a custom amount - save or validate - the value should fall back on the initial amount This fix should allow to keep the custom amount set by the user. task-3615695 Forward-Port-Of: odoo/odoo#144306
Original PR description
To reproduce the issue: - set a leave type and an accrual plan based on hours - create a new accrual allocation on those leave type and accrual - change the date_from so that some hours are accrued - set a custom amount - save or validate - the value should fall back on the initial amount This fix should allow to keep the custom amount set by the user. task-3615695 Forward-Port-Of: odoo/odoo#144306
Before this commit, if the search result would have "load more", the extra messages would immediately be fetched, defeating the purpose to have load more in the first place, and making unnecessary requests. Forward-Port-Of: odoo/odoo#154406
Original PR description
Before this commit, if the search result would have "load more", the extra messages would immediately be fetched, defeating the purpose to have load more in the first place, and making unnecessary requests. Forward-Port-Of: odoo/odoo#154406
[FIX] crm: allow lead creation with partner without email Issue: When trying to create a lead for a partner that has no email. It raises an error that the email is null. This happens because the code expects 'emails' to contain email_from, even though it could just be email_cc in there. Steps to reproduce: 1- Install CRM app. 2- Enable leads in CRM settings 3- In sales menue choose customers 4- Create a new customer without providing an email 5- Choose Leads 6- Create a new lead usin
Original PR description
[FIX] crm: allow lead creation with partner without email Issue: When trying to create a lead for a partner that has no email. It raises an error that the email is null. This happens because the code expects 'emails' to contain email_from, even though it could just be email_cc in there. Steps to reproduce: 1- Install CRM app. 2- Enable leads in CRM settings 3- In sales menue choose customers 4- Create a new customer without providing an email 5- Choose Leads 6- Create a new lead using the newely created customer 7- You get "AttributeError: 'bool' object has no attribute 'lower'" in line: https://github.com/odoo/odoo/blob/8e17a4d76bbdd547536e62ee12a2c514a16d1700/addons/crm/models/crm_lead.py#L1873 Solution: The main issue is the code relies on the email to provide a name for the lead, so we need to check if there's an email provided beforehand opw-3681485 Forward-Port-Of: odoo/odoo#154083 Forward-Port-Of: odoo/odoo#150394
This commit addresses an issue introduced after the Analytic distributions changes in v17 where printing expense reports with cross-analytic distribution raises a traceback. Given that analytic distributions offer limited value on printed expense reports and considering that no other printed reports in Odoo currently display the analytic distribution, they have been removed. task-3722135 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward
Original PR description
This commit addresses an issue introduced after the Analytic distributions changes in v17 where printing expense reports with cross-analytic distribution raises a traceback. Given that analytic distributions offer limited value on printed expense reports and considering that no other printed reports in Odoo currently display the analytic distribution, they have been removed. task-3722135 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#153569
Commit [1] added a rule whose intention was to unify the way our editor labels look: capitalized. However, this is not working as intended for translations as some languages have different rules for capitalization. In the future, we will rely solely on the labels being written with the intended capitalization in the first place (which is currently not the case for dozens of English labels). As a fix, we keep the auto CSS rule for English languages only. Hopefully, the amount of translations m
Original PR description
Commit [1] added a rule whose intention was to unify the way our editor labels look: capitalized. However, this is not working as intended for translations as some languages have different rules for capitalization. In the future, we will rely solely on the labels being written with the intended capitalization in the first place (which is currently not the case for dozens of English labels). As a fix, we keep the auto CSS rule for English languages only. Hopefully, the amount of translations made by translators being better than their auto-capitalized versions is greater than non-capitalized English labels translated by mistake without the auto-capitalization. Note: this is the way python fields work too, they are not displayed auto-capitalized in the webclient, although we want them to be. [1]: https://github.com/odoo/odoo/commit/5db73c12d3ed14239dc81f60eec6c21d0f65af26 Forward-Port-Of: odoo/odoo#153248
If product has no_variant attributes with 2 values and the first value was deleted, it is still returning it in the product configurator. Filter the template's value ids to return only active variants opw-3570604 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#154278 Forward-Port-Of: odoo/odoo#153398
Original PR description
If product has no_variant attributes with 2 values and the first value was deleted, it is still returning it in the product configurator. Filter the template's value ids to return only active variants opw-3570604 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#154278 Forward-Port-Of: odoo/odoo#153398
Before this commit =============== Global discount with Tax effect been developed in such a way that it calculates discount based on tax groups and brings correct tax liabilities to comply. Where in it drops lines with minus in invoice form, While doing E Invoice in India - Government portal not entertain product with minus lines to reduce liability. After this commit =============== Refactored invoice form for E-Invoice in India post-global discount implementation. Adjusted discount sign
Original PR description
Before this commit =============== Global discount with Tax effect been developed in such a way that it calculates discount based on tax groups and brings correct tax liabilities to comply. Where in it drops lines with minus in invoice form, While doing E Invoice in India - Government portal not entertain product with minus lines to reduce liability. After this commit =============== Refactored invoice form for E-Invoice in India post-global discount implementation. Adjusted discount sign to address the government portal's restriction on negative lines. The fix ensures the portal now accepts discount lines, aligning with regulatory requirements. task: 3454674 Forward-Port-Of: odoo/odoo#146163
**Current behavior:** Trying to create an opportunity as a portal user and leaving any of the fields empty will cause an unnecessary exception dialog to flash on screen. **Expected behavior:** Submitting the form with empty required fields will just prompt the user to add values to all fields. **Steps to reproduce:** 1. In the Contacts application, go to a portal user and in the Partner Assignment notebook tab, give them a partner level 2. In the CRM app, create a new lead a
Original PR description
**Current behavior:** Trying to create an opportunity as a portal user and leaving any of the fields empty will cause an unnecessary exception dialog to flash on screen. **Expected behavior:**…
**Current behavior:**
Trying to create an opportunity as a portal user and leaving
any of the fields empty will cause an unnecessary exception
dialog to flash on screen.
**Expected behavior:**
Submitting the form with empty required fields will just prompt
the user to add values to all fields.
**Steps to reproduce:**
1. In the Contacts application, go to a portal user and in the
Partner Assignment notebook tab, give them a partner level
2. In the CRM app, create a new lead and assign the portal user
who was granted the partner level as the customer
3. Login as the portal user, and convert the lead in My Leads
to an opportunity
4. Go to the my/opportunities website menu
3. Select 'Create Opportunity' in the top right and leave
any/all of the fields empty then select 'Confirm'
**Cause of the issue:**
The catch block in the _buttonExec() function is rejecting its
Promise when it catches anything aside from an RPCError.
Caused by https://github.com/odoo/odoo/pull/137702
**Fix:**
Only reject the Promise when the catch block encounters an
actual Error, preventing dialog window popups when non-critical
exceptions (non-Errors) are thrown.
opw-3703238
Forward-Port-Of: odoo/odoo#151982How to reproduce 1. Log in as Mitchel and go to a Subscription dashboard 2. Copy the URL and paste in incognito 3. Log in as Marc (which does have access to the subscription dashboard) --> Traceback Task: 3581647 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#153143 Forward-Port-Of: o
Original PR description
How to reproduce 1. Log in as Mitchel and go to a Subscription dashboard 2. Copy the URL and paste in incognito 3. Log in as Marc (which does have access to the subscription dashboard) --> Traceback Task: 3581647 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#153143 Forward-Port-Of: odoo/odoo#143614
Since commit [1], there is no outline when focusing a hoverable dropdown by using the Tab key. This happens because of a CSS rule that was added so no outline would appear when hovering the dropdown menus with the mouse. However, it should still be displayed when using the keyboard, for accessibility reasons. This commit fixes that by always allowing the focus on the hoverable dropdowns, except when they are hovered. If a focus was present on an element in the document when hovering, its focu
Original PR description
Since commit [1], there is no outline when focusing a hoverable dropdown by using the Tab key. This happens because of a CSS rule that was added so no outline would appear when hovering the dropdown…
Since commit [1], there is no outline when focusing a hoverable dropdown by using the Tab key. This happens because of a CSS rule that was added so no outline would appear when hovering the dropdown menus with the mouse. However, it should still be displayed when using the keyboard, for accessibility reasons. This commit fixes that by always allowing the focus on the hoverable dropdowns, except when they are hovered. If a focus was present on an element in the document when hovering, its focus is kept (to have the same behavior as in previous versions). Steps to reproduce: - Add a submenu and a mega menu with the menu editor. - In edit mode, set the dropdowns as hoverable (set the "Sub Menus" option to "On Hover") and save. - Use the Tab key to navigate through the menus. => The simple menus have an outline but this is not the case for the dropdowns. [1]: https://github.com/odoo/odoo/commit/5846a05fe7bf587d3bfb3ace3e863cb4abd52132 task-3709755 Forward-Port-Of: odoo/odoo#154444 Forward-Port-Of: odoo/odoo#151825
Description of the issue/feature this PR addresses: When clicking on "Set as Supplier", the route will always be overwritten, even if the current one selected fit the requirements (action = 'buy'). Desired behavior after PR is merged: action_set_supplier doesn't have to overwrite the orderpoint.route_id if it already has one that fit the requirements (action = 'buy'). https://drive.google.com/file/d/11zFCUWcQDlpTwjs7fdaGsUpSYnvcT2Id/view?usp=sharing --- OPW-3746624 ---
Original PR description
Description of the issue/feature this PR addresses: When clicking on "Set as Supplier", the route will always be overwritten, even if the current one selected fit the requirements (action = 'buy'). Desired behavior after PR is merged: action_set_supplier doesn't have to overwrite the orderpoint.route_id if it already has one that fit the requirements (action = 'buy'). https://drive.google.com/file/d/11zFCUWcQDlpTwjs7fdaGsUpSYnvcT2Id/view?usp=sharing --- OPW-3746624 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#154184
Steps to reproduce: 1. Type a backtick 2. Type "A" 3. Type a backtick 4. Hit Left Arrow key 5. Hit Right Arrow key 2x This led to a traceback ("Cannot read properties of null (reading 'isContentEditable') at OdooEditor._onKeyDown") because using `nextLeaf` without specifying the editable bounds returned a node that was not within these bounds, and a subsequent call to `closestElement` on this node returned `null` as a result. task-3749506 --- I confirm I have signed the CLA and
Original PR description
Steps to reproduce:
1. Type a backtick
2. Type "A"
3. Type a backtick
4. Hit Left Arrow key
5. Hit Right Arrow key 2x
This led to a traceback ("Cannot read properties of null (reading 'isContentEditable') at OdooEditor._onKeyDown") because using `nextLeaf` without specifying the editable bounds returned a node that was not within these bounds, and a subsequent call to `closestElement` on this node returned `null` as a result.
task-3749506
---
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#154365
Forward-Port-Of: odoo/odoo#154217Since 4da8c6ebca024, the lot creation when filling a stock move line is done via the stock quant "pick from" field. We thus don't have the 'active_picking_id' key that was set on lot_id field to check if the user can create or not new stock lot for a particular picking. This commit add this context key back on the stock move line one2many for it to be available at the stock quant creation. Task: 3670447 Description of the issue/feature this PR addresses: Current behavior before PR:
Original PR description
Since 4da8c6ebca024, the lot creation when filling a stock move line is done via the stock quant "pick from" field. We thus don't have the 'active_picking_id' key that was set on lot_id field to check if the user can create or not new stock lot for a particular picking. This commit add this context key back on the stock move line one2many for it to be available at the stock quant creation. Task: 3670447 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#152915 Forward-Port-Of: odoo/odoo#149253
Issue: ===== Undo of resize operation on table do 2 undos in a row. Steps to reproduce the issue: ============================= - Go to website editor - Add a text block - write `/table` to insert a table - Resize the table - Press `ctr+z` to undo - The table is removed Origin of the issue: ==================== The resize operation wasn't saved a step and is considered as draft then it will be discarded and then the undo applied on the last saved step that's why it appears as 2
Original PR description
Issue: ===== Undo of resize operation on table do 2 undos in a row. Steps to reproduce the issue: ============================= - Go to website editor - Add a text block - write `/table` to insert a table - Resize the table - Press `ctr+z` to undo - The table is removed Origin of the issue: ==================== The resize operation wasn't saved a step and is considered as draft then it will be discarded and then the undo applied on the last saved step that's why it appears as 2 undo in a row. Solution: ========= Call `historyStep` when we stop resizing. task-3743697 Forward-Port-Of: odoo/odoo#153809
**Current behaviour before commit:** In v17.0 and above trying to open emoji-picker throws traceback. This happens because not able to find input element inside `onPositioned` method. **Desired behaviour after commit:** Now there is no traceback when opening emoji-picker. task-3729610 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#153186
Original PR description
**Current behaviour before commit:** In v17.0 and above trying to open emoji-picker throws traceback. This happens because not able to find input element inside `onPositioned` method. **Desired behaviour after commit:** Now there is no traceback when opening emoji-picker. task-3729610 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#153186
We no longer round the PriceAmount since 0fd7284158483bce3308e7c5ba42e3c6ee5abd10. But then, we may encounter a representation error if the PriceAmount is not exactly representable as a binary fraction (see: https://docs.python.org/3/tutorial/floatingpoint.html#representation-error). For instance: having a line with `price_subtotal` = 306.45 and `quantity` = 3, we will compute the PriceAmount as 306.45 / 3 which yields 102.14999999999999. To avoid such a case we round "reasonably" the
Original PR description
We no longer round the PriceAmount since 0fd7284158483bce3308e7c5ba42e3c6ee5abd10. But then, we may encounter a representation error if the PriceAmount is not exactly representable as a binary fraction (see: https://docs.python.org/3/tutorial/floatingpoint.html#representation-error). For instance: having a line with `price_subtotal` = 306.45 and `quantity` = 3, we will compute the PriceAmount as 306.45 / 3 which yields 102.14999999999999. To avoid such a case we round "reasonably" the PriceAmount. opw-3729369 Forward-Port-Of: odoo/odoo#154286 Forward-Port-Of: odoo/odoo#153999
[[FIX] sale_loyalty: delivery shant count toward qty bought](https://github.com/odoo/odoo/pull/149279/commits/8aa4e598efdf6c3794edf5cc2db0e9484d528ef2) This commit excludes delivery programs from being counted towards rewards for loyalty programs. Prior to this commit, there was an issue steaming from the Standard Delivery line being added to the Sales Order during the transition from the "Review Order" screen to the "Confirm Order" screen. This flow illustrated that loyalty programs co
Original PR description
[[FIX] sale_loyalty: delivery shant count toward qty bought](https://github.com/odoo/odoo/pull/149279/commits/8aa4e598efdf6c3794edf5cc2db0e9484d528ef2) This commit excludes delivery programs from…
[[FIX] sale_loyalty: delivery shant count toward qty bought](https://github.com/odoo/odoo/pull/149279/commits/8aa4e598efdf6c3794edf5cc2db0e9484d528ef2)
This commit excludes delivery programs from being counted
towards rewards for loyalty programs.
Prior to this commit, there was an issue steaming from the Standard Delivery
line being added to the Sales Order during the transition from the
"Review Order" screen to the "Confirm Order" screen. This flow illustrated
that loyalty programs count delivery line toward rewards for loyalty
programs.
[Reproduce]
- Install Odoo with modules: sale_loyalty,website_sale,delivery
- Create a loyalty program:
- Enable "Discounts, Loyalty & Gift Card."
- Create a program with type "Promotions."
- Set program conditions:
- Minimum Quantity: 2
- Minimum Purchase: 0
- Grant 1 point per order
- Among Product Domain "Match all records."
- Set program Rewards:
- Type: Discount
- In exchange for 1 promo point.
- Navigate to the front-end shop:
- Select 1 item.
- Add it to the cart.
- Proceed to Checkout.
- Ensure there is one item (you need 2 for the discount).
- "Proceed to Checkout" (delivery is added to the Sales Order at this point).
- Click "Review Order" to go back.
- BUG: The discount is shown in the "Review Order" screen.
opw-3675387
Forward-Port-Of: odoo/odoo#149279Correct/improve the view of the point of sale configuration by hiding certain unnecessary parts for certain user groups. Forward-Port-Of: odoo/odoo#154359 Forward-Port-Of: odoo/odoo#151305
Original PR description
Correct/improve the view of the point of sale configuration by hiding certain unnecessary parts for certain user groups. Forward-Port-Of: odoo/odoo#154359 Forward-Port-Of: odoo/odoo#151305
This commit fixes a bug where the Comments would only load one of the different Components present inside of the view, meaning that only one thread would show their messages. This leads to possible losses of comments and the main chatter being unable to show messages. The issue was that both the comments and the form view shared a singular chatter object in the environment. This object enables the Thread component to know if it needs to either load more data or messages via two booleans: `fet
Original PR description
This commit fixes a bug where the Comments would only load one of the different Components present inside of the view, meaning that only one thread would show their messages. This leads to possible…
This commit fixes a bug where the Comments would only load one of the different Components present inside of the view, meaning that only one thread would show their messages. This leads to possible losses of comments and the main chatter being unable to show messages. The issue was that both the comments and the form view shared a singular chatter object in the environment. This object enables the Thread component to know if it needs to either load more data or messages via two booleans: `fetchData` and `fetchMessages` that would be set to false when the Thread finished fetching either messages or data. To fix this, the chatter in the environment below the Comment level was set to false, as the condition to fetch data and messages is `!this.env.chatter || this.env.chatter?.fetchData`. This way when OWL mounts each Comment Component it will fetch the necessary data without impacting each other and the Form view's main chatter. task-3714345 Forward-Port-Of: odoo/enterprise#55517
**Steps to reproduce:** 1- Install Field Service module 2- Create new task and click on products smart button 3- Hover over a product and click on the dropdown menu 4- Click on edit in the dropdown menu 5- Get back to the products page and check the quantity for the product you edited **Current behavior before PR:** When the user clicks on edit in the dropdown menu of any product the quantity gets increased by 1. This is happening because of the global click event so when the user
Original PR description
**Steps to reproduce:** 1- Install Field Service module 2- Create new task and click on products smart button 3- Hover over a product and click on the dropdown menu 4- Click on edit in the dropdown menu 5- Get back to the products page and check the quantity for the product you edited **Current behavior before PR:** When the user clicks on edit in the dropdown menu of any product the quantity gets increased by 1. This is happening because of the global click event so when the user clicks anywhere inside the kanban box the quantity gets updated. **Desired behavior after PR is merged:** This behavior has been adjusted by checking the target where the user click if it is inside the dropdown menu it will not update the product's quantity. opw-3689864 Forward-Port-Of: odoo/enterprise#56161 Forward-Port-Of: odoo/enterprise#54645
## Description When a user opens the Shop Floor app, each MrpDisplayRecord will compute the barcode target record based on the admin ID. This can lead to slow computations and make the browser crash when there are many records. ## Analysis The barcode target record ID will always be the same as long as the admin ID doesn't change. ### Before this commit All MrpDisplayRecord are recomputing the barcode target record. ### After this commit We cache the admin ID and the barcode target
Original PR description
## Description When a user opens the Shop Floor app, each MrpDisplayRecord will compute the barcode target record based on the admin ID. This can lead to slow computations and make the browser crash when there are many records. ## Analysis The barcode target record ID will always be the same as long as the admin ID doesn't change. ### Before this commit All MrpDisplayRecord are recomputing the barcode target record. ### After this commit We cache the admin ID and the barcode target record ID to avoid recomputing it if unecessary. ## Benchmarks Computing the barcode target records when opening the Shop Floor app: | Relevant MO | Before | After | |-------------|---------|--------| | 80 | 0.9 s | 0.6 s | | 400 | 23.2 s | 1.8 s | | 879 | 140 s / Browser crash | 2.8 s | ## References opw-3721896 opw-3741051 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/enterprise#56167
### Version: - 17.0 ### Steps to reproduce: - Add a document to the subscription product and make it visible during the confirmed order. - Create a new subscription quotation for that product. - Confirm the subscription quotation. - In confirmed orders, the product document will not be visible. ### Issue: The product documents are not visible on the portal template. ### Improvement: According to its visibility value, the product document will be shown on the portal template
Original PR description
### Version: - 17.0 ### Steps to reproduce: - Add a document to the subscription product and make it visible during the confirmed order. - Create a new subscription quotation for that product. - Confirm the subscription quotation. - In confirmed orders, the product document will not be visible. ### Issue: The product documents are not visible on the portal template. ### Improvement: According to its visibility value, the product document will be shown on the portal template. task-3667716 --- I confirm I have signed the CLA and read the PR guidelines at [www.odoo.com/submit-pr](http://www.odoo.com/submit-pr) Forward-Port-Of: odoo/enterprise#54126
… period In case the period is locked, don't try to cancel the document to avoid the UserError saying you are in a locked period. Instead, don't block the user. That way, he can manage this case manually outside of the locked period. task_id: 3750701 Forward-Port-Of: odoo/enterprise#56723
Original PR description
… period In case the period is locked, don't try to cancel the document to avoid the UserError saying you are in a locked period. Instead, don't block the user. That way, he can manage this case manually outside of the locked period. task_id: 3750701 Forward-Port-Of: odoo/enterprise#56723
This pr contains Three commits: - The first commit will add a little banner on the cart of bank journal when they don't have an account number linked (only for l10n_dk). - The other commit will add a user error if the user tries to export the saf-t report without having an account number set on the company. Also adding the infos in the warning of the general ledger saying the missing field for the saf-t. - Also adding the translation for the two commits above task: 3709843 Forwar
Original PR description
This pr contains Three commits: - The first commit will add a little banner on the cart of bank journal when they don't have an account number linked (only for l10n_dk). - The other commit will add a user error if the user tries to export the saf-t report without having an account number set on the company. Also adding the infos in the warning of the general ledger saying the missing field for the saf-t. - Also adding the translation for the two commits above task: 3709843 Forward-Port-Of: odoo/enterprise#55636
We revert the following commit because payment_utils.generate_access_token is working with request.env which is not available in cron. The change should be done in master after modifying generate_access_token to accept an env parameter allowing to be called in cron and regular flow. https://github.com/odoo/enterprise/commit/d0618c4f042806b3336de759ebd0a1fe96f193c1#diff-df4c76c88a3be1689c375cb4c80009af33c77ccb60b5f604988565309c1f4773 taskid: 3640650 Forward-Port-Of: odoo/enterprise#56474
Original PR description
We revert the following commit because payment_utils.generate_access_token is working with request.env which is not available in cron. The change should be done in master after modifying generate_access_token to accept an env parameter allowing to be called in cron and regular flow. https://github.com/odoo/enterprise/commit/d0618c4f042806b3336de759ebd0a1fe96f193c1#diff-df4c76c88a3be1689c375cb4c80009af33c77ccb60b5f604988565309c1f4773 taskid: 3640650 Forward-Port-Of: odoo/enterprise#56474
…roduct and no plan We prevent creating subscription sale orders with recurring products and no recurring plans However it's better to be defensive to avoid crashes. This commit adds an additional condition before accessing order_id.plan_id closes odoo/enterprise#56160 Task: 3725476 Forward-Port-Of: odoo/enterprise#56426
Original PR description
…roduct and no plan We prevent creating subscription sale orders with recurring products and no recurring plans However it's better to be defensive to avoid crashes. This commit adds an additional condition before accessing order_id.plan_id closes odoo/enterprise#56160 Task: 3725476 Forward-Port-Of: odoo/enterprise#56426
Task: 3581647 Forward-Port-Of: odoo/enterprise#55828 Forward-Port-Of: odoo/enterprise#54628
Original PR description
Task: 3581647 Forward-Port-Of: odoo/enterprise#55828 Forward-Port-Of: odoo/enterprise#54628
* = hr_attendance_gantt, planning, mrp_workorder, project_enterprise, web_gantt backport of this PR : https://github.com/odoo/enterprise/commit/46a85677e6d5dad434271280a5afd97d0b2034c8 In this commit, we enhanced the Gantt view progress bar by modifying the display format. Previously, when the hours were not rounded, it would show as '4h' instead of '4h30'. We have now updated it to accurately represent the exact duration. Additionally, we changed the format from '4 h / 38 h' to '4h / 38h'
Original PR description
* = hr_attendance_gantt, planning, mrp_workorder, project_enterprise, web_gantt backport of this PR : https://github.com/odoo/enterprise/commit/46a85677e6d5dad434271280a5afd97d0b2034c8 In this commit, we enhanced the Gantt view progress bar by modifying the display format. Previously, when the hours were not rounded, it would show as '4h' instead of '4h30'. We have now updated it to accurately represent the exact duration. Additionally, we changed the format from '4 h / 38 h' to '4h / 38h' for improved clarity. task: 3695852 Forward-Port-Of: odoo/enterprise#56141