Tuesday, March 17, 2020
34 changes · master
Enhancements to existing features
The event and website event sample data has been refreshed to make demonstrations clearer and more representative. This helps teams showcase event features more easily, while tests were adjusted to avoid depending on specific preloaded records.
Original PR description
In order to have an easier, better time showcasing the functionalities of event, demo data had to be improved. TaskID: 2170834 PR: #xxxxx 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
This update adds automated checks for key live chat journeys, including starting chats, sending messages, ratings, closing sessions, and chat request handling. These safeguards help prevent regressions in website live chat and visitor tracking, improving service reliability during busy periods.
Original PR description
Adds Python tests and javascripts tours on livechat (website and visitor integration). Because breaking livechat every two days in rush period (or even not) is getting quite annoying. Those tests are checking : - The client side flow (open livechat, send messages, send rating and close the livechat session) - The channel and message author naming, visitor page view history - Chat request flow (complete chat request flow, open empty operator's chat request and cancel due to visitor's new chat session) Task ID : 2079087
The sales and rental order screens now hide the Cancel button until a new order has been saved for the first time. This reduces unnecessary actions on draft records and keeps the order interface cleaner for users.
Original PR description
purpose clean up the orders/invoice interface with keeping just the needed action buttons specs hide CANCEL button if the order/invoice is not saved yet for the first time To be done for: - Quotes & SO - Rental LINKS PR: #47579 TaskID :2080191
The stock lot form now includes an empty second group so customization tools can add fields more consistently. This makes it easier for businesses to tailor lot and serial number records without layout issues.
Original PR description
PURPOSE Add an empty group for consistent studio customization in the stock.production.lot formview SPECIFICATION LINKS PR: #47794 TaskID: 2043928
This update moves mobile control panel styling and tests into the enterprise web app, matching where the related behavior now lives. It does not add new features, but makes the codebase easier to maintain and reduces confusion between mobile-specific and general enterprise web components.
Original PR description
Since the control panel refactoring, see: https://github.com/odoo/enterprise/commit/7cccc22b6d4f523d302f7a0a57df52e532dc3e14#diff-7c1c7dc4c2cb3c7b698752f919649b3dR89 JS part has been moved from web_mobile to web_enterprise. This commit also moves scss and tests for more consistency.
Resolved issues and error corrections
This update prevents action menu operations from failing when a selection setting is missing. Users can run menu actions more reliably, avoiding unexpected crashes in normal workflows.
Original PR description
Before this commit, the context sent by an action performed by the action menu could hold an 'undefined' select_all key, which would cause the context evaluation to crash. Now, the select_all key is defaulted to 'false' and does not crash in actions that do not provide it.
Miscellaneous changes
Description of the issue/feature this PR addresses: This PR is to update the CLA users to make PR to Odoo under Jarsa Team 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#47610
Original PR description
Description of the issue/feature this PR addresses: This PR is to update the CLA users to make PR to Odoo under Jarsa Team 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#47610
Phone fields in the SMS module no longer make the phone link and SMS icon clickable in Studio editing mode. This prevents accidental call launches while users are editing forms, making Studio safer and less disruptive to use.
Original PR description
Task: https://www.odoo.com/web?#id=2118509&action=333&active_id=1251&model=project.task&view_type=form&menu_id=4720 Pad: https://pad.odoo.com/p/r.67eb547272d81fc9a181afc6be3791a5 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes Chinese localization invoice handling so the system no longer validates a fapiao number format when no fapiao number was entered. It prevents unnecessary validation errors and helps users save records when fapiao information is not applicable.
Original PR description
Don't check the fapiao number format when there is not fapiao number :) Related to #45743 and task 2180269 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Fine tuning of 1e411e3a6d - It moves the attachment in the message when we mark an activity as done. - It adds a test OPW-2196668 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#47273 Forward-Port-Of: odoo/odoo#45938
Original PR description
Fine tuning of 1e411e3a6d - It moves the attachment in the message when we mark an activity as done. - It adds a test OPW-2196668 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#47273 Forward-Port-Of: odoo/odoo#45938
menu_ids splitted in other pr === | | SQL Query | Code | pastebin | | -- | -- | -- | -- | | 1 | 44 | Odoo code without this PR | | | 2 | 37 | `menu_ids` | [8kScMtWT](https://pastebin.com/8kScMtWT) | | 3 | 34 | `menu_ids` + backport of #36263 | [8TV7cjKm](https://pastebin.com/8TV7cjKm) | | 4 | _31_ | _`menu_ids` + backport of #36263 + sudo if no group on menu_ | | **5** | **30** | **`menu_ids` + backport of #36263 + merge `select_distinct_from_where_not_null`** | | 6 | _29_ | _witho
Original PR description
menu_ids splitted in other pr === | | SQL Query | Code | pastebin | | -- | -- | -- | -- | | 1 | 44 | Odoo code without this PR | | | 2 | 37 | `menu_ids` | [8kScMtWT](https://pastebin.com/8kScMtWT) |…
menu_ids splitted in other pr === | | SQL Query | Code | pastebin | | -- | -- | -- | -- | | 1 | 44 | Odoo code without this PR | | | 2 | 37 | `menu_ids` | [8kScMtWT](https://pastebin.com/8kScMtWT) | | 3 | 34 | `menu_ids` + backport of #36263 | [8TV7cjKm](https://pastebin.com/8TV7cjKm) | | 4 | _31_ | _`menu_ids` + backport of #36263 + sudo if no group on menu_ | | **5** | **30** | **`menu_ids` + backport of #36263 + merge `select_distinct_from_where_not_null`** | | 6 | _29_ | _without the `group_ids` feature on `website.menu`_ | | 7 | _27_ | _without `submenu` template_ | The lowest it could be is `27` if the website had no menu and the group feature didn't exists (used as reference), see **7**. Current state without this PR is `44`, see **1**. The 2 seb's imp would gain `10` queries, see **3**. A hack on top to avoid reading the groups table would gain another 3 queries, see **4**. But that should be 'fixed' at the ORM level, which gain another query at the same time, see **5**. Solution **5** seems to be the best. Forward-Port-Of: odoo/odoo#47692 Forward-Port-Of: odoo/odoo#46925
Previously, when trying to compute the optimized width for an image, if the mediaWidth option was unspecified, _computeOptimizedWidth would return NaN, and in all the places where it was specified, it was specified as 1920 meaning it was essentially useless. This commit makes the media's clientWidth the default value for mediaWidth, meaning that if options.mediaWidth is unspecified, the size of the element in the page (if one exists) is used. This allows the suggested width to be actual
Original PR description
Previously, when trying to compute the optimized width for an image, if the mediaWidth option was unspecified, _computeOptimizedWidth would return NaN, and in all the places where it was specified, it was specified as 1920 meaning it was essentially useless. This commit makes the media's clientWidth the default value for mediaWidth, meaning that if options.mediaWidth is unspecified, the size of the element in the page (if one exists) is used. This allows the suggested width to be actually useful, instead of always suggesting 1920. Specifying a mediaWidth in the options overrides this value. task-2215913 Forward-Port-Of: odoo/odoo#47662
- In inventory app, create an attribute that is dynamic - Create a product with a variant with the dynamic attribute - Create a bom for the product with some specific component for that variant - Open structure and cost A crash occurs. In this case, the object is a `product.template`, so a condition product-specific shouldn't be checked. opw-2198976 Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged:
Original PR description
- In inventory app, create an attribute that is dynamic - Create a product with a variant with the dynamic attribute - Create a bom for the product with some specific component for that variant - Open structure and cost A crash occurs. In this case, the object is a `product.template`, so a condition product-specific shouldn't be checked. opw-2198976 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#47624
purpose : - improve default filter on the timesheet menu specification: domains are changed in the Timesheets menus as follows: - In 'all timesheet' menu group by: Employee > Project - In 'reporting by Project' menu group by: Project only Taskid: 2194073 Related: odoo/enterprise#8654 Closes: odoo#46017 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#46017
Original PR description
purpose :
- improve default filter on the timesheet menu
specification:
domains are changed in the Timesheets menus as follows:
- In 'all timesheet' menu group by: Employee > Project
- In 'reporting by Project' menu group by: Project only
Taskid: 2194073
Related: odoo/enterprise#8654
Closes: odoo#46017
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#46017Description 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#47704
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#47704
Followup on c058562d7301298fd71b2618b5386611dfeb81cb Before this commit, Domain for `purchase_ok` on the field `product_id` was applied on the field level which was Replaced by multi-company domain on views. With this commit, we combine both domains to Display only `Can be Purchased` products. 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 a
Original PR description
Followup on c058562d7301298fd71b2618b5386611dfeb81cb Before this commit, Domain for `purchase_ok` on the field `product_id` was applied on the field level which was Replaced by multi-company domain on views. With this commit, we combine both domains to Display only `Can be Purchased` products. 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#46677
- Create a Promotion Program with 'Applicability' set to 'Apply On Next Order' 'Promo Code Usage' set to 'Use a code', set a code (not required, only for easiness) - Create a SO, use the code and validate - In the Promotion Programs, open the coupon list The Expiration Date is set to tomorrow. The Expiration Date is not useful in this case, and it is computed only because the default value of `validity_duration` is 1. However, the user is not able to change it since `maximum_u
Original PR description
- Create a Promotion Program with 'Applicability' set to 'Apply On Next Order' 'Promo Code Usage' set to 'Use a code', set a code (not required, only for easiness) - Create a SO, use the code and validate - In the Promotion Programs, open the coupon list The Expiration Date is set to tomorrow. The Expiration Date is not useful in this case, and it is computed only because the default value of `validity_duration` is 1. However, the user is not able to change it since `maximum_use_number` is used for programs instead. We set a default value to zero to avoid any confusing computation. opw-2210794 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#47713
Steps to reproduce the bug: - Go to the chart of accounts - Create an account A with user_type_id = "Bank and Cash" - Go to form view of A and reconcilie button is hidden - Go list view Bug: The reconcile toggle button was visible. opw:2216244 Forward-Port-Of: odoo/odoo#47697
Original PR description
Steps to reproduce the bug: - Go to the chart of accounts - Create an account A with user_type_id = "Bank and Cash" - Go to form view of A and reconcilie button is hidden - Go list view Bug: The reconcile toggle button was visible. opw:2216244 Forward-Port-Of: odoo/odoo#47697
Steps to reproduce the bug: - Let's consider a posted customer invoice I for partner P - Let's consider that the salesperson S is assigned to I - Create a credit note CN from I Bug: The salesperson assigned for CN was the current user U instead of S opw:2213607 Forward-Port-Of: odoo/odoo#47658
Original PR description
Steps to reproduce the bug: - Let's consider a posted customer invoice I for partner P - Let's consider that the salesperson S is assigned to I - Create a credit note CN from I Bug: The salesperson assigned for CN was the current user U instead of S opw:2213607 Forward-Port-Of: odoo/odoo#47658
1. Create a product A with 'Control Policy' set to 'On received quantities' 2. Create a PO for 10 units => status is `no` 3. Validate the PO => status is `no` 4. Receive 5 units => status is `to invoice` 5. Invoice 5 units => status is `invoiced` 6. Receive the remaining quantity => status is `to invoice` 7. Invoice the remaining quantity => status is `invoiced` There is an inconsistency between steps 3 and 5: there is pending material to receive, but the st
Original PR description
1. Create a product A with 'Control Policy' set to 'On received quantities' 2. Create a PO for 10 units => status is `no` 3. Validate the PO => status is `no` 4. Receive 5 units => status is `to invoice` 5. Invoice 5 units => status is `invoiced` 6. Receive the remaining quantity => status is `to invoice` 7. Invoice the remaining quantity => status is `invoiced` There is an inconsistency between steps 3 and 5: there is pending material to receive, but the status is different. This is due to the fact the `order.invoice_ids` is checked, while it shouldn't affect the computation of the status. opw-2206447 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#47358
The use of such tags was not supported if no country was set on them (we need one to properly filter what to display in tax configuration). We just make it explicit by adding this constraint. Forward-Port-Of: odoo/odoo#47667 Forward-Port-Of: odoo/odoo#46769
Original PR description
The use of such tags was not supported if no country was set on them (we need one to properly filter what to display in tax configuration). We just make it explicit by adding this constraint. Forward-Port-Of: odoo/odoo#47667 Forward-Port-Of: odoo/odoo#46769
Since ae6545ccd5a97b336ae0a6a2bcea021f0f1acf7e in 11.0, reconciliation model buttons were wrapping and were scrolling vertically when more than three lines were shown. Since the change to bootstrap 4 in 12.0, however, the reconciliation model buttons were not wrapping any more, and were scrolling horizontally. This commit restores the previous behavior, which can display more buttons before any scrolling is necessary. Forward-Port-Of: odoo/odoo#47114 Forward-Port-Of: odoo/odoo#46648
Original PR description
Since ae6545ccd5a97b336ae0a6a2bcea021f0f1acf7e in 11.0, reconciliation model buttons were wrapping and were scrolling vertically when more than three lines were shown. Since the change to bootstrap 4 in 12.0, however, the reconciliation model buttons were not wrapping any more, and were scrolling horizontally. This commit restores the previous behavior, which can display more buttons before any scrolling is necessary. Forward-Port-Of: odoo/odoo#47114 Forward-Port-Of: odoo/odoo#46648
When saving after cropping an attachment, a new cropped attachment is created, and the temporary base64 URL is replaced by the url of the new attachment. However, when cropping an image for a second time, the original image is recropped, and the cropped image attachment that was created previously is overriden with the new data. Previously, the step that overrides the temporary base64 url with the url of the croppped attachment was not present when overriding a previously cropped attach
Original PR description
When saving after cropping an attachment, a new cropped attachment is created, and the temporary base64 URL is replaced by the url of the new attachment. However, when cropping an image for a second time, the original image is recropped, and the cropped image attachment that was created previously is overriden with the new data. Previously, the step that overrides the temporary base64 url with the url of the croppped attachment was not present when overriding a previously cropped attachment, meaning it would be saved as is in the DOM, and the overriden attachment would no longer have any links pointing to it. This commit fixes that by overriding the temporary base64 url both when cropping for the first time, but also for subsequent re-crops of the same image. Forward-Port-Of: odoo/odoo#47774 Forward-Port-Of: odoo/odoo#47695
Le compte 608. « Frais accessoires d’achat …» peut être ventilé : Selon les achats concernés comme les matières premières, les marchandises et les différents approvisionnements : Dans ce cas, sont recommandées les subdivisions suivantes : 6081 Frais accessoires sur achats de matières premières (et fournitures) 6082 Frais accessoires sur achats d'autres approvisionnements stockés 6084 Frais accessoires sur achats d'études et prestations de services 6085 Frais accessoires sur achats de
Original PR description
Le compte 608. « Frais accessoires d’achat …» peut être ventilé : Selon les achats concernés comme les matières premières, les marchandises et les différents approvisionnements : Dans ce cas, sont recommandées les subdivisions suivantes : 6081 Frais accessoires sur achats de matières premières (et fournitures) 6082 Frais accessoires sur achats d'autres approvisionnements stockés 6084 Frais accessoires sur achats d'études et prestations de services 6085 Frais accessoires sur achats de matériel, équipements et travaux 6086 Frais accessoires sur achats d'approvisionnements non stockés 6087 Frais accessoires sur achats de marchandises Référence: http://public.iutenligne.net/comptabilite/comptabilite-financiere/antraigue_januario/CTA-FIN-14/Chapitre-01/Sous-section-1-1-2.html opw:2186347 Forward-Port-Of: odoo/odoo#47830 Forward-Port-Of: odoo/odoo#46672
Le compte 608. « Frais accessoires d’achat …» peut être ventilé : Selon les achats concernés comme les matières premières, les marchandises et les différents approvisionnements : Dans ce cas, sont recommandées les subdivisions suivantes : 6081 Frais accessoires sur achats de matières premières (et fournitures) 6082 Frais accessoires sur achats d'autres approvisionnements stockés 6084 Frais accessoires sur achats d'études et prestations de services
Original PR description
Le compte 608. « Frais accessoires d’achat …» peut être ventilé : Selon les achats concernés comme les matières premières, les marchandises et les différents approvisionnements : Dans ce cas, sont…
Le compte 608. « Frais accessoires d’achat …» peut être ventilé :
Selon les achats concernés comme les matières premières, les marchandises et les différents approvisionnements :
Dans ce cas, sont recommandées les subdivisions suivantes :
6081 Frais accessoires sur achats de matières premières (et fournitures)
6082 Frais accessoires sur achats d'autres approvisionnements stockés
6084 Frais accessoires sur achats d'études et prestations de services
6085 Frais accessoires sur achats de matériel, équipements et travaux
6086 Frais accessoires sur achats d'approvisionnements non stockés
6087 Frais accessoires sur achats de marchandises
Référence: http://public.iutenligne.net/comptabilite/comptabilite-financiere/antraigue_januario/CTA-FIN-14/Chapitre-01/Sous-section-1-1-2.html
Si le compte 608 est ventilé en sous comptes alors ceux ci doivent être correctement comptabilisés dans le compte des résultats.
opw:2186347
Forward-Port-Of: odoo/enterprise#9312
Forward-Port-Of: odoo/enterprise#8962Bug === If we send an image on LinkedIn, we need to upload it first. If the image upload fail, we raise an error. But, if the post is sent in the social CRON (if the post is scheduled) and if the image upload failed, then the error will be raised, restarting the CRON, making it do an infinite loop. Solution ======== Catch the error in the social CRON and mark the post sending as failed. Task 2206477 Forward-Port-Of: odoo/enterprise#8857
Original PR description
Bug === If we send an image on LinkedIn, we need to upload it first. If the image upload fail, we raise an error. But, if the post is sent in the social CRON (if the post is scheduled) and if the image upload failed, then the error will be raised, restarting the CRON, making it do an infinite loop. Solution ======== Catch the error in the social CRON and mark the post sending as failed. Task 2206477 Forward-Port-Of: odoo/enterprise#8857
Task ID 2008564 Forward-Port-Of: odoo/enterprise#9242
Original PR description
Task ID 2008564 Forward-Port-Of: odoo/enterprise#9242
- Create a subscription - Set a Sales Team - Generate the Invoice The Sales Team is not propagated to the invoice. We make sure to set the key only if a team is set on the subscription to avoid intefering with the default value. opw-2215778 Forward-Port-Of: odoo/enterprise#9298 Forward-Port-Of: odoo/enterprise#9258
Original PR description
- Create a subscription - Set a Sales Team - Generate the Invoice The Sales Team is not propagated to the invoice. We make sure to set the key only if a team is set on the subscription to avoid intefering with the default value. opw-2215778 Forward-Port-Of: odoo/enterprise#9298 Forward-Port-Of: odoo/enterprise#9258
[opw-2206236](https://www.odoo.com/web#id=2206236&model=project.task&view_type=form&cids=1&menu_id=) Total sums are computed (to 0) for columns where it doesn't make sense when using the automatic account hierarchy. (also cherry pick a fix made in 13.2 that should be in 13.1 too) Forward-Port-Of: odoo/enterprise#9142 Forward-Port-Of: odoo/enterprise#8841
Original PR description
[opw-2206236](https://www.odoo.com/web#id=2206236&model=project.task&view_type=form&cids=1&menu_id=) Total sums are computed (to 0) for columns where it doesn't make sense when using the automatic account hierarchy. (also cherry pick a fix made in 13.2 that should be in 13.1 too) Forward-Port-Of: odoo/enterprise#9142 Forward-Port-Of: odoo/enterprise#8841
With the new accounting even draft invoice are moves and have move lines with taxe code They end up in the vat report but they shouldn't Solution: Filter only on posted move Forward-Port-Of: odoo/enterprise#9084
Original PR description
With the new accounting even draft invoice are moves and have move lines with taxe code They end up in the vat report but they shouldn't Solution: Filter only on posted move Forward-Port-Of: odoo/enterprise#9084
- Go to BE payroll then, contract & send a contract to sign via the salary configurator - In the salary configurator, remove kilometers from the private car & click "enter" or "tab" => traceback Forward-Port-Of: odoo/enterprise#9107
Original PR description
- Go to BE payroll then, contract & send a contract to sign via the salary configurator - In the salary configurator, remove kilometers from the private car & click "enter" or "tab" => traceback Forward-Port-Of: odoo/enterprise#9107
Purpose : improve filter on the timesheet specification : so changed group by on following menu: - Timesheets To Validate > Last Week: group by Employee > Project - Timesheets To Validate > Last Month: group by Employee > Project - Timesheet > All Timesheets: group by Employee > Project - Timesheet > My Timesheets: group by Project Rename the 'To Validate' menu as 'Timesheets to Validate' Taskid: 2194073 Related: odoo/odoo#46017 Closes: odoo#8654 Forward-Port-Of: odoo/enterpri
Original PR description
Purpose : improve filter on the timesheet specification : so changed group by on following menu: - Timesheets To Validate > Last Week: group by Employee > Project - Timesheets To Validate > Last Month: group by Employee > Project - Timesheet > All Timesheets: group by Employee > Project - Timesheet > My Timesheets: group by Project Rename the 'To Validate' menu as 'Timesheets to Validate' Taskid: 2194073 Related: odoo/odoo#46017 Closes: odoo#8654 Forward-Port-Of: odoo/enterprise#8654
When you generate a sign request with the public user you don't have sender email adress and the process of hr_contract_salary will not be completed Use the odoobot ,. (_|,. ,' /, )_______ _ __j o``-' `.'-)' (") \' `-j | `-._( / |_\ |--^. /
Original PR description
When you generate a sign request with the public user
you don't have sender email adress and the process of hr_contract_salary
will not be completed
Use the odoobot
,.
(_|,.
,' /, )_______ _
__j o``-' `.'-)'
(") \'
`-j |
`-._( /
|_\ |--^. /
/_]'|_| /_)_/
/_]' /_]'
Forward-Port-Of: odoo/enterprise#8770This commit adapts performance test for odoo/odoo#47345. Forward-Port-Of: odoo/enterprise#9259
Original PR description
This commit adapts performance test for odoo/odoo#47345. Forward-Port-Of: odoo/enterprise#9259