Daily updates from Odoo
Tuesday, December 12, 2023
7 changes · master
Enhancements to existing features
Website helpdesk tickets created from online forms now receive better-formatted descriptions. This makes submitted information easier for support teams to read and act on, reducing confusion when handling customer requests.
Original PR description
In this PR, the formatting of adding descriptions to tickets created from the website form has been improved. task-3459958
This update standardizes how recurring appointments, appraisals, field service tasks, and planning shifts are handled across Odoo. It keeps existing behavior while using a shared recurrence approach, making future maintenance more reliable and reducing inconsistencies between apps.
Original PR description
TODO
Recurring prices can now be viewed and managed directly from the pricelist menu instead of only from individual product forms. The update also improves pricing reliability by recalculating values when pricelist currency changes and preventing errors when updating pricing for multiple products.
Original PR description
Before this commit, the recurring prices were only available from the product template form view. taskid: 2886054
Helpdesk SLA reports now show clearer labels and additional timing measures that match ticket analysis reports. Business users get more useful SLA insights, including average remaining service order hours and cleaner displays that hide zero values where they add noise.
Original PR description
This PR makes the following improvements: - In pivot view of SLA status analysis report, 'remaining hours on SO' measure will be appear as hh:mm. - The total 'remaining hours on SO' represents the average number - hide the value if it is equal to 0 for the following measures: rating, hours to assign, hours to close. - add same measure as ticket analysis in sla status analysis report. - Average hours to Respond - Hours to first respond - Hours Open - change 'Close Date' into 'Closing Date' and Create Date into 'Ticket Creation Date' for the both reports in helpdesk. task-3475472
The customer portal ticket view now makes timesheet entries easier to read by highlighting alternating rows and aligning row content vertically. This improves readability for customers reviewing service time on support tickets.
Original PR description
Before this commit: -portal ticket every lines of timesheet table was same -timesheet row data was not vertically center After this commit: -portal ticket every other lines of timesheet table will highlighted -timesheet row data will vertically center task-3546347
The Discuss app and messaging menu now load more efficiently when there are many failed messages, pinned conversations, or large group chats. This improves responsiveness for users while keeping compatibility with existing customizations.
Original PR description
- Messaging menu was slow when there are many mail failures - Discuss app is slow whenever there are many pinned threads - Initial page load was slow when pinned threads were group chats with…
- Messaging menu was slow when there are many mail failures - Discuss app is slow whenever there are many pinned threads - Initial page load was slow when pinned threads were group chats with hundreds of members All these performance issue come from aggressively eager call to reactive callbacks, which `onChange()` and `compute()` were relying on. These commits fix the performance issue with: - Update cycle in `@mail/record`, which calls eager computed fields and onChange at the end of an update transaction in discuss models, so that computation is called only once rather than many times (while only the later value matter) - Add support for lazy computed fields (which they are by default), so that computed fields are only computed when needed. - Add support for sorted many fields, which also follow the update cycle and eager/lazy mode of field. This makes sorting operation on many fields efficient and preserves eventual correctness of expected order of items in these relational fields. Some fields had to be turned into computed fields to result to performance gains from these improvements. Since computed fields do not trigger `Record.insert()` and `Record.update()` for performance reasons, some fields that were set there had to be turned into computed and sorted fields too. Python formatter had to return data that follow more closely the change of JS models, in order to remove reliance on passing on `Record.insert()` and `Record.update()` which are even less guaranteed by these changes. Legacy/deprecated fields and formatter data are preserved in order to not break customisations. https://github.com/odoo/odoo/pull/143378
The Planning app now uses a newer interface component for selecting and displaying resource avatars in planning views. This keeps the experience more consistent and easier to maintain while preserving the existing behavior where still needed.
Original PR description
Before this commit, the Many2OneAvatarResource widget called 'many2one_avatar_resource' was still a legacy widget. We create the owl version and keep the legacy one for calendar views.