This PR improves several things linked to visitors in the discuss
app:
- Change window header to "Visitor #, country"
- Change operator's name to Online Chat name if defined
- Rename "Public user" to "Visitor #", add country instead of website
- Change name of the thread to "Visitor #, country" (left panel + header)
- Remove "Website" from visitor's name (small and big threads)
part of task-3332872
closesodoo/odoo#125931
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
This PR improves livechat channel kanban:
- Remove image field (always the same and does not bring value)
- Replace the count of operators by the many2many_avatars widget with connected users
- Join button as secondary button, Leave button color should be primary
- Add options from channel card: Ratings + configure
- Compute ratings based on last 2 weeks on channel's card
- Highlight active channels (at least one operator)
part of task-3332872
closesodoo/odoo#125769
Related: odoo/enterprise#42852
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
*: account,event_sale,fleet,hr_attendance,hr_contract,hr_timesheet,
im_livechat,point_of_sale,project
When the user tries to delete a record(s) from the reporting views, this
traceback will be generated.
Steps to produce (Example only):
- Settings > Technical > Actions > Window Actions
- Search for the Work Entries Analysis. Open it and add a 'tree' as view_mode
in that action.
- Payroll > Reporting > Work Entries Analysis menu and select the tree view.
- Select one or more records and try to delete these records.
Error: A traceback appears: "cannot delete from view "hr_work_entry_report"
Handled the unlink access by using their model access of the reporting models.
similarly, this issue resolves in other reporting models.
Sentry-3975590063
closesodoo/odoo#125697
X-original-commit: 209d8c76ce9bb1d6cc7084d55b5623e939af8fbc
Related: odoo/enterprise#42825
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
The issue occurred after the merge of this PR [1]. In that, we removed
the dependency on underscore.js and introduced new functions to the
qweb engine: `range` and `uniqueId`.
The variable named `uniqueId` was clashing with the qweb function
`uniqueId()` that's why variable were getting compiled as a function
instead of the actual value, which led to unexpected behaviour.
This commit renames the uniqueId variable to avoid conflicts with the
qweb function `uniqueId()`.
[1]: https://github.com/odoo/odoo/pull/123018
task-3357115
closesodoo/odoo#124659
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
When there is no valid outgoing mail server and user tries to send email by
'send an invitation email' or 'send password reset instructions' button, it
shows the error in our locolhost.
see this traceback : https://tinyurl.com/2fdn2m5z
steps to reproduce :
1. Go to users in settings and select a user.
2. Click on 'send an invitation email' or 'send password reset instructions'
button
3. the error will occur.
Applying this commit will resolve this issue.
sentry-3961333326
closesodoo/odoo#117613
Signed-off-by: Achraf Ben Azzouz (abz) <abz@odoo.com>
Before this commit, if you have a discount promotion on the order,
adding a free product reward would change the discount incorrectly.
The problem is that in the `_getDiscountableOnSpecific` function the
non-discount rewards weren't excluded from `discountLinesPerReward`.
opw-3276337
closesodoo/odoo#127003
X-original-commit: 914dad0d23df4c3f8a117252a8159c07df9ee8ad
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Signed-off-by: Pedram Bi Ria (pebr) <pebr@odoo.com>
We make the domain selector accept any expressions in the first and
second components of a domain condition. Along the way, we have found
necessary to refactor the Tree type (see domain_tree.js) and use it
directly in the domain selector instead of having yet another auxiliary
structure. Another simplification brought by this commit is that the
virtual operators is, is_not, set, and not_set are introduced earlier
and make possible to simplify the way operators are managed.
closesodoo/odoo#126350
Related: odoo/enterprise#43161
Signed-off-by: Michaël Mattiello (mcm) <mcm@odoo.com>
Some props like className were declared as optional in TagsList while
they are not used by the component. We remove them from the props
declaration.
Part-of: odoo/odoo#126350
We make TagInput use the generic component TagsList. This gives a better
looking/working to the editors used for the operators "in"/"not in" for
char fields.
Part-of: odoo/odoo#126350
A string representation of a domain like "[('bar', '=', false)]" is
evaluated by py.js the same way as "[('bar', '=', False)]".So both domains
are recognized as correct while false is not a valid python expression.
We do the same in domain selector, the expression "false" ("true")
will be understood as "False" (resp. "True").
Part-of: odoo/odoo#126350
The computation of the default value used by an editor used to assume
that the (default) operator is equal. We now pass the operator info to
getDefaultFieldValue in order to be able to have a different default
operator ("in" will become the default operator for relational fields).
Part-of: odoo/odoo#126350
The key negate is defined as mandatory in the definition of the type Tree.
We add them at some places (event if it did not pose a problem for now:
undefined and false are both falsy).
Part-of: odoo/odoo#126350
Before this commit, if a move is followed by a second move, if the destination
location of the first move is changed, and done, the second move will be assigned
and reserving from the new location.
This commit, compares the location destination of the move in `_action_done` with
the move_dest_id source location and breaks the link between them if they don't match,
the first move would trigger push rules if any exist and the destination move is set to MTS
to be able to reserve qty from the its source location.
Other minor improvements:
-Recomputes the state of the move when creating a backorder to correct
the backorder picking state.
-Recompute the state of move_dest_ids linked to PO when cancelling the PO
to show that it is converted to MTS.
closesodoo/odoo#123759
Task: 3321842
Signed-off-by: Arnold Moyaux (arm) <arm@odoo.com>
The `sol_product_many2one` field is a sub many2one field that should
open the proper configuration system, such as the product configurator.
Before this commit, when inputting some data, then clicking on another
notebook tab, we would often see a crash, because the field has been
destroyed (since it is no longer in the current tab) and it tries to
open the configurator, which requires rpcs.
It is usually a problem when a destroyed component tries to perform some
work. Note that it happens at creation and update. Also, the field
overrides some many2one methods that display confirmation dialog. To fix
this, this commit simplifies the field by only calling the configuration
methods when its value has changed. This is a different strategy that
does not interfere with the many2one basic features. Also, it does not
crash since it will only call the configuration methods on patched, so
it is guaranteed to be alive.
It is certainly not a complete solution, since we should probably move the
code somewhere else not in a field widget, but this would require a
redesign of the code, so it is not appropriate in a bug fix anyway.
Note that the tour had to be adapted, since now the methods
_onProductUpdate/_onProductTemplateUpdate are now called in an effect
(so after a render), which is slightly later than before. But the tour
would click on confirm even before the product update code was executed,
which means that the product was not properly configurated.
This is clearly a concurrency problem: the product configuration code
should be properly coordinated with the basic model, but doing so is a
significative change. Also, in practice, it is not worse than before
this commit.
opw 3178297
closesodoo/odoo#127048
X-original-commit: de7a6f5f3d83356eb02f8fc25b4a0b8aabb946b3
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Signed-off-by: Géry Debongnie <ged@odoo.com>
**Summary**
Currently, if you create a credit note/refund and reconcile it directly
with a statement line (without creating a payment), the
credit note/refund ends up in the "reversed" payment state, whereas it
should be "paid".
**Setup**
- Install `account_accountant`
**Steps to reproduce**
- create a credit note/refund and confirm it
- create the corresponding bank statement line
- reconcile those two
Go back to the credit/refund not, you should see that its payment state
is "reversed", instead of "paid".
opw-3328830
closesodoo/odoo#127027
X-original-commit: 2dd3fa7d4d367e38baf529fdde5d18caa2f238cf
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Signed-off-by: Séna Serge Nshimiyimana (sesn) <sesn@odoo.com>
This commit makes the datetime hook independant from the props update
mechanism it previously relied on (onWillStart & onWillUpdateProps) to
update its internal props.
This was an incoming issue as the future relational model will rely on
fine-grained reactivity to update the fields rather than updating the
model and re-rendering all child components (effectively calling
'onWillUpdateProps').
Now, the hook relies on an internal state that tracks whether the props
given by its caller changed from one render to another, which is checked
at render time (i.e. in 'setup' and 'onWillRender').
closesodoo/odoo#125039
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Before this commit, 2 implementations of a "shallowEqual" function
coexisted, one in 'web/core/utils/objects.js' and another in
'web/core/utils/arrays.js'.
This commit only keeps the one in objects.js and makes the other simply
import and export it as well (easier to maintain while also easier to
find for those who want to work with arrays), while also taking an
optional comparison function argument in case the comparison needs to be
more specific (e.g. compare DateTime objects).
Part-of: odoo/odoo#125039
This commit adds the enable_formatting option to integer and float
fields. This allow an input to display and handle unformatted values,
independantly of the localization setting.
A test has been added for each type of field to verify that the
value is entered with the default formatting as 'raw' values.
task-3307126
closesodoo/odoo#121495
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
This commit simply adds documentation in the supportedOptions of the text
field as well as the progressbar field. Since the support of documentation
has been added recently, those options were not yet documented in the
widget declaration.
This will improve the usability of those options in places like Studio
Part-of: odoo/odoo#121495
In this commit, we added a new field in the shipping methods this field can be
used select rules. These rules can only be used when the corresponding SO has
one of the selected shipping methods.
task-3236149
closesodoo/odoo#119320
Signed-off-by: Arnold Moyaux (arm) <arm@odoo.com>
Before, when you click the Reload button at the chart template in the accounting
settings on an already installed CoA that has no changes in the taxes, it will
delete the tax mappings in the fiscal positions.
Apparently the values['tax_ids'] == [] was interpreted by the ORM as remove all
tax mappings instead of do nothing, so we remove the key from the dictionary
when there is nothing to change.
closesodoo/odoo#127008
X-original-commit: ca40db275f4ba8da2d6a2f1bfcb980fb387fc44d
Signed-off-by: Olivier Colson (oco) <oco@odoo.com>
Signed-off-by: Josse Colpaert <jco@odoo.com>
The pos_restaurant first test (test_01_pos_restaurant) has an assertion
that failed due to the fact that the deleteion of an order is
not awaited in the frontend. This led to the tour finishing very fast
after the orm call and the assertion done just after that. We add steps
in this test to see if the orm call has been done propely before ending
the tour.
Runbot Error: 22613, 22614
closesodoo/odoo#126779
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
At the moment, the partner editor in pos does not use the owl
reactivity system, using instead an onchange function on each
input and manually keeping track of state.
This approach is overcomplicated and leads to bugs.
The necessity of this task first appeared because of one such bug,
namely: the `state` input options not changing in order to reflect
the selected `country`.
Instead of finding a patch for this problem, we decided in this PR
to replace the old logic, making use of `useState` and `t-model`.
closesodoo/odoo#126021
Task: 3323874
Related: odoo/enterprise#43372
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Before this commit In the task's form view, the parent field shows the other
task but also shows the current task.
In this commit, the domain is applied, ensuring that the id is not the same
as the current id. As a result, the parent field of the task does not
include itself
task-3330841
closesodoo/odoo#122286
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
Current behaviour:
When creating a new record with a many2many widget, in the modal
window, any modification done after record creation (for example
clicking on the status bar buttons) aren't being saved once we "Save
& Close" the modal window.
Expected behaviour:
All changes should be saved, regardless if we clicked the status
button that trigger *some* action.
Steps to reproduce:
- Install Project
- Settings > Sub-tasks or Task Dependencies
- In a task on a project, add a subtask > New
- Set the title to "Title 1" > Change the stage > Set the title to
"Title 2" > Save & Close
- Observe the title of the task is "Title 1", not "Title 2".
Reason for the problem:
When we click on a status button, since it can trigger *some* action
in the backend, it forces the creation of the record front-end side,
which generates a `resId`. Upon saving & closing the modal window,
the record is not saved, only it's resId is appended to the list of
`many2many` records.
Fix:
Before appending the record to the list, we save the record if it's
dirty.
Affected versions:
- 16.0
- saas-16.1
- saas-16.2
- saas-16.3
- master
opw-3289908
closesodoo/odoo#127009
X-original-commit: 29aeafda0f75764ec5b30147fec422b47a4da164
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Signed-off-by: Piryns Victor (pivi) <pivi@odoo.com>
During the Milk revamp, the dropdown items in the Dashboard's header
lost their horizontal margins. These have been put back by setting a gap
property to the parent.
When in the dashboard view under Sales > Product, the dropdowns had an
awkward spacing between them despite the fix. Another fix was to set
`w-100` to the `.o_field_tags` element. And finally a `.gap-1` is also
added to the latter to give its children some space when multiple tags
are selected.
It was noticed that some CSS, specifically the `.o-filter-value` class,
was not targeting anything. This has been fixed by moving the selector
into its correct parent element.
task-3326566
part of task-3326263
closesodoo/odoo#127010
X-original-commit: bd456bc89f896de6b3d8c040706dc02ab3799e6e
Signed-off-by: Lucas Lefèvre (lul) <lul@odoo.com>
While being logged in on mobile and having a chat window open in the
frontend, the buttons to close the chat window and to go to
the backend — both located on the top-left side of the screen — overlap,
making it impossible to close the chat window.
To solve this issue we've removed the chat window's `.fa-arrow-left`
and replaced it with the `.fa-close` icon on the right which is the
design we already have on desktop. Padding had been removed around
the close button on mobile and has been put back.
task-3120032
closesodoo/odoo#126889
X-original-commit: 870fcceab0c4142035d257b7b6fe6e7fcbf2a372
Related: odoo/enterprise#43485
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Current behaviour:
When reversing a bank statement,
the partner id gets removed
Steps to reproduce:
1. Go to Accounting, Journal Entries
2. Select/Create a bank statement with partner
3. Click on Reverse entry, then Reverse
4. Head back to Journal Entries
5. Reversal of the bank statement has no partner
opw-3345594
closesodoo/odoo#126992
X-original-commit: 72d82ed813c4baa11060ebcd1df6335410c5e337
Signed-off-by: William André (wan) <wan@odoo.com>
This happens because last `<p>` of message was always `inline-block`
to properly position "(edited)". However, this was breaking some
non-editable content that relies on `<p>` default displays (`block`).
This commit fixes the issue by only inlining the last `<p>` of
an edited message. Non-edited message keeps the default styling of
`<p>`.
Also slightly improve alignment of edited on empty body messages.
Related to Task-3374747
closesodoo/odoo#126988
X-original-commit: 92b359347fc3e390a75ef7a27a9fa758a21673dc
Signed-off-by: Matthieu Stockbauer (tsm) <tsm@odoo.com>
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
For task-3347812, we needed to create the same Adapter used in l10n_eg_edi_eta. Moving the adapter to account.tools allows us to reuse the same class in different modules.
closesodoo/odoo#126985
X-original-commit: a88027af5f5eb5d0efb4d2c42d5a179aa9bd2dc1
Related: odoo/enterprise#43457
Signed-off-by: Quentin De Paoli <qdp@odoo.com>
Signed-off-by: Ali Alfie (alal) <alal@odoo.com>
Before this PR, the visitor id was passed to retrieve the
partner avatar which leads to wrong avatar being displayed
in the banner. This PR fixes this issue and adapt the avatar
shape from `rounded-circle` to `rounded` since it was not
adapter after the milk update.
closesodoo/odoo#126969
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
This commit adds a GIF picker in discuss
app. GIF feature makes use of Tenor GIF API [1].
To enable GIF picker in discuss, you must provide
a Tenor GIF API key in the General Settings.
Then the GIF picker is visible in all channels
(chat window and discuss app), next to the emoji picker
button.
[1] https://tenor.com/gifapi/documentation
task-2365705
closesodoo/odoo#116060
Related: odoo/enterprise#41959
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Co-authored-by: Brieuc-brd <brd@odoo.com>
Purpose:
Use the onboarding module to manage onboardings, steps and their progress for the different companies
This PR (and related ENT one) moves these:
* `account`:" invoicing" and "dashboard" + "vendor bill" and "sale_tax" steps
* `sale`: "quotation"
* `account_consolidation`: "dashboard"
* `(account_)payment`: payment provider setup step, used in different modules.
* `website_sale_dashboard`
The onboarding models themselves changed a little to support sharing steps between onboardings or having steps
defined in one module, only to be shown on a panel (`onboarding.onboarding`) in another module, mainly by changing the `onboarding.onboarding` <> `onboarding.onboarding.step` and `onboarding.progress` <> `onboarding.progress.step` relations to m2m.
Task-3025136
See https://github.com/odoo/enterprise/pull/33818
See https://github.com/odoo/upgrade/pull/4021closesodoo/odoo#104223
Related: odoo/enterprise#33818
Related: odoo/upgrade#4021
Signed-off-by: Florian Charlier (flch) <flch@odoo.com>
* = account{_payment}, base, onboarding, payment{_stripe},
sale{_management}, web, website_sale
Use the dedicated onboarding module introduced in 16.0 instead of
the res.company model to store onboarding progress.
It allows
* onboarding steps to be reused across panels
* to support steps that should be completed per-database or per-company
* to clean the res.company model from many fields and methods,
* to remove many views, controllers, actions
Module-specific notes:
* account: We also clean the remaining two steps that are not
part of an accounting panel but make the most sense to be kept here.
* account_payment: Following 8e4e8eb8, the payment provider step is
added to the invoicing onboarding panel. We apply this change here too.
Also impacts the website_sale_dashboard panel (see related ENT PR).
(The "sale tax" one is currently used for to the website sale dashboard).
* payment: Note that the step was already not part of an onboarding
panel within this module.
* website_sale: We clean
* a field not used (The website_sale dashboard onboarding panel used
the payment_provider_onboarding_state field).
* a method that was only called from website_sale_dashboard, so it is
moved there. See related ENT PR.
Includes a few tests.
Moving views/templates/styling, as well as cleaning residual onboarding-related fields and methods in base, including populate.
This also includes restoring the "onboarding_complete" overlay panel
animating it to disappear after a few seconds so that it doesn't hide
text and block buttons to re-open steps.
Task-3025136
Part-of: odoo/odoo#104223
### enable onboarding step sharing
Purpose: Allow to use the same step (and progress) for multiple
onboardings.
This is required for the migration of some onboardings such as the
`account` invoicing and sale `quotation` onboardings which both use
common steps (s.g., "Set up company data").
This is done by mutating the onboarding - onboarding step relation and
progress - progress step models relationships to m2m:
* Progress step records are now linked to several progress records if
the step they track is used in several onboardings.
* There will still be multiple progress step records for per-company
tracking, if applicable.
### Allow steps w/o onboarding
This commit enables creating and tracking the completion of
onboarding steps that are not included in an onboarding panel.
Before this PR, such steps could already be defined and used.
This is the case of the `payment_provider` step from the payment
module, that could be included in an onboarding panel defined
in website_sale_dashboard (both are migrated in later commits of
this PR and related ENT).
### Support changing is_per_company
Having onboarding (steps) being immutably per-company or not
per-company is not convenient. We are here taking advantage of the
migration of onboardings (next commits) to have a working framework
for these changes.
The alternative solution of having to change all onboardings and linked
steps together and ensuring all or none are per-company was in fact
more complex to support and fragile as depending on python constraints
on the many2many relationship.
We also considered it wasn't worth the complexity to identify which
onboarding_progress record could safely be removed when its last
'per-company' step is updated to not per-company.
In that case, all companies will have to close the panel independently,
but the completion of each remaining step will not have to be done for
each company.
### Miscellaneous
#### add safe close action
This eases the handling closing an onboarding panel that
may have been deleted. The code for each panel can
therefore be simplified.
#### add onboarding step form controller
Extracted from `appointment` to be reused in other modules'
onboardings.
We are also cleaning the closing behavior which is no longer
required as dialogs now do close on save/discard.
Tests are added and updated.
Task-3025136
Part-of: odoo/odoo#104223
As we prevented creating multiple records in beaae001 and cleaned the
databases for existing records in odoo/upgrade#4142, we can now safely
remove these checks.
Follow-up of Task-3101666
Task-3025136
Part-of: odoo/odoo#104223
Since [1], an error was introduced when using the translation button on
a list view. This error occurs in a non-deterministic way. The issue
occurs because without the option stayInEdition when saving the record
before opening the translation dialog, the row is switch to readonly,
and the translation button is not opened.
This occurs in a non-deterministic way because there is a mutex in a
mutex. When switching the modes (in a save with mutex) a second save is
perform (with also a mutex), this commit will also fix this issue.
runbot-issue-id: 22339
1: e2d28e269dclosesodoo/odoo#126942
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
When we include the author in the recipients of the quotation email of a repair order he doesn't receive the email.
Steps to reproduce the error :
1- create a repiar order
2- add the author in the list of recipients
3- send the email
The origin of the problem is that mail_notify_author=False , se we need to add it as True when we have the author in the recipients.
Similar old fix : https://github.com/odoo/odoo/commit/f49dbf595c870b682f36c11443c9cf1a9a027474
opw-3295744
closesodoo/odoo#126986
X-original-commit: d4d48526867e93295d93d4504e824cfdc2b146a7
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Signed-off-by: Mahdi Cheikh Rouhou (macr) <macr@odoo.com>
Steps to reproduce:
-------------------
- go to Time Off / Configuration / Public Holidays;
- create a public holiday (for one day):
start = 00:00:00
end = 23:59:59
- go to Time Off dashboard.
Issue:
------
The description of this public holiday is not correct.
The display shows that the public holiday is two days instead of one.
Cause:
------
When recording a public holiday, dates are saved in UTC.
Depending on the offset (UTC offset), this can change the day.
When we send the date in iso format to the frontend,
we modify the hours, but not the day.
Solution:
---------
Apply the employee's timezone to the datetime object
before sending it to the frontend.
Note:
-----
The correction is on the server side,
as we use the `combine` method of the datetime object
before sending the result to the frontend.
Indeed, we modify the times and lose the information
needed to apply the timezone afterwards.
opw-3381894
closesodoo/odoo#126983
X-original-commit: 1268502b813d9b9173edb3851faef965df6be6fe
Signed-off-by: Kevin Baptiste <kba@odoo.com>
Signed-off-by: Thomas Lefebvre (thle) <thle@odoo.com>
Field `product.product.lst_price` is not recomputed after changing
`product.template.attribute.value.price_extra`.
Computation of `product.product.lst_price` is not triggered because
`product.product.price_extra` is not recomputed because of the missing
decorator.
closesodoo/odoo#126968
X-original-commit: c7034cb9973532da8011f5fc78d50d859b704500
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
Before this PR, the "unknown" im status was not properly
displayed. This commit ensures the question mark icon is displayed
when no im_status is available.
closesodoo/odoo#126958
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Steps to reproduce:
- Install the module `crm_livechat`
- Activate another language (e.g. fr_FR)
- Open a new incognito window and go to the website
- On website, switch to the activated language
- Open contact page
- Open the chatbot
Issue:
The chatbot is displayed in `en_US`.
Cause:
The chatbot is displayed in the current user language (not website
language).
Public user have by default `en_US` as language.
Solution:
Retrieve the chatbot with the website activated language if set,
otherwise, retrieve the chatbot in the user language.
Fallback on `en_US`.
opw-3284807
closesodoo/odoo#126594
X-original-commit: cb9c003700d2d8eb3be326260bae5fa5e599b89c
Signed-off-by: Matthieu Stockbauer (tsm) <tsm@odoo.com>
Signed-off-by: Nasreddin Boulif (bon) <bon@odoo.com>
Since [1], a test introduced in [2] was failing undeterministically.
**Explanation**
Commit [1] introduced a positioning recomputation when a load event
occur in the target's document.
The failing test in [2] loads an inline stylesheet inside of an iframe
without waiting for it to be loaded.
When the test failed it was because of the "load" event of the
aforementioned stylesheet that occured at an inappropriate moment.
Now the test awaits for this event.
Note that within the same conditions in the real world, we want to
make sure the popper is repositioned.
So this current fix is a bit cheating but the test is about testing
an unrelated behavior, so this is acceptable IMO.
Runbot error id: 22544
[1]: 532c4cfa4e60bc9531
[2]: 208a1277750d63eef3
closesodoo/odoo#126938
X-original-commit: 3ca170bf31ca6e6f12293f0dabe106d385773333
Signed-off-by: Michaël Mattiello (mcm) <mcm@odoo.com>
This PR rename the search filter of the session history view
from "Attendees" to "Participant" as it makes more sense in
this context.
part of task-3332872
closesodoo/odoo#126937
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Before this commit, when editing a message, it was not possible
to add new mentions.
This commit adds the support to add new mentions when editing the
message.
Note that mentions added from editing message won't notify them:
it's only at creation of message that mentioned users are notified.
task-3329714
closesodoo/odoo#126888
X-original-commit: 1fe935d273142064784b9ecff2fff1c34e91064f
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>