Wednesday, July 27, 2022
14 changes · master
Resolved issues and error corrections
This fix ensures notification listeners are properly added and removed in delivery IoT, spreadsheet collaboration, and VoIP features. It helps prevent missed cleanup or duplicate handling of live updates, improving reliability during ongoing use.
Original PR description
*: delivery_iot, spreadsheet_edition, voip. The callback registered by the bus service method onNotification was not the same unregistered by offNotification. Since those methods were superfluous, they have been remvoed in favor of (add/remove)EventListener.
The IoT longpolling service was adjusted so it no longer responds to browser tab coordination events it does not need. This prevents unnecessary errors when users work with Odoo IoT features across multiple browser tabs.
Original PR description
THe iot_longpolling service is extending the bus service while it does not make any use of it. Before the introducton of the multi tab service, the crosstab bus was calling stopPolling during the heartbeat. Now that the logic for multiple tab has been moved, the crosstab bus subscribes to the 'no_longer_main_tab' event. Before the multi tab, the stopPolling method was never called from the crosstab bus since the startPolling method was never called either. Now that the crosstab bus subscribes to those events in its init method, the stopPolling method of the iot longpolling service can be called by the crosstab bus, without the required argument (iot_ip). This leads to errors. In order to solve this issue, let's remove the unneccessary extension of the bus service.
Progress bars in list views now display with the correct width. This makes table-based progress information easier to read and keeps the interface visually consistent.
Original PR description
This commit fixes the style of the progressbar field widget displayed in a list (table). Since the field is contained in a div, its width was not correctly applied.
This fix ensures the field service guided tour continues correctly when it reaches the signing step. It also places a worksheet-related tour adjustment in the correct module, helping keep future updates and testing more reliable.
Original PR description
This commit fixes https://github.com/odoo/enterprise/pull/29767 as it hadn't been tested after rebase, which obviously changed the tour behavior. This commit also moves the `worksheet` tour override added in https://github.com/odoo/enterprise/pull/29767 to the right module.
The section title for linking a spreadsheet chart to an Odoo menu now uses consistent capitalization. This is a small wording fix that improves polish and consistency in the user interface.
This fixes styling for extra-large form views so layouts such as forms with side chatter display as intended again. The change makes the layout rules more reliable after the web client update, reducing visual glitches for users.
Original PR description
When the form view was converted to the new web client, some classes were no longer applied on the same DOM elements, this caused some css rules to be broken. This commit unnests the o_xxl_form_view rule so that it always applies when appropriate and is less brittle.
The manufacturing work order tablet screen styling was updated to keep working correctly after recent view technology changes. This helps preserve the intended layout and readability for users without changing business workflows.
Original PR description
Following OWL Views migration, `o_legacy_*_view` where introduced to differentiate legacy views from migrated ones. In the mean time, this commit adapts the SCSS selector accordingly. Community: https://github.com/odoo/odoo/pull/96626
Miscellaneous changes
Create an individual (not company) partner with an EU Country (not Spain) Create an invoice for that customer. In Accounting>Reporting>Mod349 2 lines will be filled. This report is for intracom transactions only, so OSS transactions should not be filled in there. opw-2889681 Forward-Port-Of: odoo/enterprise#29806
Original PR description
Create an individual (not company) partner with an EU Country (not Spain) Create an invoice for that customer. In Accounting>Reporting>Mod349 2 lines will be filled. This report is for intracom transactions only, so OSS transactions should not be filled in there. opw-2889681 Forward-Port-Of: odoo/enterprise#29806
… days Forward-Port-Of: odoo/enterprise#29809 Forward-Port-Of: odoo/enterprise#29755
Original PR description
… days Forward-Port-Of: odoo/enterprise#29809 Forward-Port-Of: odoo/enterprise#29755
Before this commit, when we enter the 24 as start_time then it will generate a ValueError because the hour must be in 0..23. There is a _sql_constraints on it but it accepts the 24 as time while the time max value should be 23:59. so in this commit, add the python constraint to restrict the 24 value in start_time. `NOTE: remove this constraint in master and update the SQL constraint ` task-2873238 Forward-Port-Of: odoo/enterprise#29783 Forward-Port-Of: odoo/enterprise#29158
Original PR description
Before this commit, when we enter the 24 as start_time then it will generate a ValueError because the hour must be in 0..23. There is a _sql_constraints on it but it accepts the 24 as time while the time max value should be 23:59. so in this commit, add the python constraint to restrict the 24 value in start_time. `NOTE: remove this constraint in master and update the SQL constraint ` task-2873238 Forward-Port-Of: odoo/enterprise#29783 Forward-Port-Of: odoo/enterprise#29158
Step to reproduce: - In the accounting setting 'Line Subtotals Tax Display' set on 'Tax - Included' - 2 taxes: One with Taxes included (B2C) and one with taxes excluded (B2B) - 1 Rental and selling product with tax-included price - 2 clients: one is particular and the other is a company - Fiscal position assigned to company client: Fiscal position map B2C tax with B2B one Current behaviour: - Tax mapping apply multiple times and end up with a wrong displayed price - This is bec
Original PR description
Step to reproduce: - In the accounting setting 'Line Subtotals Tax Display' set on 'Tax - Included' - 2 taxes: One with Taxes included (B2C) and one with taxes excluded (B2B) - 1 Rental and selling product with tax-included price - 2 clients: one is particular and the other is a company - Fiscal position assigned to company client: Fiscal position map B2C tax with B2B one Current behaviour: - Tax mapping apply multiple times and end up with a wrong displayed price - This is because rental price should not be recomputated on qty change Behaviour after PR: - Tax mapping is only applyed once in the rental wizard PR in community : odoo/odoo#86290 opw-2783040 Forward-Port-Of: odoo/enterprise#29616 Forward-Port-Of: odoo/enterprise#25216
In sale_subscriptions, it is not possible to use hourly pricing. This commit adds a constraint on the product pricing model in sale_subscription to prevent using hourly pricing on subscription products. task-2904325 Forward-Port-Of: odoo/enterprise#29133
Original PR description
In sale_subscriptions, it is not possible to use hourly pricing. This commit adds a constraint on the product pricing model in sale_subscription to prevent using hourly pricing on subscription products. task-2904325 Forward-Port-Of: odoo/enterprise#29133
The coloration (on hover, on click) was not properly set up for readonly articles. Also, the toleranceElement for each nestedSortable (section of the article tree) was too restrictive (only on .o_article_handle, which is a class only applied on articles with write access for the current user). Revert back to select the direct div descendants (of a li tag in the tree). The toleranceElement is mandatory for the nestedSortable to function, and would not render properly with the restricti
Original PR description
The coloration (on hover, on click) was not properly set up for readonly articles. Also, the toleranceElement for each nestedSortable (section of the article tree) was too restrictive (only on .o_article_handle, which is a class only applied on articles with write access for the current user). Revert back to select the direct div descendants (of a li tag in the tree). The toleranceElement is mandatory for the nestedSortable to function, and would not render properly with the restrictive selector. Any article can be moved in the favorite section (even readonly). As such, readonly articles in the Favorite section should have the o_article_handle class. Task-2925588 Forward-Port-Of: odoo/enterprise#29693
Before this merge: As admin can see all the article even if they have no explicit access to them, admin will find all the private article of other users in the "move to" proposal dropdown. After this merge: The result of the move to dropdown is filtered to list only the article the user has access to. This merge also make _search methods uses the model instead of the self record when calling model methods (that can use self to filter out their output result). As _search is called wh
Original PR description
Before this merge: As admin can see all the article even if they have no explicit access to them, admin will find all the private article of other users in the "move to" proposal dropdown. After this merge: The result of the move to dropdown is filtered to list only the article the user has access to. This merge also make _search methods uses the model instead of the self record when calling model methods (that can use self to filter out their output result). As _search is called when using a domain, we should not reduce the scope of the domain and let the domain do the filtering job. Task-2852909 Forward-Port-Of: odoo/enterprise#29251