Daily updates from Odoo
Friday, January 2, 2026
4 changes · 17.0
Enhancements to existing features
This update enhances the appointment scheduling experience by reorganizing the availability sharing button and improving the visual clarity of calendar controls. The changes include updated background colors and a more user-friendly layout for selecting availability options, leading to a smoother scheduling process.
Original PR description
Because the "Share availability" button is in the control panel, its contents seemed very squashed. Since we now have a header for the calendar, there was plenty of space to move it there. And with that space, we could improve the buttons. The background colors of the selected availabilities and non-clickable areas in the calendar have been improved. Community PR https://github.com/odoo/odoo/pull/141139 task-3575827
This update enhances the calendar view's appearance and functionality, particularly in the Year view, by streamlining styling and improving visual clarity for events. It resolves issues with event styling and color display, leading to a more polished and user-friendly calendar experience.
Original PR description
This PR fixes issues after the revamp in PR https://github.com/odoo/odoo/pull/138670 The first fix was to move some of the SCSS in the `calendar` module into the `web` module. Because some modules…
This PR fixes issues after the revamp in PR https://github.com/odoo/odoo/pull/138670 The first fix was to move some of the SCSS in the `calendar` module into the `web` module. Because some modules such as `planning` don't require `calendar`, if it isn't installed, `planning` would not have the styling and colors of the events. By moving things around, this makes for a major part of the diff in this PR. Some event styles were also not being applied in the Year view. This is because we moved all the styles for event styling inside the `.fc-event` selector, but the Year view doesn't have this class on its events, instead we changed it to the `o_event` class which is in every view. This PR includes other improvements such as making the events' colors stand out more in Year view, making "mandatory days" more readable, and improving the calendar header's layout. Entreprise PR https://github.com/odoo/enterprise/pull/50251 task-3575827 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Resolved issues and error corrections
This update fixes an issue where refund messages incorrectly displayed the customer as the author instead of the user who initiated the refund. The change ensures the logged-in user is always identified as the author for refund, capture, and void transactions, improving data accuracy and reporting.
Original PR description
Currently, the customer, who did not perform the operation, is set as the author of the refund, capture, and void transaction messages. **Steps to reproduce:** - Install the `sale_management` module…
Currently, the customer, who did not perform the operation, is set as the author of the refund, capture, and void transaction messages. **Steps to reproduce:** - Install the `sale_management` module and enable the `demo` payment provider. - Create a new quotation and from the `gear` icon, select `Mark Quotation as Sent`. - From the `gear` icon, choose `Generate a Payment Link`, and copy the link. - Open the link in an incognito window, and complete the payment. - Return to the original tab and open the payment transaction from the chatter. - Click `Refund` > `Refund` and observe the `author` of the messages in the chatter. **Observation:** The refund messages entry shows the customer as the author instead of the logged-in user who executed the refund. **Root Cause:** At [1] and [2], when the logged-in user is not a superuser, the code assigns the customer (`self.partner_id`) as the author, even during `refund`, `capture`, and `void transactions`, resulting in an incorrect message author. **Fix:** This commit ensures that during refund, capture, and void transactions, the message author is set to the logged-in user instead of the customer. [1]: https://github.com/odoo/odoo/blob/bbf3bd7b0e1d3e015350f9c959fad056384e2318/addons/account_payment/models/payment_transaction.py#L223 [2]: https://github.com/odoo/odoo/blob/5cf325dfff1ffbc1c4b4d0bcfc44ac9f55ea7c51/addons/sale/models/payment_transaction.py#L110 **Before:** <img width="1910" height="624" alt="5379376_before" src="https://github.com/user-attachments/assets/decdd620-d741-488e-9dec-e5c8c9bafc48" /> **After:** <img width="1917" height="622" alt="5379376_after" src="https://github.com/user-attachments/assets/5f38f3c3-fd2c-489e-afc9-d7a356fde23a" /> opw-5379376
This update corrects a visual bug where custom button snippets were incorrectly wrapped in paragraph tags when placed next to existing buttons. The fix ensures consistent button display across standard and custom snippets, improving the user experience. This resolves a minor UI inconsistency.
Original PR description
### Issue: When a custom button snippet was dropped next to an existing button wrapped in a `<div>`, it was incorrectly and unconditionally wrapped in a paragraph `<p>` tag. This issue did not occur…
### Issue: When a custom button snippet was dropped next to an existing button wrapped in a `<div>`, it was incorrectly and unconditionally wrapped in a paragraph `<p>` tag. This issue did not occur with standard button snippets or when the buttons were wrapped in a `<p>` tag. ### Steps to reproduce: 1. Drag a standard "Button" snippet next to an existing button (e.g., in the navbar). The structure is correctly `<a/><a/>`. 2. Save a button as a custom snippet. 3. Drag this new custom button snippet next to a button wrapped in a `<div>` (navbar in our example). 4. Observe the structure: `<div><a/><p><a class="s_custom_snippet"/></p></div>`, but it should be like `<div><a/><a class="s_custom_snippet"/></div>`. ### Fix The logic has been corrected to only wrap a button snippet in a paragraph tag if it has no sibling buttons and is not already inside a `<p>`. This ensures consistent behaviour between standard and custom button snippets. A tour test is also added, ensuring the behaviour is correct. Backport of https://github.com/odoo/odoo/commit/3a8f2cc418510c3b91f8b9086bb4a89a1745e40d task-[5032130](https://www.odoo.com/odoo/project/974/tasks/5032130)