Commit Graph
144319 Commits
Author SHA1 Message Date
Ivan Yelizariev 99787182e4 [FIX] base: skip unneeded update_list call
`update_list` is an expensive operation and could be avoided when no modules are
updated. Particually, it speeds up initial theme installation on website, which
has following code:

```
    themes.filtered(lambda m: m.state == 'installed').button_upgrade()
```

Benchmark for Odoo 15: `/website/configurator_apply` spends 1.3 sec for unneeded
`update_list` call.

closes odoo/odoo#75140

X-original-commit: 82ba4994e54fc46cc55a463629727e840349bb6e
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
Signed-off-by: Ivan Yelizariev // IEL <yelizariev@users.noreply.github.com>
2021-08-16 11:01:44 +00:00
Ivan Yelizariev 45ab7d954b [FIX] mass_mailing: properly handle multiple bounced_partner
It may be a recordset in case of partner duplicates. The variable
bounced_partner is simple search by email:

https://github.com/odoo/odoo/blob/72b5a17fc0e6f439d462647a7b55c9a26235a8df/addons/mail/models/mail_thread.py#L1349

closes odoo/odoo#75139

X-original-commit: 9c827ff7c5e69ba97105e36bf43c7d44860981dc
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Signed-off-by: Ivan Yelizariev // IEL <yelizariev@users.noreply.github.com>
2021-08-16 11:00:35 +00:00
Biruk Haileye Tabor 7f37d81d11 [CLA] sign the CLA for bhtabor
closes odoo/odoo#75135

X-original-commit: 6968c6c5e2f0f3b5f157dff3865b21e5d818b4d4
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2021-08-16 10:36:39 +00:00
Aurélien (avd) 413e625322 [IMP] stock: various optimizations when validating inventory.
Backport of 14.0 PR odoo/odoo#73082 with some slight changes.

Backport of master PR odoo/odoo#62083.

Improve stock.picking._compute_state by computing pickings new state conditions
beforehand. This avoids looping through picking.move_lines for each
condition for each picking.

opw-2613931

closes odoo/odoo#75125

X-original-commit: dca7119f6fe4f9e66c3ecc58f204420e2ad805cd
Signed-off-by: Rémy Voet <ryv-odoo@users.noreply.github.com>
Signed-off-by: William Henrotin <Whenrow@users.noreply.github.com>
2021-08-16 09:38:43 +00:00
Rémy Voet (ryv) 7b7f65d504 [IMP] mrp: improve bom filter line by variant feature
On BoM, a component line can be filter out depending
of the product variant to manufacture
(with "Apply on Variant" field).

Extend this feature to operation and byproduct line.

task-2614126

closes odoo/odoo#74973

Signed-off-by: William Henrotin <Whenrow@users.noreply.github.com>
2021-08-16 07:20:03 +00:00
Quentin Wolfs e2f59a6dd1 [IMP] stock: traceability report origin
Add reference of the traceability report's origin (production.lot,
manufacturing order, picking, ...) to the end of the
report.
Change the layout a bit so the data isn't squashed by
the border.

Task-2467686

closes odoo/odoo#74120

Signed-off-by: William Henrotin <Whenrow@users.noreply.github.com>
2021-08-16 08:14:09 +00:00
Quentin Wolfs ff16769cc4 [IMP] stock: send mass mailing from picking
Add mass mailing to the picking list view like in CRM

Task-2467686
2021-08-12 06:34:04 +00:00
Quentin Wolfs 5af43def0c [IMP] stock: add delivery address on lot
In the case of a serial number, add delivery address partner_id of most
recent delivery to lot view

Task-2467686
2021-08-12 06:34:04 +00:00
Quentin Wolfs e68ec01b1b [IMP] repair: add link from lot to repair orders
Add links to repair orders in which the tracked lot was consumed

Task-2467686
2021-08-12 06:34:04 +00:00
Quentin Wolfs 4e39893706 [IMP] stock: add link from lot to deliveries
Add links from the production_lot view to the final deliveries of either
the tracked lot or the final product in which this lot was used

Task-2467686
2021-08-12 06:34:04 +00:00
yhu-odoo af13e76629 [IMP] stock: delivery slip address format
Make delivery slip show addresses the same way as picking operations

Task 2334764

closes odoo/odoo#67776

Signed-off-by: William Henrotin <Whenrow@users.noreply.github.com>
2021-06-24 10:40:35 +00:00
yhu-odoo 825bc6b1d7 [IMP] stock: set partner for inter-warehouse transfers
when we have wh1 resupply form wh2, two transfers will be created. One
delivery from wh2 to transit location, one receipt from transit location
to wh1. Both transders don't have receive from/deviver to. In this
commit, we set the corresponding warehouse address as receive
from/deliver to.

Task 2334764
2021-06-22 13:50:52 +00:00
yhu-odoo 94b9906ce0 [FIX] stock: wrong contact on picking when manual replenish
When do a manual replenishment, we set the responsible persion of the
product to be the partner of the procurement group. Then this parnter_id
is propagated to stock.move and then stock.picking. So the responsible
person will be shown on the picking form as contact person.
To fix, remove it when creating procuremnet group.

Task-2334764
PR #67776
2021-06-22 13:50:52 +00:00
Aaron Bohy 436c5023d7 [IMP] odoo: models: add field name in field descr
The fields dict maps field names to their description. Before this
commit, the field name wasn't specified in the description, meaning
that we could never manipulate the field description without its
key, which would often be convenient.

closes odoo/odoo#75121

Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2021-08-16 09:02:47 +00:00
Fabien Pinckaers 61bd712459 [IMP] website_event_track: container-fluid for agenda as it can have a lot of columns
closes odoo/odoo#75082

Signed-off-by: Fabien Pinckaers <fpodoo@users.noreply.github.com>
2021-08-13 11:45:34 +00:00
Nicolas Bayet 072c038df5 [FIX] web_editor: prevent Odoo editor hints on technical elements
Some templates contain empty <li> elements for styling purposes
only and should be blacklisted in the context of Odoo editor hints
as these elements are not editable.

task-2550858

closes odoo/odoo#74944

Signed-off-by: Antoine Guenet <Zinston@users.noreply.github.com>
2021-08-16 07:13:23 +00:00
Nicolas Bayet a51df6c850 [FIX] web_editor: disable Powerbox in Odoo fields that are not html
If the active element is an Odoo field (ie. a field with the
`data-oe-model` attribute) it means the content should not be
considered html, unless its type is specifically `html`.

If the Odoo field is of the `html` type, the Powerbox should only
be triggered if the active element is _within_ that field rather
than _being_ the field itself.

task-2550858
2021-08-16 07:12:32 +00:00
Jeremy Kersten d310a7adc6 [IMP] website: handle images_preview_theme for recommended_themes
closes odoo/odoo#74887

Related: odoo/design-themes#482
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2021-08-10 09:37:48 +00:00
Andrea Grazioso (agr-odoo) 9e7c4a5d33 [FIX] point_of_sale: fix hitting backspace on 0 quantity line
Fine tuning of 02d9b51e43904420afe31e1f65ea455e3ed2c8ea

Steps:
- Install l10n_fr_pos_cert
- Open POS session with French company
- Add product
- Hit backspace: set new quantity to 0
- Hit backspace again

Error will be shown. This occur because `event.detail.buffer` might be null

closes odoo/odoo#74852

X-original-commit: ba5acd2822784a3ac5e517574ba76f5b350337af
Signed-off-by: agr-odoo <agr-odoo@users.noreply.github.com>
2021-08-09 09:58:02 +00:00
std-odoo 99d53cf473 [FIX] website_crm_partner_assign: fix a traceback when null probability
Bug
===
1. Login as "Portal"
2. Go to "/my/opportunity"
3. Create an opportunity
4. Edit this opportunity from the frontend and set the probability empty
=> Save, an error is raised

Technical
=========
The probability is set to "None" and not to "False", therefor the
verification "probability >= 100" in the write method of the lead will
raise an error.

By using False instead of None, this verification will work.

Task-2613208

closes odoo/odoo#75100

X-original-commit: e58048350b670b88c31c88cc57cdf6cc38b22f80
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2021-08-13 16:17:15 +00:00
Julien Banken b6974528f9 [FIX] survey: add support for 'disabled' attribute on buttons (in views)
In the xml file of the list view, it is possible to define a button that
will be placed in a new column. When the user clicks on a button from a
list view, the script will execute the action linked to the corresponding
button. Unfortunately, all the buttons of the list views are not necessary
linked to an action: This is for example the case for the trophy icon of
the survey module. An exception can hence be thrown if the user clicks on
such button.

To solve the issue, we will add the 'disabled' property support for the
buttons and we will add that property to the buttons that do not have
an action. With this property, the script will bind no listener to the
button and it will hence not call the listener causing the error.

task-2612033

closes odoo/odoo#75096

X-original-commit: c698d589e7dfa6fe3df8b4014fe30627693e9043
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2021-08-13 15:34:46 +00:00
Goffin Simon c9534d2512 [FIX] website_slides: Translation issue
Steps to reproduce the bug:

- Website in another language than English
- Go to Courses (elarning) and share a title by email
- The "Thank you" message is in English no matter what the language of the website is

opw:2574385

closes odoo/odoo#75062

X-original-commit: b158846d6264befc8e0ba46da839d50319e85d80
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2021-08-13 07:51:35 +00:00
Pablo Paez 8340a1f6ce [CLA] add new member to Adhoc CLA
closes odoo/odoo#74995

X-original-commit: 99a77602b647a2a0c904610a51b31929b3706a93
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2021-08-12 08:54:17 +00:00
Kevin Baptiste 73ed1ffa0b [FIX] hr: make image zoomable again
The zoom feature of Image Widget expects a field `image_` being present
in the view to check if a zoomable image is available or not.

Since #69819 the image field was replaced by an avatar one thus breaking
the zoom.

This commit also puts the Chat icon on kanban cards of
hr.employee.public in the bottom right.

closes odoo/odoo#75099

Taskid: 2622671
X-original-commit: ae8a4b51e801a06d9d7a13be3658d5b6828da7e9
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2021-08-13 16:01:04 +00:00
Habib (ayh) 44029495bc [IMP] base, account, *: simplify multi currency setup
Automatically activate `group_multi_currency` if there is more than one active currency,
deactivate it if there is only one active currency

retain sale/pos feature of activating group_product_pricelist
adapt tests accordingly

Task 2610735

closes odoo/odoo#74396

Related: odoo/enterprise#20106
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2021-08-13 14:50:44 +00:00
Habib (ayh) 4f19f29a09 [IMP] base: use helper methods for implied groups
In this PR, we add a helper method to add/remove implied groups - update the base to use these instead

Task 2610735
2021-08-13 14:50:44 +00:00
Valentin Chevalier be7fced806 [ADD] product_images: Add a new module to fetch images using barcode
Users will now have a quick way to add images on their products in batches, allowing fast visual identification of them.

task-2518519

closes odoo/odoo#70198

Signed-off-by: Antoine Vandevenne (anv) <AntoineVDV@users.noreply.github.com>
2021-08-13 15:28:22 +00:00
Odoo's Mergebot 0f4dfb4459 [MERGE] mail: allow SSL authentication and stop spoofing
Purpose
=======

The global purpose of this PR is to improve the score of the emails sent by
Odoo as well as allowing to authenticate the Odoo server with SSL certificate.

SSL authentication
==================

We want to be able to authenticate our servers with a certificate for the
entire domain name instead of using an username and a password. That way
we will be able to configure an SMTP relay (on Office 365 e.g.) based on an
SSL certificate instead of an hard-coded IP address.

The host name of the server is defined in the MX DNS record on your domain.
The certificate must be valid for your domain name.

e.g.
>  Host: openerp-org.mail.protection.outlook.com
    Port: 25
    Username: \<keep it blank>
    Password: \<keep it blank>
    Security: STARTTLS
    Email: admin@odoobe.com

No spoofing
===========

Before, we were spoofing the FROM headers all the times. E.g., if someone has
an email address outside of the current email server (e.g. `test@gmail.com`)
we sent it using the default mail server and we spoofed the FROM. This causes
some issues, because emails may be marked as spam by the email clients. A
small fix for stable was merged at odoo/odoo#69218 and will be reverted as this merge
improves that behavior.

Now, we try to *not* spoof the mail from in the SMTP protocol. For that purpose
we define a default email address which is used when no mail server is
available for the sender email address. In that case, the email address
of the sender will be "encapsulated" in the default email address
(e.g. `"Admin (admin@gmail.com)" <notifications@odoo.com>`).

To know for which email address an outgoing mail server can be used, we use a
field "`from_filter`" which can be either an complete email address or a
domain name.

The headers are changed following this heuristic

1. We first look for a mail server which match the entire mail FROM
   in that case, we do not change the email header (not needed)
2. If not found, we search a mail server which match the domain name of
   the mail from (do not need to change the headers in that case)
3. If not found, find the mail server linked to the "notifications"
   email (defined in the system parameter). Then change the FROM header
   to the notifications email, and put the old one in the name part of
   this header.
   e.g.
      Initial mail from: "Admin" < admin@example.com >
      Final mail from:   "Admin (admin@odoo.com)" < notifications@odoo.com >
4. If no notifications email is configured or if no mail server are
   found for the notifications email, fallback to the old system and
   spoof the FROM header. In that case we do not have the choice if we
   want to send the email, he will probably be marked as spam.

LINKS

Task-2367946

closes odoo/odoo#61853

Related: odoo/upgrade#1903
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2021-08-13 17:33:50 +02:00
Stephane Debauche 347111c7b8 [FIX] mail_plugin: improve error management when enriching companies
Purpose
=======

If the partner was removed after the user open the email on the Gmail
side, return a clean error message instead of raising a traceback.

Add translations for the new strings in the plugin.

Links
=====

Task-2567566
Followup of odoo/odoo#73653
See odoo/mail-client-extensions#15

closes odoo/odoo#75076

X-original-commit: e782c85b95aed30dd38bd30c29e57a9acc540a49
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2021-08-13 13:38:42 +00:00
std-odoo 5c44c5438d [IMP] mass_mailing: improve the default mail FROM used for mailing
Purpose
=======
Now that we try to not spoof the FROM SMTP headers, we want to improve
the default mail FROM used in mailing. By default, it's the email of
the current user, but if no mail server is configured for it, we will
use the notification email instead and encapsulate the email of the
user in it.

e.g.:
    Original: "Admin" < admin@odoo.com >
    Final: "Admin (admin@odoo.com)" < notifications@odoo.com >

Show a warning message if the configured mail server can not be used
for the email from.

Task-2367946
odoo/odoo#61853
odoo/upgrade#1903
2021-08-13 12:27:09 +00:00
std-odoo 1b9dd118cb [IMP] base: do no spoof the mail from headers when sending emails
PURPOSE
=======
We want to increase the score of the emails sent by Odoo and we want to
avoid them to be marked as spam by the mail clients (gmail, outook...).

SPECIFICATIONS
===============
From filter
-----------
Add a new field on the "ir.mail_server" which is "from_filter". This
field defines the email address for which the outgoing email server can
be used.

The "from_filter" can either define an email address or a domain name.

Use the system parameter "mail.default.from" which allow us to define
a default email address which is used to encapsulate the emails
(default: notifications@<catch.all.domain>).

Mail server priorities
----------------------
When sending an email, we read the FROM header and,
- We first look for a mail server which match the entire mail FROM
  in that case, we do not change the email header (not needed)
- If not found, we search a mail server which matches the domain name of
  the mail from (do not need to change the headers in that case)
- If not found, find the mail server linked to the "notifications"
  email (defined in the system parameter). Then change the FROM header
  to the notification email, and put the old one in the name part of
  this header.
  E.g.
      Initial mail from: "Admin" < admin@example.com >
      Final mail from:   "Admin (admin@odoo.com)" < notifications@odoo.com >
- If no notification email is configured or if no mail server are
  found for the notification email, fallback to the old system and
  spoof the FROM header. In that case we do not have the choice if we
  want to send the email, he will probably be marked as spam.

Sending method priority
-----------------------
In the mail server models, we defined some priorities,
1. Forced SMTP session
2. Forced mail server
3. Try to find the best mail server (see "Mail server priorities")
4. If not found, read the odoo-bin arguments

Bounce
------
As there's no standard for bounce address, we put it in the envelope
(smtp_from). But in some case, it might be considered as spoofing. So,
we use the bounce address ONLY if the mail server is configured for the
entire domain name.

One behavior which might be broken is the following; we send an email as
"std@gmail.com" and the bounce address is on the domain "odoo.com".
Before we received the bounce notifications but we were spoofing the
local part and the domain.

Now
- if a mail server is configured for GMAIL, we do not use the bounce
  address (and we might not receive the bounce notification)
- if no mail server is configured for GMAIL, but one is configured for
  "odoo.com"
    - the FROM header will be "notifications@odoo.com"
    - the FROM envelope will be the bounce address
=> In this situation we are spoofing only the local part of the email
   but it's allowed as the mail server is configured for the entire
   domain name

LINKS
=====

Task-2367946
odoo/odoo#61853
odoo/upgrade#1903
2021-08-13 12:27:04 +00:00
std-odoo fced25d086 [IMP] mail: split the code of "send_email" to prepare the next commit
Purpose
=======
Split the code of "send_email" in "ir.mail_server" so the changes will
be easier to review.

Task-2367946
odoo/odoo#61853
odoo/upgrade#1903
2021-08-13 12:27:01 +00:00
std-odoo a4d513034e [IMP] base: SMTP authentication with SSL certificates
PURPOSE
=======
We want to be able to authenticate our servers with a certificate
for the entire domain name instead of using a username and a password.

SPECIFICATIONS
==============
Add 2 fields on the `ir.mail_server`, which are
- the SSL certificate
- the SSL private key

When we uploaded both files, we use them to authenticate the client of
the SSL connection.

Add 2 options on the Odoo binary, so we can provide the filenames of both
files (like we do for the SMTP username/password).

SETTINGS
========
Note that this type of authentication doesn't work locally for Microsoft
office 365. It seems like Microsoft is blocking non-static IP address
(not able to ping the host locally, but it works on the server).

The host name of the server is defined in the MX DNS record. Then, on
Office 365 you must create an SMTP relay based on a certificate and not
based on a hard coded IP address. The certificate must be valid for your
domain name.

e.g.
    Host: openerp-org.mail.protection.outlook.com
    Port: 25
    Username: <keep it blank>
    Password: <keep it blank>
    Security: STARTTLS
    Email: admin@odoobe.com

New Python dependence
=====================
The standard SSL python library only takes a filename to the certificate
/ private key.

But, we do not want to use attachments and take the full path to the
file (in the filestore) or to create temporary file.

So, we need to use a new library "PyOpenSSL" which allows you to load
a certificate / private key from a byte array.

To make this library work with SMTPLIB we use a wrapper developed
in urllib3 (PyOpenSSLContext).

LINKS
=====

Task-2367946
odoo/odoo#61853
odoo/upgrade#1903
2021-08-13 12:26:55 +00:00
std-odoo 10a1466cd5 [REM] base: revert the rewriting of the FROM of the emails sent
Purpose
=======
Revert the commit a757cab857
because the rewriting of the FROM of the emails sent will
be done in a smarter way in master.

Task-2367946
odoo/odoo#61853
odoo/upgrade#1903
2021-08-13 12:26:16 +00:00
Julien Banken 1ecca57619 [IMP] mass_mailing: improve the mailing list contacts form view
This commit improves the form view of 'Mailing List Contacts'. It will:
- Add a color picker on the tag ('tag_ids').
- Make the bouncing counter ('message_bounce') unmodifiable.
- Make the creation date ('create_date') and the bouncing counter
  ('message_bounce') invisible when the user creates a new record.

task-2611112

closes odoo/odoo#74440

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2021-08-13 09:31:02 +00:00
Krupal Oza ce1c09dec6 [IMP] crm: include probability as a confidence level criterion when merging
Currently,when merging opportunities, they are sorted by "confidence level",
which has following criterion for sorting:
  -  type (active opportunity is best, inactive opportunity is better)
  -  stage sequence (higher is better)
  -  ID (older is better)

For better sorting, this commit improves the confidence level by adding
probability as a third criterion, and so now criterion for sorting is:
  -  type (active opportunity is best, inactive opportunity is better)
  -  stage sequence (higher is better)
  -  probability (higher is better)
  -  ID (older is better)

This commit also adapts the test cases accordingly which now considers
probability as a factor for calculating confidence level.

Task-2198562
PR odoo/odoo#51893

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2021-08-13 13:30:49 +00:00
Thibault Delavallée 7894dc7a19 [IMP] crm: improve test data probability usage
Purpose of this merge is to force some probabilities on leads used as data
in various tests. That way when dealing with probabilities changes in tests
are easier to spot and understand.

Also fix some docstrings about stage sequence which were incorrect.

No tests has been changed, purpose was to set probabilities that do not
change any test output.

Task-2198562
PR odoo/odoo#51893
2021-08-13 13:12:44 +00:00
Touati Djamel (otd) af9cdeae15 [FIX] purchase_stock: add the partner_id to the price difference lines
Steps to reproduce the bug:
- Create a storable product, e.g:”Product A”, with a AVCO + Automated category
- Make sure to assign an account in the price difference account field
- Create an RFQ with the “Product A”
- Confirm RFQ and receive the product
- Create the vendor bill and edit to change the unit cost from 55 to 56
- Post the bill
- Check journal items

Problem:
Price difference accounts have no partner_id

opw-2616388

closes odoo/odoo#75085

X-original-commit: 75b45e736bde32e264e7e660b4626142d8f05df2
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
2021-08-13 12:09:20 +00:00
JF Aubert b4cac8707b [FIX] stock: Fix forecast availability unit of measure mismatch
reserved_availability is expressed in move uom
forecast_availability must be in product base uom

closes odoo/odoo#75077

X-original-commit: fa9abcc1b105c07e1eaf6bdd3010abe19a056088
Signed-off-by: Rémy Voet <ryv-odoo@users.noreply.github.com>
2021-08-13 11:05:49 +00:00
Tiffany Chang (tic) 5cf8fb31bb [FIX] mrp: correctly copy non-backordered MO
Steps to reproduce:
Step 1: make a MO and create less than the quantity to produce
Step 2: Mark As Done (with no backorder)
Step 3: duplicate the MO and try to change the quantity to produce

Expected result: qty to produce changes as expected
Actual result: server error

Issue is due to the copied MO's `move_finished_ids` including a copy
of the cancelled finished move (i.e. the qty not backordered) so there
were 2 `move_finished_ids` for the product to produce. This resulted in
an access error since the onchange to update the `move_finished_ids`
only expects 1 move for the product to produce and results in a
singleton error.

Note we copy cancelled move_raw_ids because otherwise we wouldn't be
able to duplicate cancelled MOs without losing all of its components.

Issue 2 of Task: 2618962

closes odoo/odoo#75073

X-original-commit: 456c337534427db1296030b004ae061b47d8db79
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
Signed-off-by: Tiffany Chang <tic@odoo.com>
2021-08-13 10:04:21 +00:00
Rémy Voet (ryv) 94cb5b6e8f [IMP] mrp_subcontracting: take produce_delay in account
In subcontracting, there wasn't a way to make
the subcontracting resupply delivery plan before
the subcontracting receipt.

Now the hidden subcontracted MO, take in account
(in his planning) the `produce_delay` (in days) of
the product which is automatically plan the
subcontracting resupply delivery correctly.

task-2486811

closes odoo/odoo#75072

X-original-commit: 829369d3ca0530f1aad0599fbb1598810a928cc3
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
Signed-off-by: Rémy Voet <ryv-odoo@users.noreply.github.com>
2021-08-13 09:42:49 +00:00
Sébastien Geelen (sge) b67c57dc6c [FIX] web_editor: change link shortcut to ctrl+M
Old shortcut (ctrl+K) was conflicting with the new command palette feature, so we change it to CTRL+M.

task-2593213

closes odoo/odoo#75069

X-original-commit: 0371fe2b9e54ff557265a8f8fc919d351ed6a7d5
Signed-off-by: Antoine Guenet <Zinston@users.noreply.github.com>
2021-08-13 08:56:38 +00:00
Francois (fge) ad87436a0f [IMP] web: fuzzysearch test
closes odoo/odoo#74769

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2021-08-13 08:58:23 +00:00
Munaf Khan ac34cb5938 [IMP] web,base: improve UI of no content helper in settings
Currently, empty screen of the settings is not very beautiful
without proper action helper and decoration. It displays only
'no record found' string when no setting is found for the
search string.

With this commit, we make the no content helper for the settings
consistent with other apps. It now displays empty folder and
proper helper message.

TaskID-2588387

closes odoo/odoo#74570

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2021-08-03 04:55:32 +00:00
nounoubensebia 098e541a97 [IMP] website_event_[exhibitor|meet|track]: hide "others" section
This commit hides "other" tracks/rooms and exhibitor sections if there is only
a single record for these.

Purpose is:
Allow users to handle events that do not have a ton of things happening at the
same time without showing empty sections.
Example: I use Odoo events to broadcast my concert/zoom conference/... online
and want my website to look neat.

Task-2531084

closes odoo/odoo#71600

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2021-07-30 07:45:49 +00:00
Goffin Simonandnle-odoo 18cc746e8e [FIX] pos_adyen: Connection failure during Adyen payment
Steps to reproduce the bug:

When making a payment intent from Adyen terminal with the POS, the payment intent was validated by Adyen
but Odoo stopped polling because a connection failure happened  and then on retry it made second payment
even if the first one was successful.

Fix:

Now after a failure, it will try to poll again the last transaction (with get_latest_adyen_status)
and set the payment as successful or cancelled based on the last response.

opw:2587625

closes odoo/odoo#75053

X-original-commit: dcb1e2b4823c917f4c547d2cad604187f893948d
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Co-authored-by:  nle-odoo <nle@odoo.com>
2021-08-12 16:17:03 +00:00
Hubert Van de Walle (huvw) 42f8e68e7a [FIX] sale_mrp: Issue in delivered quantity for sales order with kit items
Step to follow

Create a sale order for a kit with a quantity of one and Dozens as a unit of
measure
Confirm and validate the delivery
The delivered quantity will be 12 instead of 1

Cause of the issue

The delivered quantity wasn't recomputed in relation to the sales order
quantity

opw-2535193

closes odoo/odoo#75044

X-original-commit: 5ce39d13d1364df3d9c9638fce7f9d374f1c9b72
Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
2021-08-12 14:36:47 +00:00
Odoo's Mergebot aaf4424d73 [IMP] mass_mailing: restyle the mass mailing form view to full width
RATIONALE

Currently, editing a mail feels a little claustrophobic because of the boxes
within boxes within boxes design. Purpose of this task is to improve
layout of mailing form view when being in Email Marketing, notably displaying
editor in full width.

SPECIFICATIONS

In this task we remove the chatter and the sheet from the form view so that
the mail editor takes up more horizontal space. The chatter is then moved into
one of the notebook's tabs.

Mass mailing form view currently has a scrollbar for the contents of the
editor: one for the form view itself and one for the sidebar. In consequence
we sometimes end up with three scrollbars side by side, which is ugly and
confusing. In this task we ensure the height of the iframe is always the same
as its contents so there is no need for a scrollbar.

Note that SMS Marketing is untouched as it keeps the old layout. Indeed there
is no need of such changes as it does not use the HTML editor. Actions that
are generic (systray, list view, ...) also use the old display..

LINKS

Task-2545445

closes odoo/odoo#71511

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2021-08-13 12:07:32 +02:00
Martin Trigaux 4b1f24de8f [I18N] l10n_de*: update German translations
Courtesy of Friederike (frfa)

closes odoo/odoo#75060

X-original-commit: 203a4e82d7d2dc402f41461826b859430189870a
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2021-08-13 07:04:07 +00:00
Hardik PrajapatiandMohammed Shekha 15f7b50cf3 [FIX] web: make name field blank on 'Save & New'
Before this commit: when typing something on many2many_tags widget and clicking
on 'Create and Edit' from many2many_tags widget shows form dialog, now clicking
on the 'Save & new' button shows the old value in the name field instead of the
blank value it is because of default context passed, clicking 'Save & New' will
pass old context due to which name field will have old value, this will create
issue when there is unique name constraint, pressing 'Save & New' and then
again clicking 'Save & New' will raise constraint.

After this commit: clicking on the 'Save & new' button will shows the blank
value in the name field, to fix this issue, we removed 'default_name' key from
context.

TaskID-2323194

closes odoo/odoo#75052

X-original-commit: 6e33a4a073acd6d4dc64743d010a8d754ad8a2ff
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Co-authored-by: Mohammed Shekha <msh@odoo.com>
2021-08-12 16:11:36 +00:00