Friday, October 13, 2023
13 changes · master
Enhancements to existing features
The domain selector now handles a wider range of filter rules and gives clearer guidance when a field, operator, or value is invalid. Users benefit from easier editing of advanced filter conditions, cleaner selection controls, and a more consistent interface across related screens.
Original PR description
### Main goals - Make the domain selector be able to display all domains accepted by the class Domain (domain.js) - Improve the edition/selection of values, e.g. for the operators in/not in - Improve…
### Main goals - Make the domain selector be able to display all domains accepted by the class Domain (domain.js) - Improve the edition/selection of values, e.g. for the operators in/not in - Improve the style/dom ### Changes/Specification **Edition of conditions** We call _condition_ a triple (_path_, _operator_, _value_). Each component can be edited via a dedicated _editor_. **Path editor** - a _valid_ path (a string or 0/1) is accepted by the path editor and edited via the model field selector. - an _invalid_ path is displayed with an error message "Invalid field chain" and a clear button. The button clear reset the path to a valid default path (e.g. ID). **Operator editor** - displays a selection of operators determined by the path field type (if any) - a _valid_ operator (see TERM_OPERATORS in expression.py) is added temporarily to the selection if missing - an __invalid_ operator is displayed with an error message "Invalid operator" and a clear button. The button clear reset the operator to a valid default operator (determined by the path field type) **Value editors** - the value editor used is determined by the path field type (if any) and the operator - each value editor has a set of supported value types - a value not supported is displayed with an error message, e.g. "Value not supported", and a clear button. The clear button reset the value to a default value accepted by the editor - (_basic editor_) In general, a supported value is edited via an input or a select/autocomplete dropdown when appropriate or a datetime picker. - editor for _in/not in_ operators: the current value is displayed as a list of tags (removable) and a value can be added via the suitable basic editor. - editor for _between_: two suitable basic editors are displayed **DOM/Style** - The dom has been refactored and now contains less elements/custom classes - The stylesheet has been almost emptied - Bootstrap is used intensively Task IDs: 3507123, 3508940
Odoo has removed older background web service and environment components, replacing related notification handling with newer mechanisms. This helps simplify the platform and reduce maintenance risk, with changes mainly affecting internal web behavior rather than day-to-day business workflows.
Financial reports can now omit lines that have no value when reporting options request it. This makes reports cleaner and easier to review by keeping only lines with meaningful amounts or visible child lines.
Original PR description
In the enterprise PR, we allow to have a new options on reports that can hide line that are equals to zero under certain condition. A line should be visible depending on its value and the ones of its children. For parent lines, it's visible if there is at least one child with a value different from zero or if a child is visible, indicating it's a parent line. For leaf nodes, it's visible if the value is different from zero. This commit add the filter in the account_reports model. task: 3359936 --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Tracked links now count each click separately, even when repeated from the same device. This gives businesses more accurate engagement metrics for campaigns and shared links.
Original PR description
This PR removes filter on ip so that each click should count as one. previously multiple clicks from the same device only counted as one, but now because of the ip removal, they are being counted as many times as you go to the link. task-3328661 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
Project screens now show customer ratings as a clearer score out of 5 instead of a percentage, making feedback easier to understand at a glance. The update also adds helpful placeholders for project stages and task types and reduces unnecessary clickable fields in task lists for a smoother user experience.
Original PR description
The purpose of this commit is to do generic improvements to the project.
In Commit, made the following changes:
- replace the rating % by the value out of 5 in the project kanban card.
- replace the rating % by the value out of 5 and satisfaction by average rating in the
project update right-side panel.
- project field should not be clickable in the task list view.
- add the placeholder in project stages and project task type.
task-2962386Website editors can now move images by dragging directly from anywhere on the image instead of using a separate move handle. This makes page editing more intuitive while preventing the browser's default image dragging from interfering with Odoo's own editor tools.
Original PR description
This commit permits to drag and drop images without using the `o_move_handle`. The user can directly drag the image in edit mode by grabbing the image itself. --- Before this commit when the user was dragging an image in the editor, the image was always dragged from the top middle of the image. Now the user can drag the image from anywhere on it. --- By default, images on websites can be dragged and dropped in browsers. As we have a custom drag & drop system, this commit removes the default drag & drop behavior during the edition of a website page. --- task-3369600
Payment methods are now configured and presented more consistently across checkout, customer portals, and provider settings. This helps customers better understand available payment options and gives businesses clearer payment configuration across sales, invoices, and delivery flows.
Original PR description
task-3516670
Employees can now analyze their own timesheets using pivot and graph views in the Timesheets app. This makes it easier to review time spent across projects and spot patterns without needing custom reports.
Original PR description
Improve added pivot view for my timesheet in the timesheet app. - Before this commit there was no pivot view for my timseet in timesheet app. - In this commit pivot view is added or my timseet in timesheet app. Task-3479322
Website pages must now have a URL, preventing pages from being created or kept without a web address. This simplifies website search behavior and avoids special handling for incomplete page records.
Original PR description
Commit [1] was made to avoid that the search snippet fails when there are pages without URLS. In master this can be reverted and the URL field can be made mandatory. [1]: https://github.com/odoo/odoo/commit/f75ec6131eff9165b06d42d27a49dd756387f4a0 task-3443119
Product label printing now lets users select a pricelist before generating labels. This helps businesses print labels with the correct customer, store, or promotional pricing instead of always using the default product price.
Original PR description
before this commit, on printing product labels there is no option to select the price list, always the printed price is the default product price after this commit, in the label printing wizard the price list field is introduced and user can select the price list before printing the labels  --- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Financial reports can now hide rows with zero values when appropriate, making reports easier to read and focus on meaningful figures. The option is enabled by default for tax reports and can be configured for other reports, with related filter layout improvements.
Original PR description
This PR allow to have a new options on reports that can hide line that are equals to zero under certain conditions. A line should be visible depending on its value and the ones of its children. For parent lines, it's visible if there is at least one child with a value different from zero or if a child is visible, indicating it's a parent line. For leaf nodes, it's visible if the value is different from zero. The option is by default put on tax report but can be applied in the settings of the report Also correcting a indentation problem task: 3359936
Odoo Studio templates are now loaded only when Studio is opened instead of being included in the main application load. This should make the regular backend lighter and faster, while Studio may take slightly more resources when first accessed.
Original PR description
Before this commit, the xml's of all the studio components, that is, used only in the StudioClientAction environment were included into the main `web.assets_backend` bundle. This was because many studio templates inherit from some template in web,mail and web_enterprise. After this commit, we resolve these dependencies the other way around: the relevant dependencies in xml are included in the `web_studio.studio_assets` that is lazy loaded when first entering studio. This is supposed to lighten the main assets bundle, while making the studio assets a bit heavier. Some more granularity is possible by cherry picking which templates are to be effectively included in the studio lazy loaded assets.
The domain selector has been updated across Enterprise apps to match recent platform improvements in editing, layout, and styling. This should make configuration screens and related workflows more consistent and easier to use, with supporting test updates to keep key business flows reliable.
Original PR description
Adapt the code to the changes brought in the domain selector by the corresponding community PR. Task IDs: 3507123, 3508940