Commit Graph
149566 Commits
Author SHA1 Message Date
Xavier BOL (xbo) 50315deaa2 [IMP] sale_project,sale_timesheet: compute project revenues from SO 2022-04-01 15:33:00 +02:00
Xavier BOL (xbo) 42ce97a479 [IMP] sale_project: add general to service method in product
Before this commit, we don't have any method to get a dict containing
the mapping with the invoice_policy and the service_type to get the
service_policy. A mapping method exists for that use case but this
method creates the dict each time and we need to map more than one time.

For those reasons, this commit adds a method to get the dict containing
the `(invoice_policy, service_type)` as key and `service_policy` as
value.

task-2710808
2022-04-01 15:33:00 +02:00
Xavier BOL (xbo) 6ba17be98d [IMP] sale_project: load more SOLs in project update if more than 25
Before this commit, the SOLs displaying in the Sales section of the
right side panel is 25, but if there are more than 25 SOLs linked to a
project, it is not possible to see the others.

This commit adds a button to load the others SOLs if there are more than
25 SOLs linked to the current project.

task-2710808
2022-04-01 15:33:00 +02:00
Xavier BOL (xbo) 3e721c28c4 [IMP] project: add format monetary in project update components 2022-04-01 15:33:00 +02:00
Xavier BOL (xbo) f13568c809 [IMP] project: review project profitability in right side panel
This commit reviews the project profitability displayed in right side
panel of project update kanban view. The goal of this commit is to add
more information to allow the user to see all information concerning the
profitability of his project.

task-2710808
2022-04-01 15:33:00 +02:00
Xavier BOL (xbo) 7f218598fe [IMP] project_purchase: improve performance for purchase_orders_count
Before this commit, when the `purchase_orders_count` field is computed,
we do a search in `purchase.order.line` to get the purchase order linked
to the projects in `self` of the `_compute_purchase_orders_count`
method. However, if no project has AA set this search is useless, we can
directly set `purchase_orders_count` to 0 for all projects because the
linked between the POs and the projects is made with AA of the project.

This commit changes the method to search the PO linked to the projects
only when at least one project has AA set, otherwise we directly set the
`purchase_orders_count` to 0 for all projects contained in `self`.

task-2710808
2022-04-01 15:33:00 +02:00
Xavier BOL (xbo) 265a45a0c6 [FIX] sale_timesheet: fix timesheet_invoice_type compute when amount<0
Before this commit, when the user creates an expense for the project and
reinvoice it. When this expense is approved and a post entry is
generated. An SOL is created in the SO and also a AAL to take into
account the cost. However, the `timesheet_invoice_type` for this AAL is
equal to `service_revenues` even if the amount is less than 0. The
reason is when the AAL is not a timesheet and linked to a SOL
containing a service product than the AAL is considered as a service
revenue even if the amount is less than 0 but in this case, the AAL is a
cost and not a revenue.

This commit fixes this issue by checking if the amount is greater or
equal to 0 to set the `timesheet_invoice_type` to `service_revenues`
otherwise we set to `other_costs`.

task-2710808
2022-04-01 15:33:00 +02:00
Xavier BOL (xbo) 7c3e8cf963 [IMP] sale_{project,timesheet}: get sales order items linked to the project
This commit renames some methods and add a query into timesheets to also
fetch the SOLs linked to the timesheets linked to the projects. So, now
all SOLs selected in the project app for that project will be take into
account.

task-2710808
2022-04-01 15:33:00 +02:00
Xavier BOL (xbo) 4567edf97e [ADD] sale_project_stock: show stock.move when click on SOL in project update
This commit adds an action to allow the user to click on SOL contains
other project than product one to see the `stock.move` related of the SOL
clicked.

task-2710808
2022-04-01 15:32:59 +02:00
Xavier BOL (xbo) 08501fa130 [IMP] project,sale_{project,timesheet}: review 'Sales' section in project update
This commit completly reviews the Sales section. This section will
display all Sales Order Items linked to the current project shown
instead of displaying the sold section with the total sold section.
This section will shown the name and ordered, delivered and
invoiced quantities for each Sales Order Item related.

The name displayed in this section will be clickable if the product linked to
the Sales Order Item is a service one and if there is at least one
timesheet linked.
Finally, this commit also moves the Sales section initially defined in
sale_timesheet module into the `sale_project` one.

task-2710808
2022-04-01 15:32:59 +02:00
Xavier BOL (xbo) 80bf615bbb [REM] project_*,{hr,sale}_timesheet: remove some stat buttons in project update
This commit removes stat buttons displayed in the right side panel in
project update kanban view to prepare the revamp of the content
shown in that project update. Indeed, the content in the right side
panel will show the information shown in those stat buttons but with more
details.

task-2710808
2022-04-01 15:32:59 +02:00
Xavier Morel 6c3bbdbef8 [FIX] core: fix "generator didn't yield" in assertRaises
Because the `savepoint` and `clear` calls are nested inside the
`assertRaises` context, if one of them happens to throw *the exception
we're looking for* the interpreter will jump back to the `with`, the
`assertRaises` will swallow the exception (and count it as a success)
and the function will end having not gone through a `yield`.

This is rather frustrating to debug as it's easy to forget that a
`with` is a control flow structure, leading to a seemingly impossible
error.

We can fix this by initializing and `__enter__`-ing the savepoint
first, but doing this by hand is a bit iffy and not really
future-proof as the addition of more fallible steps during the
initialization phase of `_assertRaises` could lead to the savepoint
not being properly disposed of. Furthermore once in the scope of the
"actual" assertRaises we want the savepoint to unwind first (otherwise
the savepoint won't be rolled back when the exception *we are
expecting* gets raised).

As it turns out `ExitStack` offers the solution to our woes though
it's a bit tricky at first glance: while modifying the cleanup queue
in-place is haram, `pop_all` allows moving cleanup callbacks from one
queue to the next.

This means we can first add the savepoint to one stack and get its
errors (if any) correctly reported, cover the rest of the
initialization, then move the savepoint from one stack to an other, in
order to correctly order the coverage of the `yield` (and the userland
code).

closes odoo/odoo#87733

X-original-commit: b1cd4e4e3c918b4b08d27b30b1017fc898d4b08a
Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
2022-04-01 13:37:21 +02:00
Odoo's Mergebot c8a5766b7e [FW][ADD] fetchmail_outlook, microsoft_outlook: add OAuth authentication
Purpose
=======
As it has been done for Gmail, we want to add the OAuth authentication
for the incoming / outgoing mail server.

Specifications
==============
The user has to create a project on Outlook and fill the credentials
in Odoo. Once it's done, he can create an incoming / outgoing mail
server.

For the authentication flow is a bit different from Gmail. For Outlook
the user is redirected to Outlook where he'll accept the permission.
Once it's done, he's redirected again to the mail server form view and
the tokens are automatically added on the mail server.

Technical
=========
There are 3 tokens used for the OAuth authentication.
1. The authentication code. This one is only used to get the refresh
   token and the first access token. It's the code returned by the user
   browser during the authentication flow.
2. The refresh token. This one will never change once the user is
   authenticated. This token is used to get new access token once they
   are expired.
3. The access token. Those tokens have an expiration date (1 hour) and
   are used in the XOAUTH2 protocol to authenticate the IMAP / SMTP
   connection.

During the authentication process, we can also give a state that will
be returned by the user browser. This state contains
1. The model and the ID of the mail server (as the same mixin manage
   both incoming and outgoing mail server)
2. A CSRF token which sign those values and is verified once the browser
   redirect the user to the Odoo database. This is useful so a malicious
   user can not send a link to an admin to disconnect the mail server.

Task-2751996

closes odoo/odoo#87731

Forward-port-of: odoo/odoo#87682
Forward-port-of: odoo/odoo#87040
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2022-04-01 13:37:17 +02:00
std-odoo bcdf9e12a8 [ADD] fetchmail_outlook, microsoft_outlook: add OAuth authentication
Purpose
=======
As it has been done for Gmail, we want to add the OAuth authentication
for the incoming / outgoing mail server.

Specifications
==============
The user has to create a project on Outlook and fill the credentials
in Odoo. Once it's done, he can create an incoming / outgoing mail
server.

For the authentication flow is a bit different from Gmail. For Outlook
the user is redirected to Outlook where he'll accept the permission.
Once it's done, he's redirected again to the mail server form view and
the tokens are automatically added on the mail server.

Technical
=========
There are 3 tokens used for the OAuth authentication.
1. The authentication code. This one is only used to get the refresh
   token and the first access token. It's the code returned by the user
   browser during the authentication flow.
2. The refresh token. This one will never change once the user is
   authenticated. This token is used to get new access token once they
   are expired.
3. The access token. Those tokens have an expiration date (1 hour) and
   are used in the XOAUTH2 protocol to authenticate the IMAP / SMTP
   connection.

During the authentication process, we can also give a state that will
be returned by the user browser. This state contains
1. The model and the ID of the mail server (as the same mixin manage
   both incoming and outgoing mail server)
2. A CSRF token which sign those values and is verified once the browser
   redirect the user to the Odoo database. This is useful so a malicious
   user can not send a link to an admin to disconnect the mail server.

Task-2751996

X-original-commit: 18dad5b13b0af81ef2089fc039b3a866a2895a53
Part-of: odoo/odoo#87731
2022-04-01 13:37:16 +02:00
std-odoo 1d63e668e2 [IMP] {microsoft, fetchmail}_outlook: do not reset the email config
Purpose
=======
Do not reset the email configuration when unchecking "is Gmail".

Task-2751996

X-original-commit: d65aef9829cf5554c8d4a6c107ba5269a054ed78
Part-of: odoo/odoo#87731
2022-04-01 13:37:16 +02:00
std-odoo fdde704712 [FIX] google_gmail: do not copy the authorization code
Bug
===
When we copy a GMail outgoing / incoming mail server, an error
occurs because we try to refetch the access token, based on the same
authorization code (which can be used only once).

To fix this issue, we do not copy the authorization code (and other
related fields).

Task-2751996

X-original-commit: 47c056215c5f50d8a1d9e862ee275eceefdb09e7
Part-of: odoo/odoo#87731
2022-04-01 13:37:15 +02:00
Kevin Baptiste 6c5f38ae37 [IMP] hr_recruitment: improve flow (back2basics)
* Redesign views
    * New layout for the job kanban card + redesigned menu
* Create new reports
    * Candidate Sources: get a better view on where applicants are
      coming from;
    * Time in Stage: shows how long an applicant is in the current
      stage.
* Archiving a job archives applicants as well

odoo/enterprise#24816
odoo/upgrade#3395

closes odoo/odoo#85479

Taskid: 2738082
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2022-04-01 13:37:09 +02:00
Kevin Baptiste 80c662f808 [IMP] survey: hide website navbar
The website navbar was showing again, whilst it should not.

Taskid: 2738082
Part-of: odoo/odoo#85479
2022-04-01 13:37:08 +02:00
Brieuc-brd dcf3d6e508 [REF] mail: ComposerSuggestionList, review and simplify scss
Part of the overall v16 SCSS optimization/restyle, task-2704984

task-2781992

closes odoo/odoo#87719

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-04-01 12:31:11 +02:00
Brieuc-brd 0edc49c56a [REF] mail: ComposerSuggestion, review and simplify scss
Part of the overall v16 SCSS optimization/restyle, task-2704984

task-2781992

closes odoo/odoo#87534

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-04-01 12:31:07 +02:00
william 08ef4e9223 [IMP] account: detect holes in sequences
The resequence feature and the possibility to edit the invoice number in
draft are powerful flexibility tools. Though, misusing them can lead to
holes in a sequence that can be hard to detect.

This task aims at providing alerts on the dashboard (on Sales and
Purchases journals' cards) highlighting the holes in the sections

_____________

Suppose the following sequence on a journal

BILL/2022/01/0001
BILL/2022/01/0002
BILL/2022/01/0004

> BILL/2022/01/0003 is missing.

Then show a link on this journal's card in the kanban view of journals
(accounting dashboard) mentioning.

> Check the sequence

Pressing the button opens the list view of bills on this specific
journal.

BILL/2022/01/0004 appears in red ; since it is after a hole

task-2767272

closes odoo/odoo#84788

Signed-off-by: Laurent Smet <las@odoo.com>
2022-04-01 12:31:03 +02:00
Aaron Bohy dba9cd97ef [IMP] web: qunit: add tests counter in topbar
This commit adds an information in the topbar (thus always visible)
to indicate the number of tests that have passed, failed and the
number of tests that have been skipped.

closes odoo/odoo#87713

Signed-off-by: Samuel Degueldre <sad@odoo.com>
2022-04-01 10:36:18 +02:00
Leonardo Pavan Rocha e0c922c82a [IMP] google_calendar, hr_holidays, hr_work_entry_holidays: update query count
In 2685472 new computed fields were added in calendar_event. This commit
updates the query counter tests that were failing.

task-2685472

closes odoo/odoo#79654

Related: odoo/upgrade#3182
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2022-04-01 10:36:10 +02:00
Leonardo Pavan Rocha 1744a800dc [IMP] calendar: add discuss video url in calendar
This commit aims to integrate the calendar module with discuss video calls.
Now it is possible to add discuss videocalls by clicking on a button below
the videocall_location field. The discuss videocall_location is a URL that
is computed and it creates a discuss channel only when someone accesses that
URL.

For recurring events, the same discuss channel is used for all events.
However, each event in the recurrency has its own videocall_location URL.
This is done on purpose in order to allow the functionality even if the base
event of the recurrency is deleted. For single events, each event will create
a discuss channel.

task-2685472

Part-of: odoo/odoo#79654
2022-04-01 10:36:09 +02:00
Leonardo Pavan Rocha a338b66bf0 [IMP] web: allow js_class in FormViewDialog
This commit allows custom classes (js_class) to be used in FormViewDialog.

task-2685472

Part-of: odoo/odoo#79654
2022-04-01 10:36:09 +02:00
Leonardo Pavan Rocha 7373cdfdcf [FIX] calendar: title undefined when double clicking event
Currently in calendar if you double click an event in the calendar view, it
opens a dialog with the event title as undefined. This occurs, because the
title is not correctly passed in the context. This commit adds the correct
title to it, therefore fixing the error.

task-2685472

Part-of: odoo/odoo#79654
2022-04-01 10:36:09 +02:00
dbkosky e2d90dee10 [FIX] l10n_it_edi, l10n_it_edi_sdicoop: Translations and better filter names
Italian translation added.

Add string parameter to the fields so that the filter names are more
usable. Since the filter names are taken automatically from the field
names, the string paramter allows us to change the filter names:
L10N It Edi Transaction -> FatturaPA Transaction
L10N It Edi Attachment  -> FatturaPA Attachment
L10N It Send State      -> FatturaPA Send State

closes odoo/odoo#87711

Task-id: 2795241
X-original-commit: 6473aa55f08d130119aceb15deee68eb041bf25e
Signed-off-by: Josse Colpaert <jco@odoo.com>
Signed-off-by: Daniel Kosky (dako) <dako@odoo.com>
2022-04-01 09:38:49 +02:00
Leonardo Pavan Rocha 522f3cc7c7 [IMP] mail: add name argument to create_group
This commit adds a name argument to the create_group method as it is
useful to create a group channel and set its name directly on the
create.

task-2685472

closes odoo/odoo#87703

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-03-31 19:11:48 +02:00
Leonardo Pavan Rocha ed116c735b [IMP] mail: add invitation_url on channel
In mail we currently create the invitation URL by concatenating the values when
needed. However this could be improved so that when this url is used in other
places we don't need to create it again. Therefore it makes sense to have a
computed field that does that for us.

task-2685472

closes odoo/odoo#87701

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-03-31 19:11:44 +02:00
Alexandre Kühn 593d2ae623 [IMP] mail, *: tests: remove fake mail.channel/members field
*: hr_holidays, im_livechat, website_livechat

Task-2810539

closes odoo/odoo#87599

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-03-31 19:11:40 +02:00
Alexandre Kühn 051bca2ecb [IMP] mail: introduce 'ComposerView/activeSuggestion' field
Task-2793280

closes odoo/odoo#87220

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-03-31 19:11:35 +02:00
tsm-odoo a1f7ca7895 [IMP] hr: register m2x avatar employee fake model
In preparation of test adaptation after introducing a new way to
seed test data, the fake model present on the m2x avatar employee test
has been registered to the model definitions instead of being
declared on it's test.

task-2792108

closes odoo/odoo#87665

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-03-31 18:18:14 +02:00
Brieuc-brd 93614481eb [REF] mail: DeleteMessageConfirm, review and simplify scss
Part of the overall v16 SCSS optimization/restyle, task-2704984

task-2781992

closes odoo/odoo#87639

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-03-31 18:18:10 +02:00
Alexandre Kühn 1005423be0 [IMP] mail:tests: replace .click() by click()
Task-2810735

closes odoo/odoo#87618

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-03-31 18:18:06 +02:00
Alexandre Kühn 0e32bb9b68 [IMP] mail: adapt composer suggestion tests to use pyEnv
Task-2793280

closes odoo/odoo#87382

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-03-31 17:25:11 +02:00
Juan Jose Scarafia 06f08f770d [FIX] l10n_ar/cl: starting sequence
When getting l10n_ar/l10n_cl starting_squence check with the proper
company (self.company_id) and not self.env.company_id

We do not put a journal_id anymore as it should take the correct one
automatically in v15.

Original commit d6f4fee58edf103c63836ac488be240961fd671a

closes odoo/odoo#87219

X-original-commit: f2f76dfa195226b7604076830412706447c168f2
Signed-off-by: Josse Colpaert <jco@odoo.com>
2022-03-31 17:25:06 +02:00
Katherine Zaoral 39db0eaff4 [FIX] l10n_ar: share sequences compute sequences
Before this change, we have the errors that documents generated on
pre-printed sales journals mark as unified book were wrongly
named using the wrong doc prefix code.

This was visible thanks to the demo data were we notices that the credit
notes were having FA- doc prefix instead of NC-

This was because we are reusing the shared sequence directly, now we
check and fix the doc prefix for those cases and all documents generated
on shared sequences are properly named.

closes odoo/odoo#86612

X-original-commit: df5bfd22c20d3a3bd72b04acbdae63657e025ce3
Signed-off-by: Josse Colpaert <jco@odoo.com>
2022-03-31 17:25:02 +02:00
william-andre beb6e17066 [FIX] account: remove dead code complete_tax_set
This field was used in version 9.0 [1] to allow users to select their
tax rate, but it was removed in version 12 [2]

[1] https://github.com/odoo/odoo/commit/c04065abd8f62c9a211c8fa824f5eecf68e61b73
[2] https://github.com/odoo/odoo/commit/87f0d2eefb77bfc6a9a0fa7f7dcd1475c7c34639

closes odoo/odoo#80185

Related: odoo/enterprise#22441
Related: odoo/upgrade#3057
Signed-off-by: Quentin De Paoli <qdp@odoo.com>
2022-03-31 17:24:55 +02:00
yhu-odoo 8d0b087525 [IMP] mrp: enable manual consumption on components
Currently, when changing qty_producing on a MO, consumed number of each
component will always be updated. In this commit, we add a new boolean
field manual_consumption to bom.line. If checked, that line won't be
updated when changing qty_producing.
The same but invisible field manual_consumption is also added to each
line on MO. It will use the value on BOM as defualt value. When user
manually set the consued qty, it will be checked automatically. Also,
when user manually update the SML, the field on SM will also be set to
true.

Task-2687494

closes odoo/odoo#80118

Related: odoo/enterprise#25607
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
2022-03-31 17:24:44 +02:00
Sébastien Theys 06cbb5793d [IMP] mail, *: tweak style of messaging menu/notification list items
* = sms, snailmail

task-2789056

closes odoo/odoo#86598

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-03-31 16:28:02 +02:00
Hiral Bhavsar 7bab57a50a [FIX] (im,website)_livechat: visitor country displayed twice in backend
Before this commit:

At least if website_livechat is installed, the livechat visitor (website visitor)
country is displayed twice in channel name: once from the country inside the
name of livechat_visitor and once from the country of the actual
website_visitor.

After this commit:

Livechat visitor country will be displayed only once instead of twice

Task-2668051

closes odoo/odoo#81398

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-03-31 16:27:54 +02:00
William Braeckman e57bdd6daf [FIX] hr: disable create_employee from employee form view
Prior to this commit the create_employee option was enabled by default
even from the employee's form view which would lead to a loop.

closes odoo/odoo#87670

Signed-off-by: Kevin Baptiste <kba@odoo.com>
2022-03-31 15:27:18 +02:00
Thibault Francois f3c14b93d8 [FIX] sale: rouding issue at creation
Use case
--------

Field computed with precompute=True at creation get the value
of the float without beeing rounded this can lead to rounding
issue where the value computed at creation is different from
the value computed later.

This can lead to the following issue
A so line is create with a unit price of 192 and a discount of
74.246 the price subtotal it thus 49.45

Later a invoice is created based on the same unit price and a discount
rounded at 74.25 and thus a subtotal 49.44

Solution
--------

Since the issue is not fixed (yet) in the orm, we have to format the
provided discount before the record creation (and precomputation)
to make sure the decimal precision is properly applied and that
no incoherence is introduced in the final record values.

closes odoo/odoo#87661

X-original-commit: 2257ac71596033d8d9f1deaf642071124817de3f
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2022-03-31 15:27:13 +02:00
Adrien Minet 1775b2e595 [FIX] account_factux: discount taken only for gross price
How to reproduce the bug:

- Install the account app
- Get a FacturX invoice with a discount on item
- Upload the invoice
- Check that the price of the discounted item takes the
  discount into account

Bug:

If you want to upload a FacturX invoice that contains a discount,
Odoo will take the original price into account instead of the
discounted one.

opw-2705291

closes odoo/odoo#87509

X-original-commit: 43fb1c47b4867ac9b1fe7c3dd30e8bed7bd93f13
Signed-off-by: Adrien Minet <admi@odoo.com>
Signed-off-by: William André (wan) <wan@odoo.com>
2022-03-31 15:27:03 +02:00
Leonardo Pavan Rocha 04861eaf9e [IMP] hr_contract: disable email when a contract is about to end
When a contract is about to end, an activity is scheduled for the hr
responsible to act on it. Also, from task 2759601, a new warning was created
showing the contracts that are about to end. Therefore, sending an email to
the hr responsible started being too intrusive. This commit drops the email
sending for this case.

task-2759601

closes odoo/odoo#86379

Related: odoo/upgrade#3359
Related: odoo/enterprise#24287
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2022-03-31 15:26:48 +02:00
tsm-odoo 33867b9f5c [IMP] mail: remove default values from test model definitions
The get_model_definitions method returns default values for each field. Those default
values are wrong most of the time (dynamic values, reference to non created records on
the client side, ...).

task-2792108

closes odoo/odoo#87641

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-03-31 13:33:14 +02:00
Brieuc-brd 4877cc5a11 [IMP] web: bs5 utility-class, add font-style
Define "Bootstrap v5 ready" utility-class to handle font-style.
This class definition can be safely removed after migrating to v5.

This class is needed for https://github.com/odoo/odoo/pull/87639

task-2811202

closes odoo/odoo#87637

Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
2022-03-31 13:33:10 +02:00
Aktiv Softwareand"Aaron Bohy <aab@odoo.com>" abd8773c78 [FIX] web: action service: handle target "main"
The target "main" feature has been lost during the conversion of
the ActionManager into the action service. An action with target
"main" should always clear the breadcrumbs. This commit
re-introduces the feature.

Fixes #83865

closes odoo/odoo#87610

X-original-commit: 78ec7281ed550eb24629c1b81445b753314d292f
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Co-authored-by: "Aaron Bohy <aab@odoo.com>"
2022-03-31 13:33:05 +02:00
Alexandre Kühn c66589a9ac [IMP] mail: remove Thread/compute static method
Task-2806655

closes odoo/odoo#87354

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-03-31 13:33:02 +02:00
Alexandre Kühn 56fe3087c5 [IMP] mail: remove MailTemplateComponent/mailTemplate
Task-2793280

closes odoo/odoo#87344

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-03-31 13:32:58 +02:00