Commit Graph
116968 Commits
Author SHA1 Message Date
LofbergValentin 80c03bcd72 [FIX] website_sale: fix the missing action on checkout form
Remove wrong attr name '/shop/checkout' and add the action '/shop/address'.

It allow others routes to render the form, and that the submit form is handled
by the default checkout process.

Todo: make this 'action url' as an argument
2018-05-24 09:32:17 +02:00
Christophe Simonis 2bc6ea1b37 [MERGE] forward port branch 11.0 up to 02ee3fd88e 2018-05-23 19:33:40 +02:00
Christophe Simonis 02ee3fd88e [MERGE] forward port branch saas-15 up to 1b81f1a5c9 2018-05-23 18:36:28 +02:00
Christophe Simonis 1b81f1a5c9 [MERGE] forward port branch saas-14 up to 373a1c1128 2018-05-23 18:34:28 +02:00
Christophe Simonis 373a1c1128 [MERGE] forward port branch 10.0 up to 682ae1cc64 2018-05-23 18:30:36 +02:00
Christophe Simonis a496ca981c [FIX] stock: move company initial setup logic in model
Followup of 4e71bd5caf
2018-05-23 17:07:28 +02:00
Josse Colpaert 73e213edef [FIX] stock: non-tracked products should follow FIFO removal strategy too
In a warehouse, mostly most of the products have no lot.  It stays
important however to avoid having old products in stock, certainly if
we can distinguish them by pack or location.

As now in stable, in_date is not put on the quant for non-tracked products,
databases might mix quants with and without in_date of the same product.
We should see those without in_date as the oldest.
That is why we need to be able to apply a ASC NULLS FIRST (ASC is NULLS LAST by default) for FIFO
or DESC NULLS LAST for LIFO.

In order to do that, we copied the code from the _search method of the ORM to
be able to do this special order as the orm itself is restrictive as it
supposes the order itself has no spaces.

We adapted and added some tests to check it handles the combination of NULL/NOT NULL well.
2018-05-23 14:38:13 +02:00
Nicolas Martinelli 0b412c250a [FIX] website_sale_delivery: selection at first rendering
- Set up as a shipper with the highest priority one which will cause an
  error (e.g. service not available for customer address)
- Order a product on eCommerce, go to Payment page

Nothing prevents to click on the 'Pay Now' button, although the shipper
rating has failed. Moreover, the error is not displayed in the label of
the shipper.

Workaround: we force a click on the selected default shipper to trigger
the update. The good solution would probably be to have a completely
dynamic shipper rating integration, instead of some processing at first
rendering and then extra dynamic processing.

opw-1838765
2018-05-23 13:17:15 +02:00
Goffin Simon 04dd688091 [FIX] account: wrong view from button "Invoices" from a payment
When clicking on button "Invoices" from a payment, it always displayed
the supplier views instead of taking care about the type of the payment.

opw:1849397
2018-05-23 11:37:35 +02:00
Alexandre Kühn 8dbebe0242 [FIX] web: fetch name_gets on list only when there are data
Revision on 8ac98fc78a

The commit above does not check whether the list contains data or not.
As a result, if there are no data in the list, there is no reason to
fetch `name_gets`.

In fact, there could be a traceback because some parameters of this rpc
are computed from data in the list. So if there are no data in the list,
the parameters of the rpc are undefined. This was the case for a test
in enterprise.
2018-05-23 09:43:12 +02:00
Alexandre Kühn c587c0029b [FIX] web: only abandon records on discard without savepoint
Revision on https://github.com/odoo/odoo/commit/9a9da5763b38a3bce54e9c4870af0032e38cacc3

The intent of the commit above was to no abandon records in a list on
discard when these records have been created from a `default_get`.

Also, the `default_get` may also perform an `onchange` that could create
more records. The records from this `onchange` must also be included in
the "do not abandon" rule.

However, the rule was too relax, so that any following `onchanges` from
a user interaction was also considered into this rule. As a result, it was
not possible to abandon such records.

With this fix, we restrict the rule to `default_get` (already the case) and
only the `onchange` right after a `default_get`. Any record created on an
`onchange` from a user interaction after a `default_get` should be abandoned
on discard.

Representation of creating the list:

                               savepoint
   |----------|-----------|-------||--------|------->
 create   default_get  onchange1         onchange2

record in the list is created by default_get or onchange1
    => do not abandon on discard
record in the list is created by onchange2
    => abandon on discard
2018-05-23 09:43:12 +02:00
len-odoo cf82fbab5f [FIX] mrp: display info text on work orders view
When seeing the work orders view, it would display an empty black box instead of
the proper message.

The message is not displaed since creation is deactivated.

opw 1839001
2018-05-23 09:31:13 +02:00
Lucas Perais (lpe) d1df278f01 [FIX] stock: portal user can see pack operations
Have a delivery for a client, with pack operations
Connect on this user's portal

Go on the SO and then on the delivery

Before this commit, there was an Error 500
because access to fields of pack_operations was forbidden

After this commit, the report downloads well

OPW 1849520
closes #24849
2018-05-23 09:18:21 +02:00
David 682ae1cc64 [FIX] website_form: set meta field
Before this commit, if you enable website_form_enable_metadata, that
will crash with a "KeyError: 'meta'"

This commit closes #24848
2018-05-23 09:16:32 +02:00
len-odoo 4e57f94ff9 [FIX] calendar: do not create events past year 9999
datetime.date(year, month, day).weekday() is undefined for year > 9999.
When creating a google recurrent event that is set to never end,
Odoo tries to create 100 individual events.
If in Google calendar the user sets a recurring event to a custom interval,
of say a century, then the hundredth event is in 100x100 years, so in 12018.
Since 12018 > 9999, we get a traceback and synchronisation never happens.

opw 1845311
2018-05-23 09:11:20 +02:00
Adrian Torres 793438915a Revert "[FIX] iap: missing dependency (#24816)"
No dependency change in stable version, instead, an installation hook
should be used.

This reverts commit e9e0f4afc3.
2018-05-23 09:06:40 +02:00
Ivan Yelizariev e9e0f4afc3 [FIX] iap: missing dependency (#24816)
The module uses web_settings_dashboard, but doesn't have it in dependency
2018-05-23 08:43:05 +02:00
Josse Colpaert 8b328665f7 [FIX] mrp: workorders of sub-BOMs
- Create the following BOM structure:
```
  Prod 1 (Manufacture)
  |
  --- Prod 2
      Prod 3 (Kit)
      |
      --- Prod 4
	  Prod 5
```
- The BOMs for Prod 1 & 3 must have a routing set, to generate
  workorders
- Create a MO for 1 unit of Prod 1, process to the end

2 units of Prod 1 are created instead of 1.

This is due to the WO for Prod 3 not having a `next_work_order_id`.
Therefore, `record_production` adds an extra quantity at:
```
production_move.quantity_done += self.qty_producing
```

To prevent this, we set as `next_work_order_id` of the BOM of Prod 3 the
WO of Prod 1.

Closes #19527
opw-1817398
2018-05-23 08:29:27 +02:00
Christophe Simonis 3d7b238b8e [FIX] core: correctly decode 8bit mail headers
When an header contains surrogates, an Header object is returned when
read headers from Message objects.

Also, correctly join header parts in python3.
2018-05-22 16:45:59 +02:00
Christophe Simonis ea3385b41c [MERGE] forward port branch saas-15 up to 9622455f9e 2018-05-22 16:30:03 +02:00
Christophe Simonis 9622455f9e [MERGE] forward port branch saas-14 up to 32a35ccda5 2018-05-22 16:02:56 +02:00
Christophe Simonis 32a35ccda5 [MERGE] forward port branch 10.0 up to 45e2ee0a9b 2018-05-22 15:19:10 +02:00
Christophe Simonis 45e2ee0a9b [MERGE] forward port branch 9.0 up to 0fd06e5948 2018-05-22 14:23:55 +02:00
Randall Castro 42fb77ceba [FIX] l10n_cr: backport of 9da8378a0a
[FIX] l10n_cr: adapt state code

Change res.country.state code to follow ISO 3166-2:CR
https://www.iso.org/obp/ui/#iso:code:3166:CR

Backport asked at #24673
2018-05-22 14:05:21 +02:00
Damien Bouvy d5c7370a93 [FIX] base: avoid faulty image url for 1000+ users
Starting with the 1000th user, the kanban view returns the id value
as '1,001', which, for some reason, does not go well when trying to
find the attachment by url...

Use `raw_value` instead, which does not format the id value.
2018-05-22 13:36:37 +02:00
Nicolas Lempereur 076ececb57 [FIX] stock: no loop in traceability report
Depending on the situation, it is possible to have move with origines
and destinations that have a loop.

A simple example is a return of a return, the origin and destination of
the return of a return is the return itself.

opw-1845444
closes #24787
2018-05-22 12:50:20 +02:00
David Arnold c88d5cf1f8 [FIX] l10n_cr: update copyright
DevCO ceased to exist

Closes #24830
2018-05-22 11:37:17 +02:00
Samuele Carli 1d245deddd [ADD] base: add missing Sud Sardegna italian province
Close #24485
2018-05-22 10:45:39 +02:00
Samuele Carli cd9e432579 [CLA] WohthaN signs the CLA
Done at #24485
2018-05-22 10:45:26 +02:00
Jeremy Kersten 2a43614c3c [FIX] web_editor: avoid traceback when open img editor
In some case, (e.g.: demo data), datas_fname is undefined and match of
undefined will crash and block the modal to be opened.

Uncaught TypeError: r.datas_fname.match is not a function
2018-05-22 10:39:35 +02:00
Géry Debongnie b709e22fa2 [FIX] project: reintroduce subtask_project_id field
The subtask_project_id field was removed by task #38498, amongst many
other changes.

This change makes some workflows much more difficult: for example, using
a different project with its own columns is kind of awkward.  It
requires many more clicks and custom filters to achieve the same result
as previously.

With this commit, we simply reintroduce the field and use it to set the
default project_id of a subtask.
2018-05-22 09:39:41 +02:00
Odoo Translation Bot b658aeb3b7 [I18N] Update translation terms from Transifex 2018-05-20 07:04:05 +02:00
Odoo Translation Bot 9dd56e1972 [I18N] Update translation terms from Transifex 2018-05-20 04:09:56 +02:00
Odoo Translation Bot b6419117d9 [I18N] Update translation terms from Transifex 2018-05-20 00:26:31 +02:00
Joren Van Onder 0fd06e5948 [FIX] pos_mercury: set the paid amount to what is authorized by Mercury
Mercury can partially approve transactions in case a card does not
have enough credit available to cover the full amount.

Before this the payment amount was kept as the full purchase amount
leading to a difference between what Mercury charged and what Odoo
registered as charged.

opw-1840946
2018-05-18 13:23:08 -07:00
Christophe Simonis 8383181b8f [MERGE] forward port branch saas-15 up to 021d0e6a98 2018-05-18 18:59:06 +02:00
Christophe Simonis 021d0e6a98 [MERGE] forward port branch saas-14 up to cabe0951af 2018-05-18 18:54:26 +02:00
Christophe Simonis cabe0951af [MERGE] forward port branch 10.0 up to 9001a75f23 2018-05-18 18:53:56 +02:00
Carlos Dauden 9001a75f23 [IMP] analytic: Performance on _compute_debit_credit_balance
Courtesy of Carlos Dauden.
Was PR #24660
2018-05-18 17:39:00 +02:00
Alexandre Kühn 8ac98fc78a [FIX] web: show names of many2one on default_get
Before this commit, some records in a list did not show the name of their
many2one fields.

This case occurs when the records in the list are created from a default_get,
and the records do not fit in a single page. In that case, the records in the
first page correctly display the names of their many2one fields, but not the
records in the other pages.

Fixes #24547
2018-05-18 17:30:34 +02:00
Alexandre Kühn 6f7031e9fb [FIX] web: pass unique ids on name_get rpc
Before this commit, when a list contains records with many2one fields that
contain the same values, duplicate ids were passed to the server on rpc
`name_get`.

For instance, if 40 records in a list refer to a Unit of Measure with id "1"
whose displayed_name is "unit(s)", the server receives a long list of ids with
simply the value "1". Also, the server responds with a list of displayed_name,
in this case a list of 40 strings "unit(s)".

With this commit, we always pass unique ids to the server on rpc `name_get`.
2018-05-18 17:30:34 +02:00
Christophe Simonis bfda65d894 [MERGE] forward port branch 9.0 up to 612fd33fb1 2018-05-18 16:19:21 +02:00
Christophe Simonis 612fd33fb1 [FIX] http: correct protocol parsing 2018-05-18 16:15:55 +02:00
Erick Birbe 9d1083829f [IMP] base: Mexico VAT labels is RFC
For Mexico country the VAT label is RFC that stands for "Registro
Federal de Contribuyentes" (Federal Taxpayer Registry Code).

* https://www.oecd.org/tax/automatic-exchange/crs-implementation-and-assistance/tax-identification-numbers/Mexico-TIN.pdf
2018-05-18 16:15:29 +02:00
SEINLET Nicolas 0b6182de38 [FIX] mail: speed up search on followers (#24737)
Odoo puts in cache all stored fields of a recordset when you access the
first stored field not already in cache.  In this particular case, Odoo
will put in cache all stored fields of 'mail.followers', which is
unnecessary and time consuming, especially on models where user follows
plenty of records.

With thousands of followed records, using a read() when searching on
followers is around 2.5 times faster than using mapped().

Record rules based on followers are speed up the same way.
2018-05-18 15:05:22 +02:00
Fabien Meghazi 3862c03ec2 [FIX] base: honor registry/cache signaling for multiple threaded servers
Before this patch the registry and cache signaling was only activated
for PreforkServer. In case Odoo was deployed in a multi process/multi
threaded architecture the signaling was not ensured, causing registry
de-synchronisation amongst threaded servers.

Backported from fd4939dc78
2018-05-18 14:33:22 +02:00
Fabien Meghazi c60b22335b [FIX] base: honor registry/cache signaling for multiple threaded servers
Before this patch the registry and cache signaling was only activated
for PreforkServer. In case Odoo was deployed in a multi process/multi
threaded architecture the signaling was not ensured, causing registry
de-synchronisation amongst threaded servers.
2018-05-18 14:20:35 +02:00
len-odoo 8194e2cb80 [FIX] web: correctly handle admin svg images in channel
When posting an svg image, Odoo tries to resize it for thumbnailing
(like any image).
However this is of no interest since this is a vectorial file format, and
furthermore it distastefully makes the image library Pillow crash, since it only
supports raster formats.
The result would be a broken thumbnail instead of the image itself.

By not setting the thumbnail size if the mimetype contains svg,
we ignore the thumbnailing altogether.

Note that this only applies to the admin user, as otherwise the file is
treated as binary and thus no thumbnailing occurs anyway.

opw 1841153
2018-05-18 13:33:30 +02:00
len-odoo cb4c2be377 11.0 fix negativewos jco (#24781)
* [FIX] mrp: negative workorder issues

- In the onchange of the qty_producing in the wo,
we need to add the date to the stock.move.line as
it is a required field.
- When starting a workorder, check first if it has
not already been done.
2018-05-18 13:20:29 +02:00
Lucas Perais (lpe) abda3464ed [FIX] web: get_file handles arbitrary AND serialized exceptions
Commit bcd4c90 was intendend to make get_file handle uncaught/unserialized exceptions
in the context of a http request

The drawback is that when get_file received a serialized exception (route: /report/download)
the JS modal was empty in that case

This commit handles both the cases

OPW 1848606
closes #24794
2018-05-18 13:03:31 +02:00