Commit Graph
116031 Commits
Author SHA1 Message Date
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
Odoo Translation Bot 9dd56e1972 [I18N] Update translation terms from Transifex 2018-05-20 04:09:56 +02: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
Denis Ledoux 36d45175b0 [FIX] mail: translate activity type in kanban
When opening the activity dropdown in the kanban view
of the opportunities,
the activity type names were not translated in the user language.

In addition, when marking it as done, the message
posted in the discussion thread of the opportunity
was not translated either.

opw-1847908
2018-05-18 12:31:07 +02:00
Nicolas Martinelli 8116756e51 [FIX] website_sale_delivery: price display consistency
- Use a shipping method costing $ 1.00
- Buy a product costing $ 1.00

In the payment page, the delivery cost is displayed `$ 1.00`, while the
subtotal is displayed `$ 1`.
2018-05-18 11:58:08 +02:00
Nicolas Martinelli 8243549bf6 [FIX] website_sale_delivery: display delivery price
- 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
- No delivery amount is set
- Change shipper to one which doesn't cause an issue
- The delivery amount is set
- Switch back to the shipper with error

The delivery amount stays set, while it should change back to zero.

Every time we update the carrier, we automatically remove the delivery
line. One will be added back if the rating succeeds. Moreover, we update
the prices even if the rating doesn't succeed. Since the delivery line
was removed, the price will be updated without delivery.

opw-1838765
2018-05-18 11:58:08 +02:00
Nicolas Martinelli 3bf8e75379 [FIX] website_sale_delivery: display delivery price
- 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
- The 'Delivery' amount (next to the total/subtotal) is not displayed
- Change shipper to one which doesn't cause an issue

The 'Delivery' amount is still not displayed.

The amount is displayed if there is no issue at first rendering of the
page, but never re-evaluated afterwards.

The 'Delivery' amount is now displayed if there is a shipper on the
order.

opw-1838765
2018-05-18 11:58:08 +02:00
Nicolas Martinelli cc878d029a [FIX] website_sale_delivery: remove error
- 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
- The error "Ouch, you cannot choose this carrier!"
- Change shipper to one which doesn't cause an issue

The error is still displayed.

The error is displayed at first rendering of the page, but never
re-evaluated afterwards.

There is no other choice than removing it. Anyway, in the opposite case
(default shipper is OK, and then select one which causes an error) the
error doesn't appears.

opw-1838765
2018-05-18 11:58:08 +02:00
Ignacio Ibeas - Acysos S.L 794df3cadf [CLA] Acysos S.L. 2018-05-18 11:46:07 +02:00
Ignacio Ibeas - Acysos S.L 10ac023707 [ADD] l10n_es: special taxes for agriculture, ranching and fishing 2018-05-18 11:46:07 +02:00
Fabien Meghazi 866d1e7190 [FIX] server: fix support for systemd socket activation in threaded server
This patches fixes the untested and broken draft of inetd and systemd
activation support in the threaded server.

This patch also fixes the loss of the process environment in the
`_reexec()` function when Odoo is respawning during the following events:

    - SIGHUP signal is received
    - one click install has been triggered
    - code reload needed when using `--dev=reload`
2018-05-17 18:38:13 +02:00
Josse Colpaert 4e71bd5caf [FIX] stock: customer/vendor location empty
When creating a new company, the fields customer/vendor location
were empty.

Now, these fields are set with the internal transit location for the company
of the partner and set with Partners Locations/Customers and Partners Locations/Vendors
for the other companies.

opw:1845753
2018-05-17 17:07:24 +02:00
Goffin Simon eac4c0badf [FIX] purchase: Print RFQ and status does not change
Due to this commit: 98cb4719db

When printing a RFQ, the status of the quotation didn't change in SENT.

opw:1849139
2018-05-17 15:38:27 +02:00
Denis Ledoux f8d0efee92 [FIX] stock: use product qty decimal accuracy in Picking Operations
Since revision f6144fe1f3,
the decimal accuracy for the product quantity in
the picking operations report was no longer applied,
leading to display a bunch of numbers after the comma
in some cases.
e.g. 15404.000000000002 Unit(s)

opw-1846723
2018-05-17 14:27:11 +02:00
Denis Ledoux 59a8a1cd8e [FIX] account: accounting advisers can create taxes
Since revision 4acec418ce
it was no longer possible for an accounting adviser
to create taxes.

This is because when creating a taxes,
as the related field `hide_tax_exigibility` wasn't readonly,
it attempted to write on the field
`tax_exigibility` of the model `res.company`,
and the adviser do not has that access right.

There is no reason for this field not to be readonly,
as it is used only to compute an invisible attrs
for the tax form view.

opw-1846265
2018-05-17 12:56:00 +02:00
Thibault Delavallée 7313ce7d3c [FIX] mail: correctly fetch needaction partner ids in chatter
Why y push too fast.
2018-05-17 12:34:46 +02:00
Thibault Delavallée 0897195f91 [FIX] mail: improve implementation of message format fix
This is a better implementation of 19fb650863. It seems we did not
see the fix was inside a loop meaning not really optimized when thinking about
Inbox fetching a lot of messages.
2018-05-17 12:27:38 +02:00
Christophe Simonis 935043dda1 Revert "[FIX] website_quote: make 'Pay & Confirm' work without website_sale"
No dependency change in stable version

This reverts commit 65a589eb54.
2018-05-17 11:37:01 +02:00
Goffin Simon a16114efb4 [FIX] mrp: Two fields with the same label on stock.move
The field quantity_done_store had the same label as the field product_uom_qty
on model "stock.move" and there were confusions in the pivot view of
"stock.move".

opw:1841097
2018-05-17 09:54:37 +02:00
Nicolas Martinelli 77aa313b14 [FIX] mail: XHTML
In case an email received contains XHTML, `fromstring` fails because of
the following error:
> Unicode strings with encoding declaration are not supported. Please
> use bytes input or XML fragments without declaration.

opw-1832683
2018-05-17 09:27:38 +02:00
Lucas Perais (lpe) cd26eb8e7c [FIX] l10n_fr_fec: EcritureLib should not be empty
Make an account move with two move lines.
In those lines' label, just hit the space bar, and post your entry.

Now, get the FEC report.

Before this commit, the EcritureLib field was empty

After, it has the value '/'

closes #24734
2018-05-17 09:24:31 +02:00
Lucas Perais (lpe) 507b5cce3a [FIX] point_of_sale: repair cashier from localStorage on refresh page
open a pos,
change cashier
hit F5

Before this commit, the previous user was set as cashier, forgetting about the change we made
This was because of two things:
- The original fix to do just this use case was pushed in v9.0 as e14ab69772
- In v11.0 the commit f5f60599bf introduced full usage of Backbone's set and get
    which meant that self.cashier was no longer relevant
- In v10.0 the commit 475027b988
    (For v11.0: a9caef0ebb)
    Was intended to update the res.users objects at their loading to ensure that their access rights were loaded too
    But it did this using the wrong condition

After this commit, it reworks fine

OPW 1844006
closes #24762
2018-05-17 09:17:21 +02:00
Lucas Perais (lpe) 54d1b38844 [FIX] point_of_sale: repair cashier from localStorage on refresh page
open a pos,
change cashier
hit F5

Before this commit, the previous user was set as cashier, forgetting about the change we made
This was because of two things:
- The original fix to do just this use case was pushed in v9.0 as e14ab69
- In v10.0 the commit 475027b
    (For v11.0: a9caef0)
    Was intended to update the res.users objects at their loading to ensure that their access rights were loaded too
    But it did this using the wrong condition

After this commit, it reworks fine

OPW 1844006
related #24762

closes #24764
2018-05-17 09:15:24 +02:00
Joren Van Onder 65a589eb54 [FIX] website_quote: make 'Pay & Confirm' work without website_sale
When creating a db with only website_quote and payment_paypal you end
up with:

AttributeError: 'payment.transaction' object has no attribute '_check_or_create_sale_tx'

when clicking on 'Pay & Confirm' in an online quote.

This is because various controller methods in website_quote use this
method and it is defined by the sale_payment module.

opw-1847977
2018-05-16 10:19:07 -07:00
Christophe Simonis 9874adebb8 [MERGE] forward port branch saas-15 up to 40e74240e8 2018-05-16 17:48:37 +02:00
Olivier Dony 86ffb549bf [FIX] base: log failed/successful logins with ip
We used to only log failed logins, and did not include the IP, which
makes it much less useful for intrusion detections systems (e.g. fail2ban)

For example, the following fail2ban filter definition should match a
failed login (in /etc/fail2ban/filter.d/odoo-login.local):

    [Definition]
    failregex = ^ \d+ INFO \S+ \S+ Login failed for db:\S+ login:\S+ from <HOST>
    ignoreregex =

This could be used with a jail definition to block the IP on HTTP(S).

Here is what it could look like for blocking the IP for 15 minutes when
10 failed login attempts are detected from the same IP within 1 minute:

    [odoo-login]
    enabled = true
    port = http,https
    bantime = 900  ; 15 min ban
    maxretry = 10  ; if 10 attempts
    findtime = 60  ; within 1 min
    logpath = /var/log/odoo.log  ;  set the actual odoo log path here
2018-05-16 17:39:32 +02:00
Christophe Simonis 40e74240e8 [MERGE] forward port branch saas-14 up to a1a03792b6 2018-05-16 17:11:39 +02:00
Christophe Simonis a1a03792b6 [MERGE] forward port branch 10.0 up to bcf20cfbec 2018-05-16 17:10:28 +02:00
Raphael Collet bcf20cfbec [FIX] stock: use timedelta instead of relativedelta
Suppose we have a delta between two datetimes:

    delta = dt1 - dt0

If delta is negative but less than a day, ``delta.days`` returns -1 (which is
compensated by positive seconds).  In order to avoid this surprising effect,
use ``delta.total_seconds()`` to compute the number of days.
2018-05-16 16:25:03 +02:00
Xavier Dollé 19fb650863 [FIX] mail: correctly filter needaction on unread notifications in message_format
Previously to this commit needaction used by JS was not taking into account
read notifications. It means notably Inbox counter could be higher than
expected as taking into account read messages while Inbox displays only
unread messages. This commit fixes that by checking notification state when
giving needaction_partner_ids to message_format result.

This fix has a small impact on performances as message_format is used in
notification process for chat or push. A better implementation of message
format and its postprocess could probably lessen this fix impact. As we
target stable version we avoid rewriting other part of the code. Optimization
will be done in development version.

Related to task ID 1841243. This is a manual backport of commit 69714fbeee
done in saas-11.2.
2018-05-16 16:00:43 +02:00
Christophe Simonis 82b15e06ce [MERGE] forward port branch 9.0 up to 9db6dfa25d 2018-05-16 15:54:08 +02:00
Nicolas Martinelli 491243d1ca [FIX] stock_account: partial reception with avg cost
- Create a product where the associated product category has Costing
  Method "Average Cost (AVCO)"
- Create a PO. Order 1 unit at $1000.
- Receive that unit. (System now has 1 unit at $1000).
- Create another PO. Order 3 units at $500 each.
- Receive only 1 unit and don’t create any back order.

System has 2 units @ $625, instead of $750.

The quantity computed should take into account the quantity actually
done.

opw-1843998
2018-05-16 14:21:15 +02:00
Xavier ALT c22d3f6732 [FIX] web: widget char_domain should pass context to selection dialog
In case we define a field like,

<field name="my_domain" widget="char_domain" context="{'active_test': False}"/>

when selecting records the dialog should display all records (as asked by the
context), but it's not the case.

This commit ensure the field context is passed to the selection dialog.

opw-1831902
2018-05-16 14:18:17 +02:00
Olivier Dony cdabb9d74c [FIX] auth_signup: remove password from welcome message
Revision 054c68689b added by mistake the
password of the new user in the welcome message that is sent to users
who signed up with an invitation token.

There is no need for this, the user has just chosen their password, and
we should not send them a copy which could be compromised on the way to
their inbox or later in their inbox.
It may also give users the impression that their passwords is stored in
cleartext in the database, even when that is not the case.

This patch minimalizes changes to the template and its translations.
For existing databases where the code is updated without re-syncing the
template, the password will simply be missing in the message (until a
resync of auth_signup module is done)
2018-05-16 12:17:14 +02:00