Monday, November 29, 2021
7 changes · master
New functionality added to Odoo
Surveys can now show different background images for individual sections, creating a more tailored experience as participants move through questions. When a section has no custom image, the survey’s default background remains in use, with smoother transitions where possible.
Original PR description
This merge adds the background per section feature. If the section to display has a background image configured, the background will be refreshed using that section background image. If the section…
This merge adds the background per section feature. If the section to display has a background image configured, the background will be refreshed using that section background image. If the section has no background, the survey background is used. The background is refreshed only if the previous and the next sections are different. The background is refreshed at the same time that the next question is loaded. To ease technical maintenance and to keep it simple, the background is always faded out on back or if survey has conditional questions. This is to avoid to load all the survey structure and to copy the get_next_question logic in the frontend. When loading the next question, we check that the question that will follow afterwards has the same background. If not, we force the background fade out when user goes to the next question (refresh_background_on_next). Otherwize, we only fade out the question and not the background to keep a smooth transition between questions and/or sections. Note: The next section to display depends on free text (section with description) configuration and on conditional questions. The next section to display can be the next question's section or directly the next question itself (if the question is a section). Task ID: 2225393
Marketing users can now save audience filters in Email Marketing and reuse them across future mailings. This makes it faster to target recurring customer segments without rebuilding the same criteria each time.
Original PR description
Whether targeting business objects or using mailing lists and contacts, marketing users usually refine the audience they're going to reach with a specific mailing thanks to filters. This commit allow users to save filters in mass_mailing to be able to reuse mailing lists and not be forced to recreate the audience they want to target. taskid:2092853 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Enhancements to existing features
Survey creators can now set a different background image for each section, making surveys more visually engaging and better aligned with themed or conditional question flows. When respondents move between sections, the page automatically shows the section-specific background or falls back to the survey's main background if none is set.
Original PR description
Purpose ======= Allow the user to configure a background per section. Can be useful to illustrate a selected theme, especially for survey with conditional questions (e.g.: burger quiz). Specifications ============== This merge adds the background per section feature. If the section to display has a background image configured, the background will be refreshed using that section background image. If the section has no background, the survey background is used. The background is refreshed only if the previous and the next sections are different. The background is refreshed at the same time that the next question is loaded. The next section to display depends on free text (section with description) configuration and on conditional questions. The next section to display can be the next question's section or directly the next question itself (if the question is a section). Link ==== Task ID: 2225393
Resolved issues and error corrections
Improves performance when creating very large batches of records that include certain calculated fields. This reduces long processing times for bulk imports or automated data creation, making large operations complete much faster.
Original PR description
Issue: ------ The `create` method (models.py) doesn't scale correctly (with huge number of values) **when compute store no-readonly field(s) are in values** (at most one). It is due to the method…
Issue: ------ The `create` method (models.py) doesn't scale correctly (with huge number of values) **when compute store no-readonly field(s) are in values** (at most one). It is due to the method `protecting` (api.py) which has a bad complexity in the `create` situation (list of (field, records) pairs as argument): O(r²) with `r` = number of record containing the protected field: List of `len(r)` send to `protecting`, loop of this list (`r` factor), loop on fields (constant factor), create a new frozen set with the previous one (`r` factor). Fix: ---- Decrease the complexity to O(r) by creating a map of set of ids by protected field which allows avoiding recreating a new frozenset for each record (update with tuple of one inside => O(1)). Performance gain: ---------- For a very simple model with only one compute store no-readonly field, and all `create` `values` contains this field. ``` +--------------+---------------+---------------+---------------+----------------+ | Batch -> | 1000 | 10000 | 30000 | 80000 | +--------------+---------------+---------------+---------------+----------------+ | Before (sec) | 0.083 ± 0.006 | 1.433 ± 0.091 | 8.764 ± 0.609 | 94.428 ± 3.021 | | After (sec) | 0.069 ± 0.003 | 0.706 ± 0.006 | 2.188 ± 0.076 | 5.875 ± 0.104 | +--------------+---------------+---------------+---------------+----------------+ ```
This update improves clarity in settings screens by adding better subtitle styling. It also makes sales campaign totals more complete on dashboard buttons, while still respecting each user’s access rights when they open the underlying records.
Marketing automation users can now save and reuse favorite audience filters, matching the experience already available in mass mailing. This makes it easier to manage recurring campaign segments and access them from a new Favorite Filters configuration menu.
Original PR description
this PR allow to save the favourite filter in marketing automation as we have in mass mailing. Task-id: 2092853
The Helpdesk team dashboard cards were redesigned to make key ticket metrics and actions easier to access. Managers and support teams can now quickly jump to important views such as open, urgent, unassigned, failed, closed, satisfaction, and SLA-related tickets directly from the dashboard.
Original PR description
Purpose of the commit is to improve the team kanban card layout on dashboard. task-2531483