Friday, March 15, 2024
6 changes · master
Enhancements to existing features
A new automated test checks that table appointments appear correctly in the restaurant point-of-sale view. This helps prevent future changes from breaking appointment visibility for restaurant staff.
Original PR description
This commit adds a test for the pos_restaurant_appointment. The test creates an appointment for a table and checks if the appointment is displayed underneath the table.
This update standardizes how Odoo checks whether a user belongs to a group, removing older ambiguous behavior and making permission checks more predictable. It affects several business apps but is mainly an internal cleanup intended to reduce confusion and prepare for future simplification of debug-related behavior.
Original PR description
[IMP] base: Remove `user_has_groups` and env.user fallback in `has_group` The user_has_groups method calls `self.env.user.has_group`, with the difference being a split (and the negative group '!' used only for the views) of the provided string and management of `group_no_one` using `request.session.debug`. The use of `user_has_group` is quite confusing because it does not relate to the current record but to the environment. The `has_group` method is also confusing because if it is applied on an empty recordset then there is a fallback on `env.user` otherwise it uses the current record. The change makes it possible to unify the API and remove ambiguity and make method calls explicit, and make the groups independent of the session. Upcoming changes being the removal of group_no_one and decreasing the number of session.debug usages. see: https://github.com/odoo/odoo/pull/151597
Timesheets created on certain unvalidated field service tasks will no longer automatically reuse the task’s sales order line when no matching line is found for the employee. This avoids misleading billing or sales references and makes the timesheet information clearer for users.
Original PR description
Before this commit, when an employee timesheeted in an unvalidated FSM task which has a mapping for that employee and that no SOL was found in the SO according to that mapping, the SOL of the timesheet was set to the SOL of the FSM task by default. Which could lead to confusion for the user. Now, the SOL of the timesheet is set to False in such conditions. task-3510920
This update standardizes how the activity and message panel is defined across many business forms. It reduces duplicated setup behind the scenes, making future maintenance easier while keeping the user experience unchanged.
Original PR description
The close reasons form for subscriptions now uses clearer wording for portal visibility and includes added guidance. When a close reason is not selectable in the portal, related portal options are hidden, making the setup easier to understand and reducing configuration mistakes.
Original PR description
In this PR, the user interface for the close reasons form is enhanced. the field string visible_in_portal is modified to Selectable in Portal and additional guidance is provided for this field. A new condition is introduced, ensuring that if the field is set to false, the subsequent section becomes invisible otherwise, it remains visible. task-3776667
Referral sharing and social push notifications were updated to keep working with a changed link tracking service. This is a behind-the-scenes compatibility improvement that helps shared links continue to be created reliably.
Original PR description
also impacted: social_push_notifications `linkTracker.search_or_create` now expects a list of dictionaries. See COM PR Task-2788965
Remove all fields from chatter arch and simply use `<div class="oe_chatter"/>` with optional `options` attribute follow up of odoo/enterprise#57020 [Related Odoo PR](https://github.com/odoo/odoo/pull/156463) [Related Upgrade PR](https://github.com/odoo/upgrade/pull/5780)