Monday, November 4, 2024
22 changes · 18.0
Enhancements to existing features
Appointment types can no longer be moved between type groups by dragging them in the kanban view. This prevents accidental category changes that could cause confusing or incorrect field displays for users managing appointments.
Original PR description
Prevent being able to drag an appointment type when kanban is grouped by Type (category field) as this changes the appointment type category and messes up the fields display. Setting the category as readonly on the kanban view to remove the possibility to change it on groupby via drag and drop. Task-4282969
Resolved issues and error corrections
The sales screens no longer show the internal “amount to invoice” field, which was only meant to support credit limit checks. This reduces confusion and prevents users from relying on a value that was not designed for day-to-day invoicing decisions.
Original PR description
When it was originally introduced on 'sale.order', the 'amount_to_invoice' field was only intended to be used to trigger the credit limit warnings on sale orders and invoices. With time, it came to be used for other unintended purposes, which created confusion regarding the computation method and ensuing fixes that did more harm than good. This is why, for the master version, it was decided to remove all unintended usages of the field in the views, and rename it to further clarify its meaning. Here, in version 18, we are simply making the fields invisible. task-4213628 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Miscellaneous changes
Before this commit, mouse-hovering on DM chat avatar in discuss app was showing the pencil icon, which gives the impression that we could edit the avatar of a DM chat. Steps to reproduce: - with Mitchell Admin, open the Discuss App - Open a DM chat with Marc Demo - Mouse-hover on avatar in the topbar of discuss app => the avatar is editable when it shouldn't This commit disables the feature as this is not intended to be used. Thankfully changing the avatar had no impact, because the ava
Original PR description
Before this commit, mouse-hovering on DM chat avatar in discuss app was showing the pencil icon, which gives the impression that we could edit the avatar of a DM chat. Steps to reproduce: - with Mitchell Admin, open the Discuss App - Open a DM chat with Marc Demo - Mouse-hover on avatar in the topbar of discuss app => the avatar is editable when it shouldn't This commit disables the feature as this is not intended to be used. Thankfully changing the avatar had no impact, because the avatar of the correspondent is necessarily used rather than the avatar of the conversation. Backport of https://github.com/odoo/odoo/pull/186016 <img width="2557" alt="Screenshot 2024-10-31 at 16 36 59" src="https://github.com/user-attachments/assets/ab222cd2-9508-41c7-82a5-d335b3f74551"> Forward-Port-Of: odoo/odoo#186021
Refreshing the attendee selection screen in the event registration desk no longer triggers an error. This improves reliability for staff managing event check-ins and avoids interruptions during registration workflows.
Original PR description
**How to reproduce:** - Navigate to an event. - Click on 'Registration Desk'. - Click on 'Select Attendee'. - Refresh the browser window. Ref: https://tinyurl.com/y2hxjbew **Technical reason:** In the web, there's an if condition that checks if 'display_name' is in 'res', but it doesn't account for the possibility that 'res' might be undefined. **After this commit:** The traceback will be resolved. Task-4272942
This fixes an unreliable automated test for the Mail app's unread message banner. It helps keep quality checks stable by verifying the expected scrolling behavior directly instead of depending on timing-sensitive scroll events.
Original PR description
The `scroll to the first unread message (slow ref registration)` test checks that clicking the unread message banner scrolls to the first unread message, even with delayed message loading. Previously, the test expected three `scrollend` events: - Scroll to top - Scroll to unread message - Minor scroll from highlight effect However, the highlight scroll sometimes fails to trigger if it starts before the second scroll ends, causing a missing `scrollend`. This PR resolves the issue by enhancing the `isInViewportOf` helper to listen for scroll events and assert directly, without relying on specific steps. runbot-69429739
This fixes a visual issue in the Project form where an unwanted extra line appeared near the Share Project button when timesheet warnings were shown. The change improves the form's appearance without changing how projects or timesheets work.
Original PR description
Before this commit, an extra line is displayed between the `Share Project` button and the form sheet. This commit removes the extra line by altering the group tag contained the timesheet warning when the timesheet feature is enabled in the project and no active analytic account is set on the project. The `group` tag is only supported in the `sheet` tag and not outside, that's why the extra line is appeared. task-4286488
This fixes the placement of the dynamic placeholder and emoji buttons in mailing settings. The buttons now appear beside the preview field as expected, making the editing experience clearer and less confusing.
Original PR description
Steps to reproduce =============== 1. Go to Email Marketing and open any mailing. 2. Go to Settings of the mailing inside notebook. -> The dynamic placeholder button and emoji icon is next to the medium but it should be after preview field. Issue =============== We are using position absolute for the container of the button but as the nearest positioned ancestor is the sheet itself it is placed to the right of the sheet. After this commit =============== The buttons for the preview field will be next to the preview field. Task-4244780
The rental order status label now lines up correctly in the sales rental order view. This small visual fix improves readability and makes the order screen look more polished for users.
Original PR description
Issue: Rental order status label are not aligned Fix: Added align-item-end to footer for sale_renting
Before this PR, going back to discuss from the breadcrumbs would always redirect to the thread discuss first opened. Steps to reproduce: - Go to `http://localhost:8069/odoo/discuss?active_id=mail_box.inbox`. - Switch to the starred inbox. - Go to the form view of the general channel. - Click on the breadcrumb "Starred". - You are on the Inbox channel. This happens because the action service restores the action. Discuss only has one action: the one that opens the app. Then upon navigat
Original PR description
Before this PR, going back to discuss from the breadcrumbs would always redirect to the thread discuss first opened. Steps to reproduce: - Go to `http://localhost:8069/odoo/discuss?active_id=mail_box.inbox`. - Switch to the starred inbox. - Go to the form view of the general channel. - Click on the breadcrumb "Starred". - You are on the Inbox channel. This happens because the action service restores the action. Discuss only has one action: the one that opens the app. Then upon navigation, the current thread is added to the URL. However, the changes in the URL are not taken into account by the action service. This PR fixes the issue by updating the action when the thread changes so that it can be restored. task-4210141 Forward-Port-Of: odoo/odoo#185714
Sync didn't work this week: fix broken code in translations manually. Task-4275457
Original PR description
Sync didn't work this week: fix broken code in translations manually. Task-4275457
Steps to reproduce ================== - Open any list/kanban view - Add a custom filter - Select a datetime field, for example Created on => The default value is the current datetime If you click on the datetime field, the datetimepicker is opened but the minutes are set to 00. If you click on apply, 00 is not set. Cause of the issue ================== The DateTimeInput has a rounding props (by default 5). If we open it with a value that has the minutes not rounded by
Original PR description
Steps to reproduce ================== - Open any list/kanban view - Add a custom filter - Select a datetime field, for example Created on => The default value is the current datetime If you click on the datetime field, the datetimepicker is opened but the minutes are set to 00. If you click on apply, 00 is not set. Cause of the issue ================== The DateTimeInput has a rounding props (by default 5). If we open it with a value that has the minutes not rounded by that amount, 00 will be displayed instead because a <select/> is used, and only the rounded values are present. Solution ======== Round the default value to the nearest 5 minutes opw-4170906 Forward-Port-Of: odoo/odoo#185866 Forward-Port-Of: odoo/odoo#183938
* Before this commit, if you have .. image in manifest description like .. image:: image.png (image.png stay in static/description) , it will only work on odoo app store but in module info it isn't * After this commit, make it work in module info of Apps (base module) by replace 'src' (image.png) with static/description resource (/module_name/static/description/image.png) Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged
Original PR description
* Before this commit, if you have .. image in manifest description like .. image:: image.png (image.png stay in static/description) , it will only work on odoo app store but in module info it isn't * After this commit, make it work in module info of Apps (base module) by replace 'src' (image.png) with static/description resource (/module_name/static/description/image.png) 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#184436 Forward-Port-Of: odoo/odoo#182875
This issue arises when multiple clicks are made on the calendar view button. Steps to reproduce: - Install either the `google_calendar` or `microsoft_calendar` module. - Go to calendar > Click multiple times on the calendar view button. - Error will be generated This issue specifically occurs if either the `google_calendar` or `microsoft_calendar` module has been installed. this issue occurs because here https://github.com/odoo/odoo/blob/79666cbab0ab0947b3d853ab58a929635c309bab/addons
Original PR description
This issue arises when multiple clicks are made on the calendar view button. Steps to reproduce: - Install either the `google_calendar` or `microsoft_calendar` module. - Go to calendar > Click multiple times on the calendar view button. - Error will be generated This issue specifically occurs if either the `google_calendar` or `microsoft_calendar` module has been installed. this issue occurs because here https://github.com/odoo/odoo/blob/79666cbab0ab0947b3d853ab58a929635c309bab/addons/google_calendar/static/src/views/google_calendar/google_calendar_model.js#L28 google or microsoft sync will taking longer then 1s, this promise will resolve after 1s and the component is destroyed. so to address this issue, we need to eliminate the race condition and await the completion of the google/microsoft sync. Task-3768492 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#183905 Forward-Port-Of: odoo/odoo#161831
Before this commit, the selected value in dropdowns within the text editor toolbar was barely visible. This commit adds styles to highlight the selected option, making it clearly visible and aligned with the other dropdowns for better user experience and consistency. Before:  After:  task-4150489 Forward
Original PR description
Before this commit, the selected value in dropdowns within the text editor toolbar was barely visible. This commit adds styles to highlight the selected option, making it clearly visible and aligned with the other dropdowns for better user experience and consistency. Before:  After:  task-4150489 Forward-Port-Of: odoo/odoo#181060
When you choose to add a free text value to a variant of the optional products at checkout, you will encounter a placeholder that is not translated: "Enter a customized value". This is because it's defined only in `sale` module, which is not a frontend module. This commit adds the untranslated text to the frontend module: website_sale. Task-4229289 Forward-Port-Of: odoo/odoo#185480
Original PR description
When you choose to add a free text value to a variant of the optional products at checkout, you will encounter a placeholder that is not translated: "Enter a customized value". This is because it's defined only in `sale` module, which is not a frontend module. This commit adds the untranslated text to the frontend module: website_sale. Task-4229289 Forward-Port-Of: odoo/odoo#185480
Steps to Reproduce : 1. Drag and drop a steps snippet 2. Increase the length of any column, in such a way that connector line between the columns in such a way that it overlay handle button. 3. Click on handle button -> A trace-back error occurs Description: When the method is called, it filters out all the overlay elements and finds the first element behind the overlay to apply the click function on it. The issue arises because the method filters out overlay elements and selects
Original PR description
Steps to Reproduce : 1. Drag and drop a steps snippet 2. Increase the length of any column, in such a way that connector line between the columns in such a way that it overlay handle button. 3. Click on handle button -> A trace-back error occurs Description: When the method is called, it filters out all the overlay elements and finds the first element behind the overlay to apply the click function on it. The issue arises because the method filters out overlay elements and selects the first underlying element to apply a click function on it. However, when the selected element is an SVG or path, which do not support native JavaScript click methods or events, this causes error. This fix resolves the trace-back by filtering out elements that lack native JavaScript click methods or event bindings before calling click. This prevents the error, ensuring smooth interaction with overlay elements. task-3911780 Forward-Port-Of: odoo/odoo#167759
When viewing more than 1 viewable file in the FileViewer, the navigation buttons `<` and `>` are barely visible. This commit fixes it by putting white icon on dark rounded background for the buttons. Task-4056907 <img width="2559" alt="Screenshot 2024-10-30 at 17 34 03" src="https://github.com/user-attachments/assets/b26cc55c-d2e0-47f4-8c60-99fd55a46bf2"> Backport of https://github.com/odoo/odoo/pull/185909 Forward-Port-Of: odoo/odoo#185944 Forward-Port-Of: odoo/odoo#185910
Original PR description
When viewing more than 1 viewable file in the FileViewer, the navigation buttons `<` and `>` are barely visible. This commit fixes it by putting white icon on dark rounded background for the buttons. Task-4056907 <img width="2559" alt="Screenshot 2024-10-30 at 17 34 03" src="https://github.com/user-attachments/assets/b26cc55c-d2e0-47f4-8c60-99fd55a46bf2"> Backport of https://github.com/odoo/odoo/pull/185909 Forward-Port-Of: odoo/odoo#185944 Forward-Port-Of: odoo/odoo#185910
With this commit, the tour test_01_ui is fixed for differents tests triggers: community version and no demo data. 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#183578 Forward-Port-Of: odoo/odoo#183503
Original PR description
With this commit, the tour test_01_ui is fixed for differents tests triggers: community version and no demo data. 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#183578 Forward-Port-Of: odoo/odoo#183503
Steps to reproduce: - Fleet app > Any vehicle > Drivers History > Attachments - In mobile view > Primary button 'Upload' is not accessible - Primary button 'New' does not do anything This happens because the controller cannot find a form view for ir.attachment in fleet, which is the default view type for record creation (barring quickcreate stuff). Also d-none class hides the display of the 'Upload' button but the dropdown menu arrow is still there which is rather confusing. Seeing how
Original PR description
Steps to reproduce: - Fleet app > Any vehicle > Drivers History > Attachments - In mobile view > Primary button 'Upload' is not accessible - Primary button 'New' does not do anything This happens because the controller cannot find a form view for ir.attachment in fleet, which is the default view type for record creation (barring quickcreate stuff). Also d-none class hides the display of the 'Upload' button but the dropdown menu arrow is still there which is rather confusing. Seeing how both buttons serve the same purpose, there is no need to keep 'New' which has no corresponding view. opw-4229756 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#183904
To reproduce the bug: 1. Install the subscription feature on your website. 2. Create a second company and link it to the website. 3. Create a recurring product with the service type. 4. In the subscription app, create a quotation with the specified product. 5. Preview the invoice for the quotation. 6. Copy the link for the portal invoice and open it in an incognito window. 7. Pay the invoice. You will encounter a TraceBack error depending on the modules installed. This is due to the
Original PR description
To reproduce the bug: 1. Install the subscription feature on your website. 2. Create a second company and link it to the website. 3. Create a recurring product with the service type. 4. In the…
To reproduce the bug: 1. Install the subscription feature on your website. 2. Create a second company and link it to the website. 3. Create a recurring product with the service type. 4. In the subscription app, create a quotation with the specified product. 5. Preview the invoice for the quotation. 6. Copy the link for the portal invoice and open it in an incognito window. 7. Pay the invoice. You will encounter a TraceBack error depending on the modules installed. This is due to the `company_id` being set to an empty record as a result of how it is computed here: https://github.com/odoo/odoo/blob/17.0/addons/account/models/account_move.py#L696-L698 In our case, `move.journal_id.company_id` (the invoice company) exists, so `self.env.company` (the website company) gets ignored. However, since the public user of the website doesn't have access to the invoice company, the `company_id` is set to an empty record after checking the access rights with `._accessible_branches()[:1]`. opw-3999546 Forward-Port-Of: odoo/enterprise#70915 Forward-Port-Of: odoo/enterprise#68034
With NL Company Open "General Ledger" Hit Save > Select XAF > Click 'Export' Issue: "TypeError: argument should be a bytes-like object or ASCII string, not 'generator'" This occurs because when calling `export_report` we save the attachment and we need the actual file content. opw-3820739 Forward-Port-Of: odoo/enterprise#72294
Original PR description
With NL Company Open "General Ledger" Hit Save > Select XAF > Click 'Export' Issue: "TypeError: argument should be a bytes-like object or ASCII string, not 'generator'" This occurs because when calling `export_report` we save the attachment and we need the actual file content. opw-3820739 Forward-Port-Of: odoo/enterprise#72294
Before this commit, when the user horizontally scrolls in the grid view of `My Timesheets` menu, the grid timer button on each row is hidden, only the row title is kept. This commit keeps the grid timer button is kept when the user horizontally scroll in the grid view of `My Timesheets` menu as it is the case for the row title. task-3378510 Forward-Port-Of: odoo/enterprise#54052
Original PR description
Before this commit, when the user horizontally scrolls in the grid view of `My Timesheets` menu, the grid timer button on each row is hidden, only the row title is kept. This commit keeps the grid timer button is kept when the user horizontally scroll in the grid view of `My Timesheets` menu as it is the case for the row title. task-3378510 Forward-Port-Of: odoo/enterprise#54052