Commit Graph
111785 Commits
Author SHA1 Message Date
Nicolas Lempereur d0d9196da4 [FIX] crm: crm team graph error if stage deleted
When a stage on crm leads is removed, the leads appear in an
"Undefined" column in a kanban view, but this was not handled when
getting the "graph data" (eg. in version 11.0 for sales team graphs
when grouping by stage in CRM > Reporting > Sales Channels).

opw-784455
closes #21507
2017-12-11 16:04:01 +01:00
Adrien Dieudonne 35c4057422 [FIX] web: FieldMany2One: don't re-render if dirty
The 'main_flow_tour' noticed an error that we
had already corrected for the input fields.
See here: @a71f2237

In fact the same error can occur in the many2one fields
for the exact same reason.
It's why the 'main_flow_tour' crashed at the following step:
".ui-menu-item > a:contains('the_flow.customer')"
2017-12-11 10:17:15 +01:00
Christophe Simonis 0fd602ba34 [MERGE] forward port branch saas-15 up to 791e0cf47a 2017-12-11 09:17:53 +01:00
Lucas Perais (lpe) 6c024d1ef0 [FIX] web: give context to fetch x2m batched
Before this commit M2Mtags widget did not translate.
This was because no context was given to the rpc that fetched the fields
Hence, the lang was not passed.

After this commit, M2Mtags translate well

OPW 784396
2017-12-11 08:32:04 +01:00
Olivier Dony 88841c3927 [FIX] payment_stripe: avoid crash on non-ascii cardholder names
`str.format()` is only safe with byte-strings arguments, not unicode.
Unicode parameters would be automatically encoded using 'ascii'
encoding, resulting in a UnicideEncoreError in case any non-ascii
characters are present, which is quite likely.

Using '%' formatting on a str format string works the other way around,
and will cause the format string to be decoded into unicode if any
unicode params are present. This is typically safer because we never
use non-ascii characters in our format strings.

It also feels more natural than having to coerce the format string to
unicode using a u'' prefix.

This issue does not occur in Python 3, where either syntax will work.
2017-12-10 02:25:29 +01:00
Olivier Dony 0a74272bed [FIX] payment_stripe: do not rely on token email
Depending on the payment flow, the `email` field may not always be
present in the token data coming from Stripe.
Currently, it is missing in s2s mode, because we do not send it.

To avoid a KeyError during creation of the customer, we can use
token["card"]["name"] instead, which is always provided (it contains
either email or cardholder name), or the explicit ` description`,
when provided.
2017-12-10 01:55:47 +01:00
Christophe Simonis 791e0cf47a [MERGE] forward port branch saas-14 up to 9bd8a49820 2017-12-08 16:18:44 +01:00
Christophe Simonis 9bd8a49820 [MERGE] forward port branch 10.0 up to 6b27d9f91a 2017-12-08 16:14:25 +01:00
Pierre Masereel 6b27d9f91a [FIX] point_of_sale: digits field doesn't exist on currency
As the field digit doesn't exist on currency, we use decimal_places
instead which is the field containing the number of digits of the
corresponding rounding field
2017-12-08 16:03:08 +01:00
tbe-odoo 3bc1e0175d [FIX] payment_stripe: Create proper customer description 2017-12-07 20:09:11 +01:00
Christophe Simonis 0fda9fba0b [MERGE] forward port branch 10.0 up to cd31e82689 2017-12-07 17:38:40 +01:00
Géry Debongnie 3b3f68030d [FIX] web: send proper context when fetching m2o namegets
When fetching batched namegets (typically after a default_get), we need
to evaluate the context that we send to the server.  This may be
important for models with a custom name_get method. (note: overriding
namegets should be avoided if possible)

With the new views refactoring, this was not done properly and the
'view' context was sent instead.  This is not really critical, the proof
is that it took a few months before getting some complaints, but this is
definitely a bug.

To reproduce, simply add a context attribute to a m2o field in a form
view, with a non empty value in a default get, and look at the context
sent to the server.
2017-12-07 16:20:46 +01:00
Cedric Snauwaert e193926db0 [FIX] account: add some reconciliation tests
To test use case introduce by: https://github.com/odoo/odoo/commit/2f3b469dee6f18cbccce1cdf2a81cfe57960c533

and fix introduce by: https://github.com/odoo/odoo/commit/3549688b21eb65e16b9c3f2b6462eb8d8b52cd47
2017-12-07 15:10:57 +01:00
Yannick Tivisse 0426ddcff4 [FIX] hr_payroll: Avoid using 'getattr' and 'setattr'
Purpose
=======

This is not necessary to only check if a field exists.
2017-12-07 13:14:54 +01:00
Pedro M. Baeza cd31e82689 [FIX] account: Allow to duplicate supplier invoices
As there's a check for unique supplier reference numbers, you can't duplicate them as the field is copied on the duplicated record. This patch removes the copy for emptying the error.

@Tecnativa
2017-12-07 09:08:17 +01:00
tbe-odoo 08682ec1d5 [FIX] website_payment: Show error box only when there is an error 2017-12-06 17:38:11 +01:00
Lucas Perais (lpe) bf119dcff6 [FIX] account: predicting receivable/payable on partner in tests
Before this commit, when a localization defined default payable or receivable
accounts on partners (like l10n_do does)
The reconciliation tests that involve an invoice on the one hand and a payment on the other hand
broke just because the accounts of the payment and the one of the invoice did not match

After this commit, we force the receivable or payable account to be the partner's (if available)
and the tests do not break
2017-12-06 17:18:45 +01:00
tbe-odoo d45f79e58f [IMP] payment_stripe: Add support of form tokenization
- Added support of form based payment with tokenization to be able to pay Subscriptions and save a payment token for later payments
2017-12-06 16:47:54 +01:00
auyeung112002 bde7030c59 [CLA] auyeung112002 signs the CLA
Backport of ecbf7aa471 to 10.0
Asked at #21284
2017-12-06 16:47:46 +01:00
Lucas Perais (lpe) fd560917ab [FIX] point_of_sale: sale details report correctly renders float
Before this commit, when printing all orders from the POS interface,
the ticket sometimes showed weird amounts (like 128.25000000001).

This was due to the usual problem of representing a float and has nothing to do with Odoo.

After this commit, the templates correctly display the amounts, rounded according to the currency
We do this by applying the relevant qweb widget (or calling the right format function in JS)

OPW 784626
2017-12-06 16:35:34 +01:00
Pedro M. Baeza f6321ab94c [FIX] hr_attendance: Make department related field readonly
Related fields that are not readonly are rewritten each time you save the
associated record, provoking performance problems.

Moreover, we don't want to allow an employee to change its department through
an attendance record.

Closes #21441
2017-12-06 16:25:41 +01:00
jat-odoo 0a90393da3 [FIX] web_editor: show proper video on existing video edition
See https://github.com/odoo/odoo/commit/5e38bef5a5ededb28707af44a19caaec2af2d682
and especially https://github.com/odoo/odoo/commit/45e0cd564afdae71e9525193250744e88076da71

Closes #19673
2017-12-06 15:16:46 +01:00
Lucas Perais (lpe) af8908b03c [FIX] stock: do not propagate date when negative delta
In Pick - Ship:
- validate a sale order which scheduled date is an hour in the future.
- validate the WH/PICK picking

Before this commit the WH/OUT picking 's scheduled date was set a day in the **past**

This was due to the implementation of datetime substraction and timedelta, which,
in case of a negative value, would take -1 day and some complementary values (hours, minutes etc...)
(the difference is complementary)

After this commit, the WH/OUT picking 's scheduled date stays what it was in that particular use case.

OPW 784452
2017-12-06 14:30:44 +01:00
Nicolas Martinelli 9d0b4d0c2d [FIX] base: deactivate lang
- Install a new language
- Set it as default for several users
- Open the language and click on "Deactivate"

Traceback.

Fixes #21418
opw-786342
2017-12-06 10:20:35 +01:00
Nicolas Martinelli d81000d0a6 [FIX] point_of_sale: virtual keyboard
Several issues arise with the virtual keyboard.

Issue 1
- Go in client list
- Go back to product list

The keyboard is still connected to the client search field.

Issue 2
- Go in client list
- Add a new client
- Click on any field

The keyboard is still connected to the client search field, it's
impossible to fill in any client data.

opw-784613
2017-12-06 08:12:04 +01:00
Christophe Simonis b8540eefe3 [MERGE] forward port branch saas-15 up to 970be94f37 2017-12-05 16:46:14 +01:00
Christophe Simonis 970be94f37 [MERGE] forward port branch saas-14 up to e9c2dcd28d 2017-12-05 14:52:16 +01:00
Christophe Simonis e9c2dcd28d [MERGE] forward port branch 10.0 up to dd7ee15fb8 2017-12-05 14:21:11 +01:00
Christophe Simonis dd7ee15fb8 [MERGE] forward port branch 9.0 up to ce038f5d15 2017-12-05 13:52:02 +01:00
Lucas Perais (lpe) 2a86e9245c [FIX][BACKPORT] Always round monetary values in database
backport of afef71d6b9

Original commit message:

Let `create` and `write` round monetary field values before sending them to the
database. Pass the values to be written to `field.convert_to_column`, so that
the currency can be retrieved from the values, and the value be rounded.
2017-12-05 13:46:06 +01:00
Romain Derie ce038f5d15 [FIX] auth_oauth: correctly retrieve user facebook email
Before this commit, you could never get the user's facebook email. Since there
was no email field on facebook response, email would be then set to an auto
generated value like 'provider_2_user_0123456789123456' by odoo.

Now, we correctly request user's email to facebook.

opw-782771
2017-12-05 13:29:06 +01:00
Nicolas Lempereur 04bfd54013 [FIX] sales_team: multicompany issue typo 3ad1867e
3ad1867e could lead to wrong results in a multicompany setting because
the change got the company from the lead but it was intended to be
gotten from the user.

Since ('company_id', 'child_of', False) returned "root" companies, the
code still got a sales team but possibly one from another company if the
user was on another company that its sales team.

This would lead to an access issue that this commit solves.

opw-784455
closes #21428
2017-12-05 11:07:51 +01:00
Ruter fe8668e509 [FIX] web: Setting disable_favorites on Search View causes Exception 2017-12-05 09:31:00 +00:00
Ruter ed326e0569 [CLA] signature for ruter 2017-12-05 09:31:00 +00:00
Lucas Perais (lpe) 519555054a [FIX] web: BinaryFile not download when new record
Let's have:

- on res.company a binary file field named x_file
- on res.users a related binary field to company_id.x_file, and make it readonly
- On the res.users form view, display the new field
Before this commit in create mode, upon clicking on download the file, the server crashed, because the record id was empty.
Then, the JS crashed in turn because of the unhandled 404 from the server.

Since the id of a new record will always be unset, we choose to disable the download option in this very specific case

OPW 777042
2017-12-05 08:19:08 +01:00
Joren Van Onder b2f0af4543 [FIX] point_of_sale: allow searching a partner on >2 fields
When searching for a partner the ' ' (SPC) character can be used as a
field separator. You can search for e.g.:

'agr namur'

which will return the 'Agrolait, 69 rue de Namur,...' partner.

For some reason only the first space was considered a separator. So
e.g.:

'agr namur belgium'

wouldn't work.

This commit makes it so that every space character is considered a
separator.

Fixes #21357
2017-12-04 14:18:36 -08:00
Christophe Simonis a8d01cbf4e [MERGE] forward port branch saas-15 up to a447da75fd 2017-12-04 20:12:19 +01:00
Christophe Simonis a447da75fd [MERGE] forward port branch saas-14 up to e7d174a142 2017-12-04 19:25:51 +01:00
Christophe Simonis e7d174a142 [MERGE] forward port branch 10.0 up to 78aef7605c 2017-12-04 19:06:41 +01:00
Adrian Torres 78aef7605c [FIX] *: ordered group_by for field with capital letters
When doing a group_by in a tree view, and then ordering by an
aggregated field which contains at least one capital letter in its name,
you will get an error and won't be able to ordery by this field.

Why? read_group is called when sorting a group by, which calls
_read_group_raw which then goes to call _read_group_prepare, which will
return order by terms in this manner ['id asc', 'x_Test desc']
the problem with this is that postgres automatically converts
non-quoted/non-qualified column name to lowercase, of course this means
that if we have a field "x_Test" but no field "x_test", it will try to
look up "x_test" instead of "x_Test" and since the column doesn't exist,
it will throw a ProgrammingError.

This commit changes this behavior by wrapping the order_by terms generated in
_read_group_prepare with double quotes, which postgres interprets
correctly.

Fixes #21348

Cherry-Pick of c338e24ee7 as previous
forward-port has been badly done...
2017-12-04 18:49:31 +01:00
Christophe Simonis 8a9973bd2a [MERGE] forward port branch 9.0 up to c338e24ee7 2017-12-04 18:34:01 +01:00
Josse Colpaert 220bdb3587 [FIX] mrp: qty producing on update qty of mo
When updating the quantity of an MO, the qty we are producing on a work
order should possibly be updated.  When the finished product is tracked
by serial number it should be 1.0 when some quantity is still to be
treated.  (and not 0 as before)

opw-785190
2017-12-04 17:18:16 +01:00
Cedric Snauwaert 3549688b21 [FIX] account: fix reconciliation that create double entries in some case
commit 2f3b469dee fixes a problem
where open balance had to be added in the lines to create,
however in the case where no line is selected, a new one is created automatically
(for usability purpose) and the balance was not update correctly,
resulting in the creation of a double entry.
2017-12-04 16:33:53 +01:00
Adrian Torres c338e24ee7 [FIX] *: ordered group_by for field with capital letters
When doing a group_by in a tree view, and then ordering by an
aggregated field which contains at least one capital letter in its name,
you will get an error and won't be able to ordery by this field.

Why? read_group is called when sorting a group by, which calls
_read_group_raw which then goes to call _read_group_prepare, which will
return order by terms in this manner ['id asc', 'x_Test desc']
the problem with this is that postgres automatically converts
non-quoted/non-qualified column name to lowercase, of course this means
that if we have a field "x_Test" but no field "x_test", it will try to
look up "x_test" instead of "x_Test" and since the column doesn't exist,
it will throw a ProgrammingError.

This commit changes this behavior by wrapping the order_by terms generated in
_read_group_prepare with double quotes, which postgres interprets
correctly.

Fixes #21348
2017-12-04 16:28:32 +01:00
Christophe Simonis 426e269c22 [MERGE] forward port branch 10.0 up to 067a241ea8 2017-12-04 16:24:24 +01:00
Géry Debongnie e6146db88a [FIX] web_editor: make sure html editor does not ignore changes
For some reason, Summernote does not trigger a change event in some
cases.  It looks like it happens in 'codeview' mode, and when the change
in question is only a backspace key event.  Maybe it listen for keypress
and backspace do not trigger keypress event.

In any cases, the situation is that it is not easy to clear an html
field: going in edit mode, then selecting the content and pressing
backspace will not work before this commit.

With this commit, we specifically compare the value in the editor with
the current value to determine if the field is dirty.
2017-12-04 16:03:37 +01:00
Lucas Perais (lpe) 067a241ea8 [FIX] product, web: many2one child of value
Before this commit, when a product category had a similar name than an other
e.g. ALL / Exp and ALL / Expenses

When entering the list view of its products, it displayed the product linked to the category with the similar name
e.g. When opening ALL/Exp products list, it displayed its products **plus** the products of ALL/Expenses

After this commit the list view just contains the active category's products

OPW 782905
2017-12-04 15:42:49 +01:00
Lucas Perais (lpe) 4aef443135 [FIX] product: product category smart button: sub categ too
Before this commit, the smart button on the form of product category
only displayed the number of product for the current category,
whereas the list view of products (when you clicked on the smart button)
displayed all sub-categories products.

After this commit, the behavior is harmonized: all sub-categories products
should be accounted for and displayed

OPW 782905
2017-12-04 15:42:06 +01:00
Christophe Simonis e0ea17990a [MERGE] forward port branch 9.0 up to 62fcf6a9fe 2017-12-04 15:33:24 +01:00
Christophe Simonis 62fcf6a9fe [FIX] project: only copy tasks when not explicitly set 2017-12-04 15:07:49 +01:00