Thursday, June 6, 2024
16 changes · saas-17.2
Resolved issues and error corrections
This fix keeps automated web tours from stopping unexpectedly when an optional page element is not found. It restores more forgiving behavior, helping internal testing and guided flows run more reliably.
Original PR description
This commit [1] introduces `queryOne` to find element nodes in DOM. But, if `queryOne` fails to find the element it throws error which breaks the tour which wasn't the case before this change was introduced. There might be some scenarios where it might not affect if the node is found or not, but because of `queryOne` the tour will fail. So, to fix this we use `queryFirst` which doesn't throw error if it fails to find the node. 1: c0f3bdb928db5a119817710e260edfda9a2f40ac --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Miscellaneous changes
Current behavior: In certain currencies, you have coin of values like 0.025 that requires more than 2 decimal places. But in the coin/bills view they were not correctly showed. Values like 0.025 would appear as 0.02 Steps to reproduce: - Create a new company using a currency that needs 3 decimal places (Bahraini Dinar) - Try to create coin/bills with a value like 0.025 - After saving the last part cannot be seen anymore opw-3950930 --- I confirm I have signed the CLA and read the PR
Original PR description
Current behavior: In certain currencies, you have coin of values like 0.025 that requires more than 2 decimal places. But in the coin/bills view they were not correctly showed. Values like 0.025 would appear as 0.02 Steps to reproduce: - Create a new company using a currency that needs 3 decimal places (Bahraini Dinar) - Try to create coin/bills with a value like 0.025 - After saving the last part cannot be seen anymore opw-3950930 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#168011 Forward-Port-Of: odoo/odoo#167497
starts. If the user language cannot be determined, it uses the one set in the html `lang` attribute. If this language is not installed, the webclient translation route does not return lang parameters such as date fortmat. However, the JS code expects those parameters to be available and missing parameters lead to multiple errors (e.g. when calling `parseDatetime` which requires the date format). This PR ignore the lang passed to this route if it is not installed in order for it to fallback
Original PR description
starts. If the user language cannot be determined, it uses the one set in the html `lang` attribute. If this language is not installed, the webclient translation route does not return lang parameters such as date fortmat. However, the JS code expects those parameters to be available and missing parameters lead to multiple errors (e.g. when calling `parseDatetime` which requires the date format). This PR ignore the lang passed to this route if it is not installed in order for it to fallback to the context lang. Steps to reproduce the issue: - Create an html page and set the lang attribute value to the IETF Xhosa tag (xh-ZA) - A request to `/web/webclient/translation` is made and an error is displayed in the console. opw-3953457 Forward-Port-Of: odoo/odoo#167491
Steps to reproduce: - Open POS - Go to configuration > Payment methods - Create new > Journal > Bank - Integration select viva wallet - Use any fake credential - Use this payment method in any active POS - Open POS and pay using viva wallet Issue: Throws traceback while payment request. Cause: Used to fetch POS session id from undefined session. FIX: Fetched the session id of the pos model using the this.pos.session (correct position of data). task- 3883584 Forward-Port-O
Original PR description
Steps to reproduce: - Open POS - Go to configuration > Payment methods - Create new > Journal > Bank - Integration select viva wallet - Use any fake credential - Use this payment method in any active POS - Open POS and pay using viva wallet Issue: Throws traceback while payment request. Cause: Used to fetch POS session id from undefined session. FIX: Fetched the session id of the pos model using the this.pos.session (correct position of data). task- 3883584 Forward-Port-Of: odoo/odoo#163291
This commit fixes the issue where a traceback is shown when an order will be invoiced after paying with an online payment. Steps to reproduce: - Setup online payment and link to the pos.config. - Open a session. - Create an order that will be invoiced and pay with the online payment method. - Traceback during the download of the invoice. Forward-Port-Of: odoo/odoo#164315
Original PR description
This commit fixes the issue where a traceback is shown when an order will be invoiced after paying with an online payment. Steps to reproduce: - Setup online payment and link to the pos.config. - Open a session. - Create an order that will be invoiced and pay with the online payment method. - Traceback during the download of the invoice. Forward-Port-Of: odoo/odoo#164315
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#164514
Original PR description
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#164514
Prior to this commit, the Point of Sale would load all product pricelist items upon session opening. This posed a problem in databases with a large number of pricelist items. This commit addresses the issue by only loading pricelist items corresponding to the loaded products. Additionally, for any products that are loaded into the PoS at a later time, their related pricelist items will be loaded as well. opw-3893700 --- I confirm I have signed the CLA and read the PR guidelines at www.odo
Original PR description
Prior to this commit, the Point of Sale would load all product pricelist items upon session opening. This posed a problem in databases with a large number of pricelist items. This commit addresses the issue by only loading pricelist items corresponding to the loaded products. Additionally, for any products that are loaded into the PoS at a later time, their related pricelist items will be loaded as well. opw-3893700 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#164965
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#164643
Original PR description
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#164643
For version 17.0 only Problem: In restaurant, in the product page, we don't have anything to remind which table is selected Steps to reproduce: - Install "Point of Sale" app and "pos_restaurant" module - Open a restaurant session - Click on a table, the product page is loaded and we don't see the table number in the navbar Note: Solution copied from version 17.1 opw-3929069 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Po
Original PR description
For version 17.0 only Problem: In restaurant, in the product page, we don't have anything to remind which table is selected Steps to reproduce: - Install "Point of Sale" app and "pos_restaurant" module - Open a restaurant session - Click on a table, the product page is loaded and we don't see the table number in the navbar Note: Solution copied from version 17.1 opw-3929069 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#166595 Forward-Port-Of: odoo/odoo#165578
Steps to reproduce: - In Website edit mode. - Drag and drop a "Form" snippet onto the page. - Add a multi checkboxes field to the form. - Edit the text of a checkboxes input. - click on the toggle button next to this input. - Bug: the button remains disabled. (next click is ok) This bug occurs because when we search for the checkbox that should be selected in the "values" variable (in the "_notifyCurrentState()" function of the "we-list" widget), we search for it based on its ID in
Original PR description
Steps to reproduce: - In Website edit mode. - Drag and drop a "Form" snippet onto the page. - Add a multi checkboxes field to the form. - Edit the text of a checkboxes input. - click on the toggle button next to this input. - Bug: the button remains disabled. (next click is ok) This bug occurs because when we search for the checkbox that should be selected in the "values" variable (in the "_notifyCurrentState()" function of the "we-list" widget), we search for it based on its ID in the DOM. However, on the first click on the toggle, the ID has not yet been defined in the DOM according to the "values" variable. task-3901472 Forward-Port-Of: odoo/odoo#167842 Forward-Port-Of: odoo/odoo#165264
## Issue: When creating an activity linked to a record like a lead, if we edit this activity, for example from To-Do to Meeting, we lose the context from the Lead and have a bad context based on the activity instead, resulting in an improper link in the calendar. ## Steps to reproduce: 1. Install CRM (this will also install the rest of the required modules). 2. Create or use an existing Lead. 3. Create a new To-Do activity. 4. Click on edit for this activity and change it to Meeting. 5
Original PR description
## Issue: When creating an activity linked to a record like a lead, if we edit this activity, for example from To-Do to Meeting, we lose the context from the Lead and have a bad context based on the…
## Issue: When creating an activity linked to a record like a lead, if we edit this activity, for example from To-Do to Meeting, we lose the context from the Lead and have a bad context based on the activity instead, resulting in an improper link in the calendar. ## Steps to reproduce: 1. Install CRM (this will also install the rest of the required modules). 2. Create or use an existing Lead. 3. Create a new To-Do activity. 4. Click on edit for this activity and change it to Meeting. 5. Now click on Open Calendar and place the activity. 6. Click on the calendar event we have just created, and we will see a link to "Activity". Click on it. ## Solution: To ensure the proper link to the Lead/Opportunity, we need to pass the right context when editing the activity. This issue arose from changes made in `activity_service.js` and the addition of the model `mail.activity.schedule`, which separates the edit and create functions, unlike the behavior we had in 16.0. opw-3942711 Before  After  Forward-Port-Of: odoo/odoo#167996
Problem: There is taxes added to the gift card discount Steps to reproduce: - Install "Point of sale" app - Go to Settings and activate gift cards - Create a gift card (for ex 100€) - Copy the code - Open PoS > Add a product (more than the price of the gift card to understand better) > add the gift card - The card value is not 100€ but more because it includes taxes Solution: Set an empty Array as tax will allow this.tax_ids to be evaluated as true in a if statement and will define
Original PR description
Problem: There is taxes added to the gift card discount Steps to reproduce: - Install "Point of sale" app - Go to Settings and activate gift cards - Create a gift card (for ex 100€) - Copy the code - Open PoS > Add a product (more than the price of the gift card to understand better) > add the gift card - The card value is not 100€ but more because it includes taxes Solution: Set an empty Array as tax will allow this.tax_ids to be evaluated as true in a if statement and will define an empty Array for the tax of the gift card https://github.com/odoo/odoo/blob/7df8fc435c6ea199292f47954202d4f3c93b2629/addons/point_of_sale/static/src/app/store/models.js#L745-L749 opw-3862427 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#163928
Before this commit, the attendees were not allowed to remove anyone from the event (including themselves) when editing the event in the form view. This was a problem that came after updating the views to OWL and also reverting the PR [#133504](https://github.com/odoo/odoo/pull/133504). After this commit, the event attendees can perform attendee removals normally because we check inside the compute if it the current attendee was indeed an attendee right before the change is completed. task-
Original PR description
Before this commit, the attendees were not allowed to remove anyone from the event (including themselves) when editing the event in the form view. This was a problem that came after updating the views to OWL and also reverting the PR [#133504](https://github.com/odoo/odoo/pull/133504). After this commit, the event attendees can perform attendee removals normally because we check inside the compute if it the current attendee was indeed an attendee right before the change is completed. task-3948322 Forward-Port-Of: odoo/odoo#166696
Current behavior: Sometimes payment made with adyen where blocked in the "Waiting for card" status when cancelling a payment. As the issue is not reproducible consistantly I made a diagram to show what I think is happening. It was probably happening because the last_adyen_status was emptied at a wrong moment. To fix this we make sure that a real new payment request is made before emptying it. Before this fix when doing a cancel request, it would empty the last_adyen_status  opw-3427860 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#168056 Forward-Port-Of: odoo/odoo#165792
Current Behaviour: - Currently, if the internet is slow and the user tries to open any action, which action target='new,' it takes time to open the action form in the browser, if the user clicks multiple times during this loading process, multiple instances of the same action will be displayed to the user. Steps to produce: - Open CRM and navigate to the activity view of CRM. - Select throttling as 'Slow 3G' in your browser network setting. - Now click multiple times on any scheduled act
Original PR description
Current Behaviour: - Currently, if the internet is slow and the user tries to open any action, which action target='new,' it takes time to open the action form in the browser, if the user clicks multiple times during this loading process, multiple instances of the same action will be displayed to the user. Steps to produce: - Open CRM and navigate to the activity view of CRM. - Select throttling as 'Slow 3G' in your browser network setting. - Now click multiple times on any scheduled activity to open an action. Expected Behaviour: - Only open the dialog for the last action requested when there are multiple actions requested with target='new'. Task-3750720 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#166488 Forward-Port-Of: odoo/odoo#159236
Issue: ====== list doesn't appear in quick edit of html_field Steps to reproduce the issue: ============================= - Go to any sale order - Send by email - Add a list inside the email - It doesn't appear Origin of the issue: ==================== Most of the templates have hardcoded `padding = 0px`, so when we convert a `p` element to a `ul` or `ol` element it will have have the same styling and we loose the default padding for the list elements. Solution: ========= We
Original PR description
Issue: ====== list doesn't appear in quick edit of html_field Steps to reproduce the issue: ============================= - Go to any sale order - Send by email - Add a list inside the email - It doesn't appear Origin of the issue: ==================== Most of the templates have hardcoded `padding = 0px`, so when we convert a `p` element to a `ul` or `ol` element it will have have the same styling and we loose the default padding for the list elements. Solution: ========= We set the padding as null to remove any forced padding used. opw-3900433 Forward-Port-Of: odoo/odoo#167916 Forward-Port-Of: odoo/odoo#165773