Commit Graph
135705 Commits
Author SHA1 Message Date
Mathieu Duckerts-Antoine c19dcf3983 [REF] web: search panel goes ESNext 2020-05-05 19:23:20 +00:00
Julien Mougenot d21c412985 [IMP] web: Standardize FALSE and TRUE leaves/domains
Add four static properties on the Domain.js class: (TRUE|FALSE)_(LEAF|DOMAIN).
This increases consistency for domains using these concepts.
2020-05-05 19:23:20 +00:00
Julien Mougenot 26491fcb4c [IMP] web: add sortBy to core.utils
Add a "sortBy" helper to core utils. This function takes an array and
an optional criterion as arguments and returns a new array sorted
according to the given criterion.
2020-05-05 19:23:20 +00:00
Swapnesh Shah d64c8fa304 [FIX] website_sale: display validation properly
Before this commit, This validation message was not displayed properly. (See https://nimb.ws/OwfLsH )

Now we are displaying Validation error Properly. (See https://nimb.ws/ji3N2h )

closes odoo/odoo#50704

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-05-05 18:46:18 +00:00
Jordi Ballester Alomar 8f34b34abd [FIX] product: Display weights and packages in product variants
closes odoo/odoo#50679

X-original-commit: ffa32607c15798a9bc6ea1f37b714e5dabfd0be4
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2020-05-05 15:10:03 +00:00
Laurent Smet 035fadb7d5 [FIX] account: Don't lock a fiscal year with unprocessed statement lines
closes odoo/odoo#50227

Related: odoo/enterprise#10226
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2020-05-05 07:16:39 +00:00
Dhruv Patel a599f1402e [IMP] web: FieldMany2one: reword and simplify dialog
This commit improves the dialog that opens when a user clicks out
of an 'un-commited' many2one. It is no longer possible to edit
the value, and the sentence has been reworded.

closes odoo/odoo#49528

Task: 2234212
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2020-05-05 15:19:45 +00:00
Jeremy Kersten 032dd00715 [IMP] web_editor: add autoscroll on autocomplete
To imp: auto size height based on position of the autocomplete

closes odoo/odoo#50684

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-05-04 13:37:33 +00:00
Samuel Degueldre e4c3f778cc [FIX] website: don't interpolate null values for css properties
In 29f02a37f0 we bumped the verion of libsass that we use. One
breaking change introduced by the new version is that if a css variable
is interpolated to the empty string, it is still emited in the compiled
css [1]

This commit fixes that by explicitly omitting null values from the map
before looping over it.

[1]: https://sass-lang.com/documentation/breaking-changes/css-vars

task-2248360

closes odoo/odoo#50668

X-original-commit: 6faf327706169bbe31e188a42805085b95b78052
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-05 14:40:18 +00:00
Jeremy Kersten d0946b3694 [FIX] website_blog: be more lax in perf test
Seems like randomly one request disappear. So 28 vs 29

Closes the eyes, while it is not 30 vs 29 ;)

closes odoo/odoo#50667

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-05-05 13:39:58 +00:00
Nicolas Martinelli 458b952d01 [FIX] account: balance not rounded
- Set the Product Price precision to 5
- Create an invoice with one line:
  No taxes
  Price Unit: 0.895
- Save

An error is raised because of an unbalanced journal entry.

The root cause is the `balance` which is not rounded. This is due to the
fact that the currency field (`company_currency_id`) is a related and
not set at the moment of computation. This leads to this being equal to
`0.01` instead of zero:

https://github.com/odoo/odoo/blob/ed1926cb12c830f383dbe540cb96e14d0804eb3d/addons/account/models/account_payment_term.py#L64

Note that if the line is saved with another value then the price unit
is modified, the error doesn't occur since the balance is properly
rounded.

opw-2209543

closes odoo/odoo#50655

X-original-commit: bd4bf1fe759a70d0b44606f1b2a3b27f8e71971d
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-05 12:52:56 +00:00
Osiris Roman a3e61f54d1 [FIX] l10n_ec: correct currency
The currency of Ecuador is USD, ECS is archived.
Add states of Ecuador
Signs CLA

Modificando la moneda oficial de Ecuador de sucre a dolar.
La moneda oficial del Ecuador cambió de sucre a dolar en el año 2000.

introducing Ecuadorian states

Correcting previous commit according to mart-e especifications
State codes follow the ISO 3166-2. Each code is compound by two parts separated by a hyphen "-". First part is "EC" (The ISO ecuadorian code), and the second part is the ISO state code.

Correcting res.country.state file according to mart-e especifications

Adding the states directly in the l10n_ec file

closes odoo/odoo#50653

X-original-commit: 1a6b70c6c3d8d739173de59d61563b0a7aad01c3
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-05-05 12:40:10 +00:00
Mathieu Duckerts-Antoine 9c2a0f1db7 [FIX] web: no confusion betweed false and 'false'
In the search panel, if a select multi was grouped by a field that can
take the value 'false' (like a char field), that value would be confused
with the value false and the group 'false' would never be
displayed (its values would be put in the group false).
This commit avoids that situation by using JSON.stringify instead of
the implicit stringification done when using a value as an object key.

closes odoo/odoo#50647

X-original-commit: 5b19e6c13b636d108e8aa1a09f01124fdb38a577
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2020-05-05 12:04:19 +00:00
qsm-odoo a8c54b40cd [FIX] web_editor: add access to all grays in bootstrap_overridden files
Before this commit, and in 13.0, you had access to gray colors in
bootstrap_overridden.scss files through the `palette-gray` function but
only if the gray was explicitely defined in the theme palette. This was
fine as only those were used at that time. Now, some themes want to use
the default BS gray values in those files to customize other variables.

The solution is to "force" all grays in the selected gray palette, using
the BS values by default.

closes odoo/odoo#50640

X-original-commit: fcb62edf3118d2d615296f293e6694b0e533bc99
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-05 11:23:07 +00:00
Julien Castiaux afcb734908 [IMP] ir_mail_server: IDNA and SMTPUTF8 capabilities
It has been a recurrent request from customers to be able to send email
messages to email addresses containing non-ascii characters. [IDNA] is a
domain extension to allow unicode characters in domain names. [SMTPUTF8]
is a SMTP extension to allow unicode in any header.

IDNA defines the [punycode] encoding which translates unicode to an
ascii representation. This encoding MUST be used to encode domains.

SMTPUTF8 is an SMTP extension that allow utf-8 in all headers on the
envelope.

[IDNA] https://tools.ietf.org/html/rfc5890
[SMTPUTF8] https://tools.ietf.org/html/rfc6531
[punycode] https://tools.ietf.org/html/rfc3492

Task: 2116928
opw-2229906
opw-2248251

closes odoo/odoo#47709

Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2020-05-05 09:17:15 +00:00
Aaron Bohy 89c1d81b24 [IMP] *: update form views
*account,purchase,sale

Make them use widget mail_many2one_avatar.

Part of task 2195254

closes odoo/odoo#49345

Related: odoo/enterprise#10074
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2020-05-05 10:05:12 +00:00
Aaron Bohy b6d05f6015 [IMP] *: update kanban views
Use the new Many2OneAvatarUser field widget in some kanban views,
which allows to open a DM chat window with the corresponding user
by clicking on the avatar.

Part of task 2195254
2020-05-05 10:05:12 +00:00
Aaron Bohy 900d162809 [IMP] *: update list views
This commit adapts several views to make them use newly defined
widgets, the new decoration-xxx mechanism on fields, and to adapt
them to the new design of buttons.

Part of task 2195254
2020-05-05 10:05:12 +00:00
Aaron Bohy 841721ead9 [IMP] mail: add ListActivity widget
This commit adds a tweaked version of the kanban_activity widget
for the list view. This widget displays the summary of the next
activity (and fallbacks on the activity type if there is no
summary). It can be set by defining widget='list_activity' on
field activity_ids.

Part of task 2195254
2020-05-05 10:05:12 +00:00
Aaron Bohy a0c7284b66 [IMP] web: add 'label' attribute on AbstractField
If set, this value will be displayed as column name in list views.
This attribute could be used in the future in form view for the
same purpose.

Part of task 2195254
2020-05-05 10:05:12 +00:00
Aaron Bohy c54007f0e3 [REF] mail: lint activity.js 2020-05-05 10:05:12 +00:00
Aaron Bohy 22a66ae694 [IMP] hr: add Many2OneAvatarEmployee field widget
This widget is a variant of the Many2OneAvatarUser widget, designed
for many2one fields pointing to 'hr.employee'.

Part of task 2195254
2020-05-05 10:05:12 +00:00
Aaron Bohy 59641325c7 [IMP] mail: add Many2OneAvatarUser field widget
This widget is an extension of Many2OneAvatar, designed for
many2one fields pointing to the 'res.users' model, or a model having
itself a many2one field pointing to 'res.partner'.

With this widget, when the avatar is clicked, we open a DM chat
window with the corresponding partner. If the user clicked on itself,
we open a blank chat window for the sake of consistency.

In kanban views, this widget only displays the avatar.

Part of task 2195254
2020-05-05 10:05:12 +00:00
Aaron Bohy e63ffeab5a [REF] mail,hr: move openDMChatWindow to MailManager
It will be used by the Many2OneAvatarUser widget defined in the
next commit.
2020-05-05 10:05:12 +00:00
Aaron Bohy df4693e7ff [IMP] web: add Many2OneAvatar field widget
In readonly, this widget displays the image of the related record
next to its display_name. In edit, it behaves exactly like the
regular many2one.

Part of task 2195254
2020-05-05 10:05:12 +00:00
Aaron Bohy 4f8860e503 [IMP] web: add RemainingDays field widget
This widget can be used on date and datetime fields. In readonly,
it displays the delta (in days) between the value of the field and
today. In edit, it behaves like a regular date(time) widget.

Part of task 2195254
2020-05-05 08:48:34 +00:00
Aaron Bohy a3c0d6ee71 [FIX] web: list: prevent flickering
Have a list view with "badge" field component and 'decoration-xxx'
attributes (on that field). Before this commit, it flickered when
the user refreshed the list (for instance, by clicking on the list
icon in the view switcher). The badges were displayed with a grey
background (i.e. no decoration) for a brief moment, before their
style was applied.

Their style is applied in the mounted hook, which is called by
'on_attach_callback' (legacy version of mounted). However, the list
renderer computes its column widths in 'on_attach_callback', which
produces a repaint.

This commit moves this operation to the end of on_attach_callback,
such that other processing (like applying the badges style) is done
before the repaint.
2020-05-05 08:48:34 +00:00
Aaron Bohy 1d6e4948d2 [IMP] web: add BadgeField component
This new field component displays the field's value inside a
bootstrap pill badge. Supported field types are 'char', 'selection'
and 'many2one'. The background color of the badge can be customized
by using the decoration-xxx mechanism, e.g.
 <field name="state" decoration-danger="state == 'cancel'" widget="badge"/>

Part of task 2195254
2020-05-05 08:48:34 +00:00
Aaron Bohy 56787d5878 [REF] web: field decoration
This commit refactors the way the decoration-xxx attributes are
applied to field widgets/components, in a way that it can be
overridden in a given field or component to generate the approriate
className. By default, 'decoration-x' applies className 'text-x'.

This will be necessary for the new 'FieldBadge' component, which
needs to apply 'bg-x' classNames instead of 'text-x'.

Part of task 2195254
2020-05-05 08:48:34 +00:00
Aaron Bohy a1d3e224d8 [IMP] web: list: allow to add decorations on field nodes
In list views, one can specify decoration-XXX attributes on the
arch root node. Those decorations are evaluated for each record,
and the corresponding style is applied on rows for which the
condition is true.

This commit allows to specify those decoration-XXX attributes on
field nodes as well. In this case, when the condition is met by a
record, only the field on which the attribute is set will be
impacted.

Part of task 2195254
2020-05-05 08:48:34 +00:00
Aaron Bohy 47144b9ee4 [IMP] web: list: improve style of icon buttons
Buttons with icon and string attributes now have both their icon
and string displayed, whereas before only the icon was displayed
(the string was available as title).

We also force class btn-link to style buttons with icon, except if
another btn-xxx class is explicitely provided.

Part of task 2195254
2020-05-05 08:06:33 +00:00
jerome hanke (jhk) 03eea7c481 [FIX] payment: float consistency enforcement in access_token generation
Steps to reproduce:
- install sales, ecommerce and payment_authorize
- setup authorize.net (test mode)
- go to sales and select the quotation S00007 (demo data) or create a quotation
with multiple items that add up to a float
- select action > generate a payment link > go to the link > select pay with authorize
- you are redirected to authorize.net use 4111 1111 1111 1111 as card number and 1223
as expiration date > pay
- you are redirected to the odoo payment process page
- wait for the result

Previous behavior:
the user is returned to a 404 error page but the payment went trough

Current behavior:
access_token generation is consistent and will not fail because of
float representation
the user is returned to the "payment confirmed" page

WARNINGS:
- watching the values in vscode prevents bug reproduction
- when setting up authorize.net, do not forget to add your test url to
the account's allowed return urls
- use https for authorize.net connection

opw-2223135

closes odoo/odoo#50633

X-original-commit: 0fe7fa0f95b7393d8829ba4b216d6c41d0c0dc3d
Signed-off-by: mightyjol <jhk-odoo@users.noreply.github.com>
2020-05-05 09:55:15 +00:00
Nasreddin (bon) e8fb743f57 [FIX] crm: Fix compute method on day open
Step to reproduce : Import from Excel a list of Opportunities.

The problem is that in _compute_day_open, the abs of the extraction
date_open - create_date is set as the lead's day_open.
As the date_open has no milliseconds, all those records which
create date is the same second have a date_open that is before their create_date.

Fixed it by comparing the date_create and date_open without microsecond.

Task ID 2222251

closes odoo/odoo#50599

X-original-commit: f7d1277080a91903342bbb4be44ce3a6ca814a38
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-04 15:31:09 +00:00
Andrea Grazioso (agr-odoo) 08ceeaf81b [FIX] point_of_sale,pos_cash_rounding: fix change error popup on checkout
Configure your POS with bank payment method only
Make a sale with rounding necessary (i.e. 1,29€)
The amount will be rounded. Go through the payment screen.

Error message will appear because no payment methods available is
capable of handling the change, but this is not necessary since we are
rounding.

Splitting the code to add a more specific condition in pos_cash_rounding
fix the issue

opw-2239946

closes odoo/odoo#50216

X-original-commit: 6131534da2d3a3bf75529b32f2061d58e925b365
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2020-04-27 10:49:05 +00:00
56e63ebae3 [IMP] web: ControlPanel: remove dropdown carets
Part of task 2234547

closes odoo/odoo#49793

Related: odoo/enterprise#10059
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Co-authored-by: Mohammed Shekha <msh@odoo.com>
Co-authored-by: Aaron Bohy <aab@odoo.com>
2020-05-04 18:15:28 +00:00
067e8c88fe [IMP] web: hide export button when selected records
Part of task 2234547

Co-authored-by: Mohammed Shekha <msh@odoo.com>
Co-authored-by: Aaron Bohy <aab@odoo.com>
2020-05-04 14:31:11 +00:00
c80fa71adb [IMP] web,*: search menus always visible
Part of task 2234547

Co-authored-by: Mohammed Shekha <msh@odoo.com>
Co-authored-by: Aaron Bohy <aab@odoo.com>
2020-05-04 14:31:11 +00:00
470fa48686 [IMP] base_import,*: move Import button to Favorite menu
*account,crm_iap_lead,hr_expense

Part of task 2234547

Co-authored-by: Mohammed Shekha <msh@odoo.com>
Co-authored-by: Aaron Bohy <aab@odoo.com>
2020-05-04 14:31:11 +00:00
93c01a231a [IMP] web: FavoriteMenu: move 'Save Current Search'
Move it above the separator.

Part of task 2234547

Co-authored-by: Mohammed Shekha <msh@odoo.com>
Co-authored-by: Aaron Bohy <aab@odoo.com>
2020-05-04 12:05:38 +00:00
Julien Castiaux 47a1ae580f [REV] module: bring back openerp import hook
Use `warnings.warn` to log a warning entry on usage of deprecated
import hook instead of `logging.warning`. The `warnings` can be more
easily configured to show/hide class of warnings or to limit warning
emission, plus it is possible to log a single stack entry whereas
logging can just log the entire call stack.

Bring back the various openerp import hooks by reverting 9e1f13bac12

closes odoo/odoo#50604

Task: 2234749
X-original-commit: 5840202802c2ff6ca1ca8fd6f3892900481db5da
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
Signed-off-by: Christophe Simonis <chs@odoo.com>
2020-05-04 16:05:26 +00:00
Odoo's Mergebot 4cff27d6ab [MERGE] *: create records in batch
Ensure main Odoo models supports batch record creation.

* `purchase.order.line` supports multi creation in `purchase`, but not anymore when `purchase_stock` is installed.
* `sale.order.line` supports multi creation in `sale`, but not anymore when `sale_purchase` is installed.
* `crm.lead` doesn't support batch creation atm, but it doesn't cost anything to support it.

--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr

closes odoo/odoo#50468

Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2020-05-04 18:28:53 +02:00
Alen Uglik 7202b14ca9 [FIX] base: translate action name
closes odoo/odoo#50600

X-original-commit: f0d59564a3329affa18473d26295799ea2c431c8
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-05-04 15:42:09 +00:00
Alen Uglik 6247a5dba9 [CLA] Uglaos signs Odoo CLA
X-original-commit: 8de457e888545618b82925117efb070ac101201b
2020-05-04 15:42:08 +00:00
Andrea Grazioso (agr-odoo) 8a57e84a32 [FIX] sale_timesheet: fix user permission to set sale order
Create a service product [DEMO] with service tracking
'Create a task in a new project'
Create a sale order SO1 with User 1 with [DEMO] product
Create a sale order SO2 with User 2 with [DEMO] product
SO1 will create a task in a project, edit this task and
assign as parent task the one created by SO2

The action will be blocked by security rules, because user 1 cannnot
see the sale order data of user 2 but the action should be
allowed.

Fixing the error with a sudo call

opw-2243370

closes odoo/odoo#50585

X-original-commit: 8c7d0266cc6d7bd0569721e92128096e64d9c361
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-04 14:20:46 +00:00
Victor Feyens b310b3843d [IMP] crm: create leads in batch 2020-04-30 12:33:32 +00:00
Victor Feyens 06e483dd69 [IMP] sale_purchase: create sales order lines in batch 2020-04-30 12:33:32 +00:00
Victor Feyens cefb3a469c [IMP] purchase_stock: create purchase order lines in batch 2020-04-30 12:33:32 +00:00
Olivier Dony 4310ba3214 [FIX] doc/deploy: add recommendations for firewall rules
In some situations it is important to protect the Odoo service from
direct access from the internet, or to protect internal network
resources from the Odoo server itself.

This is heavily dependent on deployment requirements, and for standard
installations on a public cloud system, this may not be necessary.
Yet it seems useful to mention it in the deployment recommendations,
as it may not be obvious to our users.

Our thanks to Ameya Darshan for raising this concern!

closes odoo/odoo#50422

X-original-commit: da0d9ef4a6e20df765a20a6231b2fcc535d0d863
Signed-off-by: Paul Morelle <madprog@users.noreply.github.com>
2020-04-29 18:14:15 +00:00
alt-odoo a35d80258c [FIX] sale: wrong default sales team in eCommerce orders
Side effect of commit 6d7bbd3074e6b3771b582bf544624cef59e1c6a3. In case we are coming from public route /shop/address,
we are in superuser mode and method _get_default_team_id can return a sales team
from another company. We should force the domain to avoid creating inconsistent records.

closes odoo/odoo#50581

X-original-commit: 0396c04ce894df80fb7714edb06e9befebdb672e
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Signed-off-by: Alex Tuyls <alt-odoo@users.noreply.github.com>
2020-05-04 14:03:43 +00:00
Alexandre Fayolle 252c0b7392 [FIX] crash when a mode appears twice in view_mode
If an action has for instance twice "tree" in view_mode, you get a crash
when displaying the action.

This patch adds a python constraint on the model which will prevent such
change.

closes odoo/odoo#50189

Opw: #2241415
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-04 11:19:43 +00:00