Daily updates from Odoo
Navigate
Branch
Friday, July 12, 2019
67 changes
Security fixes and vulnerability patches
This change updates Ingenico (Ogone) payments so card details are sent directly through Ingenico's alias gateway instead of being processed by Odoo's server. This reduces handling of sensitive payment information while keeping the existing token-based payment flow for customers.
Original PR description
Description of the issue/feature this PR addresses: This PR modify the flow of payment with the Ingenico (Ogone) payment provider. Current behavior before PR: Currently the token (Alias) is obtained…
Description of the issue/feature this PR addresses:
This PR modify the flow of payment with the Ingenico (Ogone) payment provider.
Current behavior before PR:
Currently the token (Alias) is obtained from Ogone by a s2s communication. This imply that sensitive information are processed by the back end: credit card number, CVS, card holder name and expiry date.
Currently:
- customer enters card details in the Odoo form (the s2s form view for Ogone)
- the payment_form.js code intercepts the event, parse the input data and send it to the json route to create the token via rpc
- the odoo server sends the card data to s2s_process on the payment.acquirer (payment/ogone/s2s/create_json)
- s2s_process creates the token and the override of payment.token contacts the ingenico API to create an alias and save its reference in the created token
- the token id is sent back to the JS code, which inserts the relevant data in the form that gets submitted to another controller which will actually charge the token (e.g. /shop/payment/token, but it depends on the payment flow)
Desired behavior after PR is merged:
The sensitive information are handled in the client in javascript. No sensitive information related to credit card are processed by the back end. The token (Alias) is processed by the back end in the same way than previously.
- customer enters card details in the Odoo form
- form's action url is the alias gateway of ingenico, which should return to an ingenico route that creates the token for the customer based on the ingenico post data
- the route redirect to the correct payment flow which will actually charge the token (e.g. /shop/payment/token, but it depends on the payment flow)
Note: need to gracefully handle error via the EXCEPTIONURL param in the alias gateway that should redirect back to the payment page with error message
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-prNew functionality added to Odoo
Time off types can now have their own notification settings for leave requests and allocations, helping the right people receive more relevant updates. The system also creates the needed notification categories automatically, reducing manual setup for HR teams.
Original PR description
Task: https://www.odoo.com/web#id=42264&model=project.task&view_type=form&menu_id=
This change adds audit notes when key product category and valuation settings are changed, including costing method, inventory valuation, accounts, stock journal, and product category. It also adds chatter to product categories so teams can see a clear history of important configuration changes.
Original PR description
Description of the issue/feature this PR addresses:
Task: https://www.odoo.com/web?#id=1886343&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720
PAD: https://pad.odoo.com/p/r.a75c690f92acfb2e7315b6ede8fa4a94
Current behavior before PR:
Desired behavior after PR is merged:
- Log a note in the chatter when changing the product category of the product
- Add a chatter on the product category
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-prAdds a new accounting unalterability check system to help verify that posted accounting entries have not been changed improperly. This strengthens audit readiness and supports localization-specific certification needs, especially for French accounting compliance.
Original PR description
-task: https://www.odoo.com/web#id=46942&view_type=form&model=project.task&menu_id= -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Manufacturing operations can now be configured with one-, two-, or three-step flows, including dedicated picking, production input, and production output stages. This gives businesses more control over how materials move before and after production, while also improving warehouse configuration labels and related sales/manufacturing coverage.
Original PR description
Task : https://www.odoo.com/web?#id=27785&view_type=form&model=project.task&action=327&menu_id=4720 Pad : https://pad.odoo.com/p/r.2916bcb2420a08916db1714fa4e40ffa
Adds a guided setup bar to the Accounting dashboard so new users can enter initial company and accounting information step by step. This makes onboarding smoother and reduces confusion during first-time accounting configuration.
Original PR description
task : https://www.odoo.com/web#id=32119&view_type=form&model=project.task&menu_id= -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forecast sharing is improved so full schedules can be sent to selected employees for a chosen time range. The information is now delivered as a report attachment, making monthly forecast data easier to read and keeping email discussions cleaner.
Enhancements to existing features
Customers who complete an online purchase can now receive a confirmation email when they reach the shop confirmation page. Website administrators also get a setting to choose the default confirmation email template, making the post-purchase communication easier to manage and customize.
Original PR description
Description of the issue/feature this PR addresses: Task: https://www.odoo.com/web?#id=1873634&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720 Pad: https://pad.odoo.com/p/r.ade559c1621ad7e5c01297e043dc7b05 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
The Project task form view has been adjusted to make editing and reviewing task information smoother. This improves the user experience by aligning the form behavior with the desired workflow shown in the requested change.
Original PR description
Task : https://www.odoo.com/web#id=1884015&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720 pad : https://pad.odoo.com/p/r.5c739c39698c75a12fb8f0d0e838b3f2 Current behavior before PR: https://drive.google.com/file/d/1aKG5jIR-UzaGB1uhZyRAHubb9U75d4ZF/view Desired behavior after PR is merged: https://youtu.be/VVo-UqyDHPk -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Stock inventory reports can now be filtered or grouped by product category. This helps users analyze stock quantities more quickly by category, making inventory review and reporting easier.
Original PR description
…t report. In this commit - Add product_categ_id field on stock.quant so that user can filter or group by the stock quant report. This merge is related to task #1859995. 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
The graph view now displays the currently selected measure directly on the measure toggle button. This makes reports easier to read and reduces uncertainty about which value is being analyzed.
Original PR description
Task: https://www.odoo.com/web#id=1878335&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720 Pad: https://pad.odoo.com/p/r.9021406072a1b25c016b5b4e4a470c94 ### -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Sales orders now show the selected customer’s invoice and shipping addresses at the top of the address dropdowns, making it faster to choose the right address. Address labels were also standardized for clearer wording, and the dropdown can display address-type icons where supported.
Original PR description
Choosing a billing/shipping address in the sales order is not easy because the user only see the addresses sorted in alphabetical order. There is no easy way to find the next address of current customer in quotation/order. After this commit when you open the dropdown in the SO, you can see the billing/shipping address of the customer atop the list. Changed the following text in base > models >res_partner.py : - Invoice address > Invoice Address - Shipping address > Shipping Address - Other address > Other Address Task: https://www.odoo.com/web#id=55292&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720 Pad: https://pad.odoo.com/p/r.c0631e27d071f1e5781aef496fffde73 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
The Timesheets app now has its own module icon, replacing the previous task log-related visual. This makes the app easier to recognize in Odoo and improves consistency in the user interface.
Original PR description
… logs. Task link : https://www.odoo.com/web#id=1872544&action=327&model=project.task&view_type=form&menu_id=4720 Pad link : https://pad.odoo.com/p/r.6ed8e36f697f4a26f01d0a4d038277f4 This commit is related to task ID 1872544. 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
Leave types can now use dedicated notification categories for leave requests and allocations, making employee time-off messages easier to route and follow. The update also creates the needed notification categories automatically, reducing manual setup for HR teams.
Original PR description
Task : https://www.odoo.com/web?#id=42264&action=327&model=project.task&view_type=form&menu_id=4720
Stock locations will now display their full names even when the location is configured as a view-type location. This helps users distinguish similar locations more easily and reduces confusion in inventory workflows.
Original PR description
This commit is related to task ID 1864491. Task link : https://www.odoo.com/web#id=1864491&action=327&model=project.task&view_type=form&menu_id=4720 Pad link : https://pad.odoo.com/p/r.e829c98194a86b1fea045bcdac7b00e9 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
Stripe payments are updated to use Stripe's newer payment flow, enabling more supported payment methods. Businesses can offer customers additional local and alternative payment options such as Alipay, Bancontact, iDEAL, SEPA Direct Debit, Sofort, and WeChat Pay.
Original PR description
TASK: https://www.odoo.com/web#id=1840962&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720 PAD: https://pad.odoo.com/p/r.1610efdc82fbbfa869f3ce56a66d7853 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
Subscription-related emails now use a lighter notification layout, making messages cleaner and easier for customers to read. This improves the customer-facing email experience without changing subscription workflows or business logic.
Original PR description
Pad:https://pad.odoo.com/p/r.087c2346219fd36bfbd5de6a45d76cf3 Task:https://www.odoo.com/web#id=1843176&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720 n this commit - Provide 'mail.mail_notification_light' for custom_layout. Task: 1843176 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
This update improves day-to-day accounting workflows, especially invoice reconciliation, refunds, taxes, and due date handling. It makes common actions clearer and safer, reducing manual mistakes when processing invoices, refunds, purchases, and expenses.
Original PR description
Task: https://www.odoo.com/web#id=35329&view_type=form&model=project.task&action=327&menu_id= pad: https://pad.odoo.com/p/r.b4cb5dca1c9b83b5c5ca53211368bf7a
Repair orders can now record the product owner when handling customer-owned or consigned items. This helps ensure repairs use and return the correct stock for the right customer, reducing mistakes in consignment workflows.
Original PR description
Description of the issue/feature this PR addresses: Task ID - https://www.odoo.com/web?#id=1856949&action=327&model=project.task&view_type=form&menu_id=4720 Pad - https://pad.odoo.com/p/r.1349bcc51a283af73f23ef3d853f6047 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
This update hides the Import button on mobile screens, where importing data is rarely practical, reducing clutter for users. It also adds a mobile view switcher so users can more easily move between available views while working on smaller devices.
Original PR description
Description of the issue/feature this PR addresses: Task: https://www.odoo.com/web?#id=1857696&action=333&active_id=131&model=project.task&view_type=form&menu_id= Pad: https://pad.odoo.com/p/r.eb67835cd64014ce56f4c0a54881c1e1 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
The demo contact record for Arthur Gomez now uses a male profile picture. This improves the realism and consistency of sample partner data when users search for or view this contact.
Original PR description
Pad:https://pad.odoo.com/p/r.391d97edaa2563081b79aabeb162bb6a Task:https://www.odoo.com/web#id=1854595&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720 --Arthur Gomez's partner picture update PR: TASK:1854595 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
This update fixes several visual alignment issues in the ecommerce checkout, including buttons, delivery badges, prices, and the cart summary area. It also keeps shoppers on the same checkout page when applying a promo code, reducing friction and improving the buying experience.
Original PR description
Task: https://www.odoo.com/web?#id=1850446&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720 Pad: https://pad.odoo.com/p/r.da98be6386ef94463c5ec05f17d2753a 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
When users click "Send message" or "Log note" in the chatter, the message text box is now selected automatically. This small usability improvement lets users start typing right away without an extra click, making communication in Odoo slightly faster and smoother.
Original PR description
- When we click on 'Send message' to send a message from the chatter, set the focus on text box. Task ID : 1824035 Description of the issue/feature this PR addresses: Task ID - https://www.odoo.com/web?#id=1824035&action=327&model=project.task&view_type=form&menu_id=4720 Pad - https://pad.odoo.com/p/r.f003d348b36c9f26b137dacab4b0b518 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
Online store product pages now preserve and display original-size product images, including variant-specific image galleries. Merchants can order images more easily and shoppers see more consistent product carousels without awkward resizing or scroll bars.
Original PR description
Description of the issue/feature this PR addresses: Task : https://www.odoo.com/web#id=34045&model=project.task&view_type=form&menu_id=5195 Pad : https://pad.odoo.com/p/r.5ef87a7900df3afe0c954ed8a9c583dd -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Fleet users can now filter and group vehicles directly by their make or brand in vehicle list and kanban views. This makes it easier to organize fleets and find vehicles by manufacturer without going through model-level information.
Original PR description
Description of the issue/feature this PR addresses: They would like the possibility to filter/group on make (brand) Current behavior before PR: filtering/grouping on make is only possible on the model level, not on the vehicle level. Desired behavior after PR is merged: the vehivle make should be available in the vehicle list/kanban view. project : RD for Dummies task : [Fleet] Allow to filter/group by Make on vehicles https://www.odoo.com/web#id=1843501&action=333&active_id=1251&model=project.task&view_type=form&menu_id=4720 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The sales invoice creation flow is improved to better guide users on what can be invoiced, including unbilled amounts, down payments, already invoiced totals, and ready-to-invoice values. It also supports invoicing undelivered items when needed and improves automatic invoicing for ecommerce orders, reducing confusion and manual work.
Original PR description
Description of the issue/feature this PR addresses: <b>Task:</b> https://www.odoo.com/web?#id=33126&view_type=form&model=project.task&action=333&active_id=131&menu_id=4720 <b>Pad:</b> https://pad.odoo.com/p/r.8cb8ca851e64ed323a23746af9b37883 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
Online invoices now display as a responsive, print-like preview in the customer portal, making them easier to read on desktop and mobile. Payment options and document history are moved into cleaner modal dialogs, improving the invoice review and payment experience.
Original PR description
Description of the issue/feature this PR addresses: Task ID: https://www.odoo.com/web?#id=39876&view_type=form&model=project.task&action=333&active_id=131&menu_id=4720 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
The UK accounting setup now uses clearer tags for each tax report grid, making tax reporting data easier to classify and align with enterprise reports. This improves consistency in UK tax reporting without changing day-to-day workflows.
Original PR description
Task: https://www.odoo.com/web?debug=#id=22697&view_type=form&model=project.task&action=327&menu_id=4720 PAD: https://pad.odoo.com/p/r.f47955309f3674964eaf519b6ceaf45e
This update adds a helper for setting or reading values in automated web tours. It should make internal testing flows easier to write and maintain, supporting more reliable validation of user journeys.
Original PR description
Task: https://www.odoo.com/web#id=35805&view_type=form&model=project.task&action=333&active_id=131&menu_id=4720 Pad: https://pad.odoo.com/p/r.4a99bd891ee1a0d1071eda296dadee03 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
Companies can now choose whether customer addresses appear on the left or right side of printed sales, purchase, and invoice documents. This helps printed documents better match local mailing practices and envelope window layouts, while also fixing cases where report layouts were missing or unavailable.
Original PR description
**Task:** https://www.odoo.com/web#id=34078&view_type=form&model=project.task&action=333&active_id=131&menu_id=4720 **Pad:** https://pad.odoo.com/p/r.3a863627f9e3cfa235d56ac6d84fbe70 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
Point of Sale users can now correct the payment method on orders that have already been paid. This helps businesses fix cashier or customer payment mistakes while limiting choices to the payment journals configured for the relevant Point of Sale.
Original PR description
Task - https://www.odoo.com/web?#id=33491&view_type=form&model=project.task&action=333&active_id=131&menu_id=4720 Pad - https://pad.odoo.com/p/r.5399f29a86224a0e5235e8813af6ce9b 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
Website editors can now choose different images for different website languages, making localized pages more relevant for each audience. The update also ensures discarded translation edits correctly restore the previous image or content values.
Original PR description
…ccording to language on website. Description of the issue/feature this PR addresses: https://www.odoo.com/web#id=33372&view_type=form&model=project.task&action=327&menu_id=5200 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
Mobile users entering numbers in Odoo web forms will now see the numeric keyboard automatically. This makes number entry faster and reduces input mistakes on phones and tablets.
Original PR description
TASK :- https://www.odoo.com/web#id=35231&view_type=form&model=project.task&action=333&active_id=131&menu_id=4720 PAD :- https://pad.odoo.com/p/r.d1777ce29d89e8c82d6d995e46fcdc09 …ields 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
The sales order margin field has been repositioned from the lower-left corner to sit below the total amount. This makes margin information easier to find alongside the main financial totals when reviewing an order.
Original PR description
…der to below the total_amount field Description of the issue/feature this PR addresses: <b>Task:</b>https://www.odoo.com/web#id=33254&view_type=form&model=project.task&action=333&active_id=131&menu_id=4720 <b>Pad:</b>https://pad.odoo.com/p/r.ec7f1f927026df12da9e2ef1740e68b1 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
Archiving and unarchiving records is now handled from the Action menu instead of prominent stat buttons, making forms cleaner and more consistent. Archived records are clearly marked with a visible ribbon, and special business flows such as employee departure handling continue to run correctly when archiving.
Original PR description
Purpose ======= While cleaning the stat buttons across all modules, we decided to move the (un)archiving from stat button to actions in the 'Action' dropdown. The goal was to lighten the content of…
Purpose
=======
While cleaning the stat buttons across all modules, we decided
to move the (un)archiving from stat button to actions in the
'Action' dropdown.
The goal was to lighten the content of oe_button_boxes by clearing
out stat buttons.
The general idea is that stat buttons should be a redirection,
either to a set of records or to an alternate view of the current
one (there are some exceptions though).
The toggle_active stat button is an action, quite similar to a
deletion in most cases.
There are two main ways of using the 'active' field:
- archiving a record (often because it cannot be deleted since it
is linked to another record, like a res.partner used in validated
account.invoices)
- activating a record (with configuration objects like currencies,
languages, or taxes)
In the first case, the option is advanced, akin to deletion. Just
like deletion, its place is in the action dropdown, not the
formview itself.
It is nevertheless important to inform the user whether the record
is archived, but it is not necessary to inform him when it isn't.
In the second case (much less common), the 'activation' of a record
can simply be made available by adding the active field directly in
the formview.
Specification
=============
1/ web: Always display (un)archive buttons in Action on form views
Purpose
-------
While cleaning the stat buttons across all modules, we decided to move
the (un)archiving from stat button to actions in the 'Action' dropdown.
Specification
-------------
If the record has an 'active' field, display an action 'Archive' in the
2/ all: Remove active stat button on all views
Purpose
-------
While cleaning the stat buttons across all modules, we
decided to move the (un)archiving from stat button to
actions in the 'Action' dropdown.
Specification
-------------
Remove the 'active' stat buttons in all views
3/ web: Call 'toggle_active' instead of 'write'
Purpose
-------
Currently when clicking on 'Archive' or 'Unarchive' on the list view,
we write directly on the record {'active': False}, instead of calling
toggle_active. Missing that way implementation of numerous business cases.
Example
- Archive a record --> archive its next activities
- (Un)Archive a user --> (Un)Archive its partner
- (Un)Archive a product variant --> (Un)Archive its template if
there is only one variant
- Archive an employee --> Open a wizard to choose an exit plan + describe
the departure reason
- Archive a route --> Archive its procurement rules
- ...
Specification
-------------
- Call toggle_active instead of write when calling toggleActive in the web
client.
- On the other hand, use actionArchive and actionUnarchive to apply the
toggle action on the related records only.
4/ web: Remove toggle_button widget
This widget is not used anymore, as all the stat buttons have been removed
from the views.
5/ base,mail,...: Redisplay active field in some views
Purpose
-------
In the following views, add the 'active' field in the formview
as specified in the screenshots:
account.view_tax_form (account.tax) https://nimb.ws/08WqXP
crm_iap_lead_website.crm_reveal_rule_form (crm.reveal.rule) https://nimb.ws/xPHSiT
delivery.view_delivery_carrier_form (delivery.carrier) https://nimb.ws/yq3eDS
base.view_rule_form (ir.rule) https://nimb.ws/MBi2Ix
lunch.lunch_alert_view_form (lunch.alert) https://nimb.ws/DRdK4Z
mail.mail_blacklist_view_form (mail.blacklist) https://nimb.ws/xBq9ut
base.view_currency_form (res.currency) https://nimb.ws/FXG9oA
base.res_lang_form (res.lang) https://nimb.ws/eSr0dM
6/ web: add a new ribbon widget (POC)
Purpose
-------
The ribbon widget adds a ribbon on the top right of a form
to make some status more visible.
You have to specify the text attribute to show the text on
the ribbon. You can also specify a bg_color attribute to
color the background with a bootstrap background color class.
Note: This is an ugly draft of the final widget, that is supposed
to land in master in a few days. As this PR brings a lot of
functional changes in several files, it has become quite difficult
to maintain it over the days.
The final responsive version will come with:
https://www.odoo.com/web#id=2032621&action=333&active_id=965&model=project.task&view_type=form&menu_id=4720
7/ base,mail,...: Add ribbon widget everywhere on archived records
Purpose
-------
In the following views, add a bg-danger ribbon with label 'Archived'
only visible when active=False:
account.account_tag_view_form (account.account.tag)
analytic.view_account_analytic_account_form (account.analytic.account)
analytic.account_analytic_tag_form_view (account.analytic.tag)
account_asset.view_account_asset_form (account.asset)
account.view_account_position_form (account.fiscal.position)
account.account_incoterms_form (account.incoterms)
account.view_account_journal_form (account.journal)
account.view_payment_term_form (account.payment.term)
website_blog.view_blog_blog_form (blog.blog)
website_blog.view_blog_post_form (blog.post)
calendar.view_calendar_event_form (calendar.event)
crm.crm_case_form_view_leads (crm.lead)
crm.crm_case_form_view_oppor (crm.lead)
crm.crm_lost_reason_view_form (crm.lost.reason)
sales_team.crm_team_view_form (crm.team)
documents.document_view_form (documents.document)
event.view_event_form (event.event)
website_event_track.view_event_track_form (event.track)
fleet.fleet_vehicle_view_form (fleet.vehicle)
fleet.fleet_vehicle_log_contract_view_form (fleet.vehicle.log.contract)
website_forum.view_forum_forum_form (forum.forum)
website_forum.view_forum_post_form (forum.post)
gamification.badge_form_view (gamification.badge)
helpdesk.helpdesk_sla_view_form (helpdesk.sla)
helpdesk.helpdesk_team_view_form (helpdesk.team)
helpdesk.helpdesk_ticket_view_form (helpdesk.ticket)
hr_recruitment.hr_applicant_view_form (hr.applicant)
hr_appraisal.view_hr_appraisal_form (hr.appraisal)
hr_contract.hr_contract_view_form (hr.contract)
hr.view_department_form (hr.department)
hr.view_employee_form (hr.employee)
hr.hr_employee_public_view_form (hr.employee.public)
hr_holidays.edit_holiday_status_form (hr.leave.type)
hr.hr_plan_view_form (hr.plan)
hr_payroll.hr_salary_rule_form (hr.salary.rule)
hr_work_entry.hr_work_entry_type_view_form (hr.work.entry.type)
lunch.lunch_product_view_form (lunch.product)
lunch.lunch_supplier_view_form (lunch.supplier)
mail.mail_activity_type_view_form (mail.activity.type)
mass_mailing.view_mail_mass_mailing_form (mail.mass_mailing)
mass_mailing.view_mail_mass_mailing_list_form (mail.mass_mailing.list)
maintenance.hr_equipment_view_form (maintenance.equipment)
maintenance.maintenance_team_view_form (maintenance.team)
marketing_automation.marketing_campaign_view_form (marketing.campaign)
mrp.mrp_bom_form_view (mrp.bom)
mrp_plm.mrp_eco_view_form (mrp.eco)
mrp.mrp_routing_form_view (mrp.routing)
mrp.mrp_workcenter_view (mrp.workcenter)
point_of_sale.pos_config_view_form (pos.config)
product.product_pricelist_view (product.pricelist)
hr_expense.product_product_expense_form_view (product.product)
product.product_variant_easy_edit_view (product.product)
stock_landed_costs.view_stock_landed_cost_type_form (product.product)
product.product_template_form_view (product.template)
project_forecast.project_forecast_view_form (project.forecast)
project.edit_project (project.project)
project.view_task_form2 (project.task)
industry_fsm_report.project_worksheet_template_view_form (project.worksheet.template)
quality.quality_point_view_form (quality.point)
base.view_res_bank_form (res.bank)
base.view_partner_form (res.partner)
base.view_users_form (res.users)
sale_coupon.sale_coupon_program_view_form_common (sale.coupon.program)
sale_management.sale_order_template_view_form (sale.order.template)
sale_subscription.sale_subscription_alert_view_form (sale.subscription.alert)
sale_subscription.sale_subscription_template_view_form (sale.subscription.template)
sign.sign_request_view_form (sign.request)
sign.sign_template_view_form (sign.template)
website_slides.view_slide_channel_form (slide.channel)
website_slides.view_slide_slide_form (slide.slide)
stock.view_location_form (stock.location)
stock.stock_location_route_form_view (stock.location.route)
stock.view_picking_type_form (stock.picking.type)
stock.view_stock_rule_form (stock.rule)
stock.view_warehouse (stock.warehouse)
stock.view_warehouse_orderpoint_form (stock.warehouse.orderpoint)
survey.survey_form (survey.survey)
website_crm_score.view_crm_score_form (website.crm.score)
website_twitter_wall.website_twitter_wall_view_form (website.twitter.wall)
8/ hr: Fix departure wizard activity generation
Purpose
-------
If the fired employee has no access to the hr.employee model,
the departure wizard will lead to a traceback, as we try to
create an activity on a model for which the user won't be able
to resolve it.
Create an activity on the related partner instead.
9/ web: Make archive:unarchive buttons manage returned actions
Purpose
-------
When calling toggle_active, you may sometimes retrieve an action to
execute. For example, when archiving an employee, it opens a wizard
to provide information about the departure, and choose an offboarding
plan.
This commit modifies the way toggleActive, actionArchive and
actionUnarchive works to manage this behavior.
TaskID: 2030440Archiving a warehouse now also archives its related stock locations, operation types, routes, and rules, keeping warehouse setup consistent and avoiding leftover active records. Reactivating a warehouse restores only the related items that match its configured receipt and delivery flows, and archiving is blocked when stock moves are still in progress.
Original PR description
Description of the issue/feature this PR addresses: - When warehouse is archived related operation types and locations should be archived Current behavior before PR: - Currently when warehouse archived related locations and operation types not become archived. Desired behavior after PR is merged: - Now when warehouse archived related locations and operation types become archived -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Task : https://www.odoo.com/web#id=30659&view_type=form&model=project.task&action=327&menu_id=4720 Pad : https://pad.odoo.com/p/r.ded5290ee77cc73d5ffd3a3b891e6c34
This update improves the French localization by creating dedicated tax report tags and assigning them to the relevant taxes. This helps ensure tax data is organized more consistently for French reporting and supports smoother upgrades through a migration step.
Original PR description
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
The Point of Sale sale details report now shows the sales amount each tax is applied to. This makes tax totals easier to verify and improves transparency for reporting and checks.
Original PR description
Adding the bruto total on which a tax is applied in Sale details report (pos) Current behavior before PR: The taxes global amounts where not verifiable. Desired behavior after PR is merged: We know on how much each tax apply I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Tax adjustment entries now apply reporting tags directly to accounting lines instead of relying on special adjustment taxes. This simplifies tax setup and removes Belgian localization adjustment tax records, making tax reporting configuration cleaner and easier to maintain.
Original PR description
Make use of the new tax model to suppress 'adjustment' type for taxes, and refactor the generic adjustment wizard so that it direcly sets tags on the account move lines generated instead of needing an tax. [IMP] l10n_be: remove taxes of type 'adjustment'
Inventory reporting now opens directly to current stock, with an option to view stock levels and valuation as of a chosen past date. The update also restores estimated stock value by location and fixes an access issue for inventory users viewing product quantities.
This change improves how Odoo can sort records when some values are empty, making lists and reports appear in a more predictable order. It supports future business features such as reseller commission handling by ensuring underlying record ordering behaves consistently.
Original PR description
-- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Refunds can now be marked as not linked to a shipment, so they avoid creating entries on interim stock accounts when appropriate. This gives accounting teams more control over credit notes while keeping the previous behavior as the default.
Original PR description
With this PR, it is now possible to choose in the refund wizard whether or not a refund should generate account.move.lines on interim accounts. By default, we keep the old behavior, but it is now possible to uncheck a new setting named "Linked to Shipment". The result of doing so depends on the type of invoice we are refunding: - For vendor bills, 'stock in' account will be replaced on the refund account.invoice by the expense account. - For customer invoices, a new setting will be enabled on the refund invoice, stating that it should not generate entries in interim accounts once it gets validated. (this is done so because customer invoices generate anglo saxon entries directly, without using a pre-filled field, unlike vendor bills) 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
VAT numbers are now checked through the EU VIES service in a more consistent and user-friendly way. Users see a color-coded status instead of being blocked by errors, with an option to retry when the service times out.
Original PR description
[REF] base_vat, base_vat_autocomplete: always contact VIES the same way, with suds [IMP] base_vat: timeout when contacting VIES. Before that, we relied on the default value of a library, which was too high. [IMP] base_vat: soft VAT validation with VIES VIES validation of a VAT number now puts it in color in the partner's form view. Green means the verification via VIES succeeded ; red means it failed because the services answered the number was wrong ; orange means a timeout occurred and the number could not be checked. Verification of numbers in orange can be attended anew with a dedicated button in the form view. [IMP] base_vat_autocomplete: remove dependency to stdnum library, which was used to contact suds.
Constraint messages are now stored with their related model constraint records, making them easier to manage and translate consistently. This improves maintainability of translations and prepares the system for future cleanup of older constraint handling.
Original PR description
An use a model translation The message is now stored on the ir.model.constraint record Create external id for ir.model.constraint In the future, _constraint will be removed so a second cleanup will occur Task-id: 1999315 Pad: https://pad.odoo.com/p/r.2e88f9120528b70db08ad7d727ab7ccc
Quotation previews now look cleaner by hiding the taxes column when no taxes apply and improving optional product controls. This makes online quotations easier for customers to read and reduces confusion during checkout or quote review.
Original PR description
Description of the issue/feature this PR addresses: <b> Task:</b> https://www.odoo.com/web?#id=2002587&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720 <b> Pad:</b> https://pad.odoo.com/p/r.604d985c5e61bc6fcb470e1e0b92b94c 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
The subscription emails for payment failures, reminders, successful payments, and quote validation were cleaned up for more consistent formatting. This helps customers receive clearer, better-structured communications during key subscription and payment moments.
Original PR description
Pad:https://pad.odoo.com/p/r.087c2346219fd36bfbd5de6a45d76cf3
Task: https://www.odoo.com/web#id=1843176&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720
template - Website Subscription: Payment failure
- Website Subscription: Payment reminder
- Website Subscription: Payment success
- Website Subscription: Quote Validation
In this commit -
- Remove the <p> tag and used <div> and <br\>
- Sequencing the mail header as - name,subject,email_from and to.
TASK: 1843176Mobile users can now access the view switcher more consistently, making it easier to change how records are displayed on smaller screens. The cohort view also shows interval options in a mobile-friendly dropdown, improving navigation and usability.
Original PR description
Task: https://www.odoo.com/web?#id=1857696&action=333&active_id=131&model=project.task&view_type=form&menu_id= Pad: https://pad.odoo.com/p/r.eb67835cd64014ce56f4c0a54881c1e1
Online invoice reports for Mexican electronic invoicing have been updated to display better in the customer portal. The change improves readability and responsiveness for customers viewing invoices on different screen sizes.
Original PR description
task id: https://www.odoo.com/web?#id=39876&view_type=form&model=project.task&action=333&active_id=131&menu_id=4720
Belgian VAT report lines now open the adjustment wizard with the correct default values, helping users enter tax adjustments more reliably. The update also removes references to adjustment taxes that are no longer used in the community version, keeping reporting behavior aligned across editions.
Original PR description
[IMP] l10n_be_reports: apply the right default values when calling the new version of the adjustment wizard from tax report line 61 and 62
The archive and unarchive controls are moved from prominent stat buttons into the Action menu across many Odoo forms, making record pages cleaner and more consistent. Archived records now show a clear "Archived" ribbon, and archive actions better respect each module's business rules.
Original PR description
Purpose ======= While cleaning the stat buttons across all modules, we decided to move the (un)archiving from stat button to actions in the 'Action' dropdown. The goal was to lighten the content of…
Purpose
=======
While cleaning the stat buttons across all modules, we decided
to move the (un)archiving from stat button to actions in the
'Action' dropdown.
The goal was to lighten the content of oe_button_boxes by clearing
out stat buttons.
The general idea is that stat buttons should be a redirection,
either to a set of records or to an alternate view of the current
one (there are some exceptions though).
The toggle_active stat button is an action, quite similar to a
deletion in most cases.
There are two main ways of using the 'active' field:
- archiving a record (often because it cannot be deleted since it
is linked to another record, like a res.partner used in validated
account.invoices)
- activating a record (with configuration objects like currencies,
languages, or taxes)
In the first case, the option is advanced, akin to deletion. Just
like deletion, its place is in the action dropdown, not the
formview itself.
It is nevertheless important to inform the user whether the record
is archived, but it is not necessary to inform him when it isn't.
In the second case (much less common), the 'activation' of a record
can simply be made available by adding the active field directly in
the formview.
Specification
=============
1/ web: Always display (un)archive buttons in Action on form views
Purpose
-------
While cleaning the stat buttons across all modules, we decided to move
the (un)archiving from stat button to actions in the 'Action' dropdown.
Specification
-------------
If the record has an 'active' field, display an action 'Archive' in the
2/ all: Remove active stat button on all views
Purpose
-------
While cleaning the stat buttons across all modules, we
decided to move the (un)archiving from stat button to
actions in the 'Action' dropdown.
Specification
-------------
Remove the 'active' stat buttons in all views
3/ web: Call 'toggle_active' instead of 'write'
Purpose
-------
Currently when clicking on 'Archive' or 'Unarchive' on the list view,
we write directly on the record {'active': False}, instead of calling
toggle_active. Missing that way implementation of numerous business cases.
Example
- Archive a record --> archive its next activities
- (Un)Archive a user --> (Un)Archive its partner
- (Un)Archive a product variant --> (Un)Archive its template if
there is only one variant
- Archive an employee --> Open a wizard to choose an exit plan + describe
the departure reason
- Archive a route --> Archive its procurement rules
- ...
Specification
-------------
- Call toggle_active instead of write when calling toggleActive in the web
client.
- On the other hand, use actionArchive and actionUnarchive to apply the
toggle action on the related records only.
4/ web: Remove toggle_button widget
This widget is not used anymore, as all the stat buttons have been removed
from the views.
5/ base,mail,...: Redisplay active field in some views
Purpose
-------
In the following views, add the 'active' field in the formview
as specified in the screenshots:
account.view_tax_form (account.tax) https://nimb.ws/08WqXP
crm_iap_lead_website.crm_reveal_rule_form (crm.reveal.rule) https://nimb.ws/xPHSiT
delivery.view_delivery_carrier_form (delivery.carrier) https://nimb.ws/yq3eDS
base.view_rule_form (ir.rule) https://nimb.ws/MBi2Ix
lunch.lunch_alert_view_form (lunch.alert) https://nimb.ws/DRdK4Z
mail.mail_blacklist_view_form (mail.blacklist) https://nimb.ws/xBq9ut
base.view_currency_form (res.currency) https://nimb.ws/FXG9oA
base.res_lang_form (res.lang) https://nimb.ws/eSr0dM
6/ web: add a new ribbon widget (POC)
Purpose
-------
The ribbon widget adds a ribbon on the top right of a form
to make some status more visible.
You have to specify the text attribute to show the text on
the ribbon. You can also specify a bg_color attribute to
color the background with a bootstrap background color class.
Note: This is an ugly draft of the final widget, that is supposed
to land in master in a few days. As this PR brings a lot of
functional changes in several files, it has become quite difficult
to maintain it over the days.
The final responsive version will come with:
https://www.odoo.com/web#id=2032621&action=333&active_id=965&model=project.task&view_type=form&menu_id=4720
7/ base,mail,...: Add ribbon widget everywhere on archived records
Purpose
-------
In the following views, add a bg-danger ribbon with label 'Archived'
only visible when active=False:
account.account_tag_view_form (account.account.tag)
analytic.view_account_analytic_account_form (account.analytic.account)
analytic.account_analytic_tag_form_view (account.analytic.tag)
account_asset.view_account_asset_form (account.asset)
account.view_account_position_form (account.fiscal.position)
account.account_incoterms_form (account.incoterms)
account.view_account_journal_form (account.journal)
account.view_payment_term_form (account.payment.term)
website_blog.view_blog_blog_form (blog.blog)
website_blog.view_blog_post_form (blog.post)
calendar.view_calendar_event_form (calendar.event)
crm.crm_case_form_view_leads (crm.lead)
crm.crm_case_form_view_oppor (crm.lead)
crm.crm_lost_reason_view_form (crm.lost.reason)
sales_team.crm_team_view_form (crm.team)
documents.document_view_form (documents.document)
event.view_event_form (event.event)
website_event_track.view_event_track_form (event.track)
fleet.fleet_vehicle_view_form (fleet.vehicle)
fleet.fleet_vehicle_log_contract_view_form (fleet.vehicle.log.contract)
website_forum.view_forum_forum_form (forum.forum)
website_forum.view_forum_post_form (forum.post)
gamification.badge_form_view (gamification.badge)
helpdesk.helpdesk_sla_view_form (helpdesk.sla)
helpdesk.helpdesk_team_view_form (helpdesk.team)
helpdesk.helpdesk_ticket_view_form (helpdesk.ticket)
hr_recruitment.hr_applicant_view_form (hr.applicant)
hr_appraisal.view_hr_appraisal_form (hr.appraisal)
hr_contract.hr_contract_view_form (hr.contract)
hr.view_department_form (hr.department)
hr.view_employee_form (hr.employee)
hr.hr_employee_public_view_form (hr.employee.public)
hr_holidays.edit_holiday_status_form (hr.leave.type)
hr.hr_plan_view_form (hr.plan)
hr_payroll.hr_salary_rule_form (hr.salary.rule)
hr_work_entry.hr_work_entry_type_view_form (hr.work.entry.type)
lunch.lunch_product_view_form (lunch.product)
lunch.lunch_supplier_view_form (lunch.supplier)
mail.mail_activity_type_view_form (mail.activity.type)
mass_mailing.view_mail_mass_mailing_form (mail.mass_mailing)
mass_mailing.view_mail_mass_mailing_list_form (mail.mass_mailing.list)
maintenance.hr_equipment_view_form (maintenance.equipment)
maintenance.maintenance_team_view_form (maintenance.team)
marketing_automation.marketing_campaign_view_form (marketing.campaign)
mrp.mrp_bom_form_view (mrp.bom)
mrp_plm.mrp_eco_view_form (mrp.eco)
mrp.mrp_routing_form_view (mrp.routing)
mrp.mrp_workcenter_view (mrp.workcenter)
point_of_sale.pos_config_view_form (pos.config)
product.product_pricelist_view (product.pricelist)
hr_expense.product_product_expense_form_view (product.product)
product.product_variant_easy_edit_view (product.product)
stock_landed_costs.view_stock_landed_cost_type_form (product.product)
product.product_template_form_view (product.template)
project_forecast.project_forecast_view_form (project.forecast)
project.edit_project (project.project)
project.view_task_form2 (project.task)
industry_fsm_report.project_worksheet_template_view_form (project.worksheet.template)
quality.quality_point_view_form (quality.point)
base.view_res_bank_form (res.bank)
base.view_partner_form (res.partner)
base.view_users_form (res.users)
sale_coupon.sale_coupon_program_view_form_common (sale.coupon.program)
sale_management.sale_order_template_view_form (sale.order.template)
sale_subscription.sale_subscription_alert_view_form (sale.subscription.alert)
sale_subscription.sale_subscription_template_view_form (sale.subscription.template)
sign.sign_request_view_form (sign.request)
sign.sign_template_view_form (sign.template)
website_slides.view_slide_channel_form (slide.channel)
website_slides.view_slide_slide_form (slide.slide)
stock.view_location_form (stock.location)
stock.stock_location_route_form_view (stock.location.route)
stock.view_picking_type_form (stock.picking.type)
stock.view_stock_rule_form (stock.rule)
stock.view_warehouse (stock.warehouse)
stock.view_warehouse_orderpoint_form (stock.warehouse.orderpoint)
survey.survey_form (survey.survey)
website_crm_score.view_crm_score_form (website.crm.score)
website_twitter_wall.website_twitter_wall_view_form (website.twitter.wall)
8/ hr: Fix departure wizard activity generation
Purpose
-------
If the fired employee has no access to the hr.employee model,
the departure wizard will lead to a traceback, as we try to
create an activity on a model for which the user won't be able
to resolve it.
Create an activity on the related partner instead.
9/ web: Make archive:unarchive buttons manage returned actions
Purpose
-------
When calling toggle_active, you may sometimes retrieve an action to
execute. For example, when archiving an employee, it opens a wizard
to provide information about the departure, and choose an offboarding
plan.
This commit modifies the way toggleActive, actionArchive and
actionUnarchive works to manage this behavior.
TaskID: 2030440Payroll now updates worked day details automatically when employee leave is validated. This reduces manual steps and helps ensure payslips reflect approved absences more reliably.
Asset management now offers more flexible handling of vendor bills, depreciation changes, and paused assets. Reporting is also clearer by showing assets without depreciation lines and opening with more useful pivot details by default.
Original PR description
- allow creating one asset per unit when validating the vendor bill, thanks to a new option on the asset category - allow directly setting a new residual value from the "modify depreciation" wizard, from assets form view - display assets with 0 depreciation line as well in assets report - add a 'on hold' status to assets, to pause their depreciation - display pivot view by default when opening the assets report - display more fields by default in assets report's pivot view
Resolved issues and error corrections
This update corrects an internal naming issue in the Mexican localization that affected accounting setup logic after a previous refactoring. It helps ensure the Mexican chart of accounts setup continues to use the intended process without confusion or misrouting.
Original PR description
Issue : https://www.odoo.com/web#id=1875996&action=333&active_id=1278&model=project.task&view_type=form&menu_id=4720 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Fixes a visual issue in the currency list where checkbox controls showed an unwanted box. This makes the Settings > Currency screen cleaner and easier to read for users.
Original PR description
When you go to to the Settings > Currency in the ListView, you can see box in the Checkbox widget. It may be because of the upgrade to the BS4. Pad: https://pad.odoo.com/p/r.402175dbe462b2ce49c3168737238e74 Task: https://www.odoo.com/web?#id=1875848&action=333&active_id=1278&model=project.task&view_type=form&menu_id=4720 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
This fix prevents the timezone mismatch field from showing duplicated or malformed dropdown content in edit mode. Users will see a cleaner, more reliable interface when reviewing or changing timezone-related information.
Original PR description
Description of the issue/feature this PR addresses: Issue: https://www.odoo.com/web?#id=1878484&action=333&active_id=1278&model=project.task&view_type=form&menu_id=4720 Pad: https://pad.odoo.com/p/r.f960ca97f20a62f71b4eb328509434be 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
This update makes the Odoo web editor behave more consistently when users edit rich text content. Lists, tables, images, document icons, keyboard indentation, and pictogram interactions now work more reliably, reducing formatting surprises and editing errors.
Original PR description
Task: https://www.odoo.com/web#id=1852817&action=333&active_id=131&model=project.task&view_type=form&menu_id=4720 Pad: https://pad.odoo.com/p/r.0cb27818c12b310b2a583ab7dcd1ea71 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The Manufacturing app now hides the traceability button on manufacturing orders when the finished product does not use tracking. This prevents users from opening a report that only shows a confusing message with no useful traceability information.
Original PR description
Issue-Link: https://www.odoo.com/web#id=1861929&action=333&active_id=1278&model=project.task&view_type=form&menu_id=4720 Pad-Link: https://pad.odoo.com/p/r.226337b9829f03e6449b4f1ae3262390 Before this commit: If finished product_tracking has been disabled, the traceability report is showing "no operation made on this lot" which has no meaning. After this commit: Traceability stat button on MO has been hidden, if product_tracking is disabled. Issue-ID: 1861929 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The web editor now behaves more reliably when editing formatted content such as images, tables, lists, headings, and smaller text. This reduces layout surprises for users and makes content created in Odoo look more consistent.
Original PR description
Task: https://www.odoo.com/web#id=1852817&action=327&model=project.task&view_type=form&menu_id=4720 Pad: https://pad.odoo.com/p/r.0cb27818c12b310b2a583ab7dcd1ea71 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fixes a portal page layout issue where navigation could accidentally inherit title styling and appear incorrectly on customized websites. Portal navigation now uses a standard layout, improving consistency across portal pages and making search available on mobile.
Original PR description
Description of the issue/feature this PR addresses: The portal navabar was inheriting titles style because it was placed inside an `<h3>` According to WC3 standards, titles can have phrasing content only. Titles reference > https://w3c.github.io/html-reference/h3.html Phrasing content reference > https://w3c.github.io/html-reference/common-models.html#common.elem.phrasing Current behavior before PR: Desired behavior after PR is merged: Wrap the portal navbar inside a default bootstrap structure and adapt the design accordingly Adapt modules that use portals to use the new layout -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Users can now enter the completed quantity in detailed stock operation views after confirming a purchase order. This removes a workflow blocker for receiving and processing purchased goods accurately.
Original PR description
Pad-ID: https://pad.odoo.com/p/r.239301e14ec28e60978a15368b5ccb77 Issue:https://www.odoo.com/web#id=1850364&action=333&active_id=1278&model=project.task&view_type=form&menu_id=4720 Before this commit: After confirming purchase_order, user was not able to enter done_qty in detailed_operation_view After this commit: done_qty issue has been fixed and now user can enter done_qty in detailed_operation_view Issue-ID: 1850364 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This fix prevents Odoo from counting the same chatter message twice in inbox and starred message views. Business users will see message counters that match the actual number of messages, reducing confusion in Discuss notifications.
Original PR description
… channel_starred. Purpose: when one message send through chatter to the recipient, but at the end side(recipient) it show 2 messages. so when channels are channel_inbox or channel_starred then not…
… channel_starred. Purpose: when one message send through chatter to the recipient, but at the end side(recipient) it show 2 messages. so when channels are channel_inbox or channel_starred then not increment needaction counter.otherwise it leads to an inconsistency between the number of messages displayed in the statusbar and the actual messages in Discuss. Related to Issue 1824534 Issue: https://www.odoo.com/web?#id=1824534&view_type=form&model=project.task&action=327&menu_id=4720 Description of the issue/feature this PR addresses: when one message send through chatter to the recipient, but at the end side(recipient) it show 2 messages. Current behavior before PR: when one message send through chatter to the recipient, but at the end side(recipient) it show 2 messages. Desired behavior after PR is merged: when one message send through chatter to the recipient, but at the end side(recipient) it show correct count of messages. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Repair order tags have been adjusted so they appear with the intended visual styling. This fixes an inconsistent label appearance, making tags easier to read and more aligned with the rest of the interface.
Original PR description
**Description of the issue/feature this PR addresses**:
- Task: https://www.odoo.com/web#id=2031724&action=327&model=project.task&view_type=form&menu_id=4720
- Pad: https://pad.odoo.com/p/r.0a20a1dd56975914a2364f394bbf6309
**Description:**
- Tags didn't look the way they were supposed to. Fixed that.
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-prThis fixes an issue where information shown in many-to-many tag fields could disappear after a user clicked Edit. Keeping these labels visible helps users avoid confusion when reviewing or updating records such as product variants.
Original PR description
Task: https://www.odoo.com/web?#id=2008081&action=327&model=project.task&view_type=form&menu_id=4720 Pad: https://pad.odoo.com/p/r.5b580641cfce018848dde681f0a75e68 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
This update improves Anglo-Saxon accounting by matching stock valuation entries with invoice entries, including cases affected by currency exchange rate changes or timing differences between invoices and receipts. It helps prevent small rounding discrepancies and keeps interim stock accounts more accurate and easier to reconcile.
Original PR description
In anglosaxon accounting, perform reconciliation on stock interim account between stock valuation journal items and invoice's journal items.
This fix updates an internal test so it no longer tries to modify source files while running. It supports future build infrastructure where shared source code may be read-only, helping keep automated testing reliable without affecting end users.
Original PR description
Future runbot improvement may share sources between build, meaning that sources will be readonly to avoid any interaction. _touch() was supposed to handle ro filesystem but f7130556 introduced a new test that was not working in this case. Instead of trying to touch file and pseudomocking the result if the filesystem is readonly, this commit add a real patch on getmtime. cherry-pick of b295723c999
This fixes inventory valuation for purchases made in a foreign currency when exchange rates change before invoicing or receiving goods. The system now creates or adjusts accounting entries so stock value matches the invoice cost, improving financial accuracy for real-cost inventory.
Original PR description
[FIX] stock_account: currency rates For purchased products with a perpetal valuation and a real price cost method: when the purchase is made in another currency as the main one, then the currency…
[FIX] stock_account: currency rates For purchased products with a perpetal valuation and a real price cost method: when the purchase is made in another currency as the main one, then the currency rate changes, and the invoice is made in the main currency, a automatic correction account move is now made in stock journal in order to set the value of the received goods to the cost they have on the invoice (thus with the new currency rate). Before that, in this case, the entries in stock journal where not updated, and the valuation of the goods did not match their invoice. [FIX] stock_account: currency rates Buggy behaviour occured when issuing a purchase in another currency, then making the invoice in company currency, changing the currency rate, and finally receiving the goods. Indeed, the stock valuation computed when receiving the products only considered the new currency rate, which could caused the valuation to be totally inconsistent with the invoice, and hence made no sense in perpetal valuation with 'real' cost method. This has been corrected. [IMP] account: new 'quantity' field on account.move Added a 'quantity' field on account.move, defined as the total of quantities of the move's lines. This field is used in stock_account module to ease the correction on valuation moves, allowing to know which part of them has been corrected and which one still needs to be. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Features or functions removed from Odoo
The community Invoicing settings no longer show payment follow-up options, because those capabilities are only available in the enterprise Accounting Reports app. This reduces confusion for users by removing settings that do not apply to the community edition.
Original PR description
task : https://www.odoo.com/web?#id=1835367&view_type=form&model=project.task&action=327&menu_id=4720 pad : https://pad.odoo.com/p/r.92ab3a0cd31b26ffb6efa4f5090f559e