Commit Graph
104470 Commits
Author SHA1 Message Date
Denis Ledoux 5ea8d4ea33 [FIX] base: fix local variable 'res' referenced before assignment
In the loop `for action in self`, if all iterations
passed in the first `if` block only, res
was never assigned, but returned.

This is an oversight during the conversion of the module to the new API
in revision eb04aa1e39

One could ask himself why `res = False` is before the loop
and not in this `if` block, but we believe this is
in the case multiple actions are passed to this method,
you wouldn't like the result of the first actions in the loop
to be overwritten by `False` when the condition of the last
action of the loop is not met.

For instance the first action returns as result an action but for the
second, the condition to run it is not met, in such a case
you would like what the first action returned as action.

opw-706150
2017-01-26 10:59:58 +01:00
Pierre Masereel f23394b83a [FIX] stock: stock_inventory_line onchange product
If you make an inventory adjustement in mode 'select products manually'
and you add a new line with a product having a different unit of mesure
than the default one, but in the same unit of mesure category than the
default one, the unit of mesure on the line doesn't change because both
are in the same category.

This bug is caused by an 'onchange' which is triggered when the
'product_id' or 'product_uom_id' has been changed. And so we cannot
force to change the value to the product one, because we should still be
able to make an inventory in 'kg', if the unit of mesure is in 'g'.

So to fix this bug, we have set the 'onchange' only on the product_id to
set the unit of mesure set on the product when we create a new line or
change the product of a line. We removed the onchange ont the unit of
mesure, because it was only checking that the unit of mesure is in the
category of the product unit of mesure category, but it's always true
has there is a domain set on the field unit on mesure by the onchange
on product_id
2017-01-25 13:45:29 +01:00
Christophe Simonis 74c6e895f6 [MERGE] forward port branch 9.0 up to 3e31dc0ba4 2017-01-25 13:14:38 +01:00
Christophe Simonis 3e31dc0ba4 [MERGE] forward port branch saas-6 up to 09f7916f48 2017-01-25 13:04:50 +01:00
Christophe Simonis 09f7916f48 [MERGE] forward port branch 8.0 up to 9d535ee2c7 2017-01-25 12:56:42 +01:00
andreparames 1d089833b4 [FIX] init: enable evented based on socket
Don't enable evented mode unless gevent is enabled.
Previous code was activating evented mode as soon as gevent is imported which
may happen in different scenario but is not enough to assume the GeventServer
is actually running.

Closes #13463
2017-01-24 18:07:38 +01:00
Jairo Llopis 9d535ee2c7 [FIX] mail: check all parameters are set
Since `model` is not a required field, the invalidation may crash when one is
missing.
It should never happen than a mail.message has a res_id but not a model as it
makes no business sence.
However it is possible than a message temporarly misses one of the two, e.g:

```
self.model = False
self.res_id = False
```
will trigger two writes and will crash at the first.

Above code should probably be refactored to have only one write but this commit
fixes a regression introduced at 8f1c2bfc (the above code did not crash).

Closes #15199
2017-01-24 16:56:33 +01:00
sergio 28ec23e828 [FIX] account: fallback on missing template
template contains the mail template to render and is the result of the call to
`self.env.ref('account.email_template_edi_invoice', False)`

If the template does not exists (deleted), template is `None` and the action
rendering crashes.
While it is not recommended to delete master data, it is still possible to use
custom mail templates.

Closes #15204
2017-01-24 16:50:55 +01:00
sergio 333f012e25 [CLA] signature for sergiocorato
Done at #15204
2017-01-24 16:50:39 +01:00
Hoang, Diep Huu b4c3ac8d48 [CLA] signature for anothingguy
Backport of 2cf3381b to 9.0 as expressed in #13971
2017-01-24 16:15:36 +01:00
Stefan Rijnhart d0ea652221 [FIX] portal: set a company for portal without one
The field company_id is not required on the res.partner and is used when the
portal user is created for portal access.
If the partner as no comapny set, the creation crashes (required on the user).

Use system default company, with possibility for overwrite.

Closes #15030
2017-01-24 13:39:47 +01:00
Nicolas Martinelli 1aa7af230f [FIX] website_sale: Last Online SO
- Log in on the eCommerce
- Add a product in the cart
- Log out
- Log in again

The previous cart is not retrieved, and a new one is created.

opw-704646
2017-01-24 13:09:26 +01:00
Daniel Dico 94807753e7 [FIX] anonymization: escape table and field names
Same as 1b9d0fa481

Closes #15187
2017-01-24 10:32:03 +01:00
Joren Van Onder 5ce83b872c [FIX] point_of_sale: avoid scrollbar on main window
Scrollbar appeared in Firefox (at least 50.1.0 and up). Related to
depending on non-standard behavior when setting height on a table. For a
detailed explanation see f0eeed93dc.

In this case we can simply ignore overflow on the main POS window since
the height difference introduced is only a couple of pixels.
2017-01-23 17:33:16 -08:00
Joren Van Onder f0eeed93dc [FIX] point_of_sale: scroll contact list in Firefox and Edge
The POS uses tables to do some of it's layout. It also sets 'height:
100%' on a lot of these tables in an attempt to restrict their
height. The CSS standard however defines the height property on a table
as follows:

"A value of 'auto' means that the height is the sum of the row heights
plus any cell spacing or borders. Any other value is treated as a
minimum height." [1]

Chrome and Safari seems to handle this height property in a way that it
does in fact restrict height. The behavior of Firefox and Edge however
is more in line with the spec, and in these browsers table height is not
restricted by this property.

Because of this the contact list was not scrolleable in those
browsers. To resolve this we stop relying on non-standard behavior by
displaying the relevant contact list elements as regular block
elements. Additionally, we now have to recompute the height of the
client list whenever we show/hide the client details, something that
wasn't necessary before.

[1] https://www.w3.org/TR/CSS21/tables.html#height-layout

Fixes #11020
2017-01-23 12:09:27 -08:00
Joren Van Onder cb597806ec [FIX] point_of_sale: force numpad to appear next to actionpad
The sizes of these UI elements are all fixed and non-responsive and
everything is supposed to fit. Currently however Firefox (at least
50.1.0 up to nightly 53.0a1) is computing the width of a <br> element to
be 0.0166626px, forcing the numpad to wrap to the next line. This forces
the numpad to be 216px wide (width of 4 buttons at 54px each).
2017-01-23 12:04:10 -08:00
Denis Ledoux de6c4f7037 [FIX] project: website live chat link in the planners
These links are links to the Website live chat app description,
not our actual livechat support.

Besides, we currently do not make support through the
livechat.

opw-705614
2017-01-23 17:32:44 +01:00
Daniel Dico 1b9d0fa481 [FIX] anonymization: escape table and field name
to avoid postgresql reserved keywords.
fields like fetchmail_server.user or mail_mail.references uses reserves keywords and must be escaped

Closes #15177
2017-01-23 17:28:16 +01:00
Odoo Translation Bot c9c9c1a755 [I18N] fetch missing terms in previous pull
Due to --the minimum-perc rule on tx
Fixes https://twitter.com/bealdav/status/822110096171954176
2017-01-23 15:58:56 +01:00
Christophe Simonis b9374d5c21 [MERGE] forward port branch 9.0 up to 0997a1cf6d 2017-01-23 13:39:09 +01:00
Christophe Simonis 0997a1cf6d [MERGE] forward port branch saas-6 up to 5065f4b3e8 2017-01-23 13:14:51 +01:00
Christophe Simonis 5065f4b3e8 [MERGE] forward port branch 8.0 up to 91f11f8bd6 2017-01-23 10:46:39 +01:00
Jeremy Kersten a307ab8076 [FIX] website_sale: partial revert of 6b87284f
This commit has been forward-ported by error in 9 and +.
Update website_sale.js to fix impacted databases.

Decimal precision in v8 = 0.01, and v9+ = 2

With fwd port, int(0.01) instead of int(2) because data-precision
appears 2x, first with 0.01 (v8), secondly with 2 (v9+).

Js fix uses the last decimal-precision (v9) instead of the first (v8)
2017-01-23 09:52:47 +01:00
Nicolas Martinelli 49f5aef548 [FIX] stock_account: inventory at date
The "Inventory at Date" has several issues:
- graph and pivot views are not available despite their existence
- the views are not linked to an action, thus it is impossible to save
  it on the dashboard.

opw-703649
2017-01-23 09:19:49 +01:00
Nicolas Martinelli 68dd9bdb0a [FIX] board: prevent crash if no action
If the user tries to save on the dashboard a view which was not open
through an existing action, the call to method `add_to_dashboard`
crashes because of incorrect arguments (`action_id` is undefined in JS).

This is for example the case when trying to save an "Inventory at Date"
in the dashboard (will be fixed in a subsequent commit).

opw-703649
2017-01-23 09:19:49 +01:00
Odoo Translation Bot 91f11f8bd6 [I18N] Update translation terms from Transifex 2017-01-22 03:25:31 +01:00
Odoo Translation Bot 4169049263 [I18N] Update translation terms from Transifex 2017-01-22 00:39:31 +01:00
Odoo Translation Bot c150838bb5 [I18N] Update translation terms from Transifex 2017-01-19 17:28:33 +01:00
Martin Trigaux 3c9937388d [FIX] website_customer: filter on correct field
The field tag_ids has been removed at df2bed3c but not changed in the controller
2017-01-19 17:17:42 +01:00
Nicolas Lempereur b9db65aa73 [FIX] web: display warning message for o2m modal
Be a little less strict when not showing o2m list view warning so if the
o2m is not editable (a modal is open instead of editing inline) we still
show warnings.

Also have warnings over modal overlays so they can be used for modals.

opw-702333
2017-01-19 16:46:33 +01:00
Nicolas Lempereur 734d9b56da [FIX] web: conserve /id for saved export list
With 003d85b instead of getting the name of the relation
field_relation we get field_relation/id.

But the data about the related fields are not gotten all at once when
opening the export modal. They are gotten by clicking on the arrow of
the related record.

So we need to have these /id information saved in the export list,
otherwise for example the related records can be missing when exporting
from an export list, whilst everything was OK without using the saved
export list.

With the previous change, an export list could contain an id and .id
fields for the same relational field, so a change must also be done in
fields_info method used when getting a saved list.

opw-665994
opw-693535

note: adapted forward-port of 8.0's 29be9ae80 which was lost when
merging web enterprise onto web community.
2017-01-19 16:24:53 +01:00
Martin Trigaux ebda1abec4 [IMP] stripe: add receipt_email to the order
The email of the recipient must be specified in the charge.
The checkout.js prompt creates a token with the email specified as the name but
to get an email confirmation that the charge succeeded, the receipt_email
parameter must be set.

Side note: the receipt_email is not enough to send email confirmation, it must
also be enabled on Stripe dashboard that generated the access tokens.

Reference: https://support.stripe.com/questions/email-receipts

opw-697759
2017-01-19 13:34:58 +01:00
Nicolas Martinelli 586496338b [FIX] account: crash when unlink taxes
If `get_default` returns an empty value (`None`), the `set` instruction
crashes.

Backport of 26d1a3884b

Closes #15116
opw-702597
2017-01-19 10:51:05 +01:00
Zakaria Makrelouf 050c06188b [CLA] Signature for zakiuu 2017-01-19 10:49:23 +01:00
Martin Trigaux 254afc6c9d [FIX] tools: colorize image with pillow 4.0
Introduced by python-pillow/Pillow@c3fe5d43 and integrated into pillow 4.0
The size of the image is ignored and must be set using an image or a mask.

This patch is retrocompatible with the previous versions as the changed code was
in the box size computation. With this patch a 4 points box size is given so the
modified code is not executed.

Fixes #14927
2017-01-19 10:36:21 +01:00
Nicolas Martinelli 94f7f6aa22 [FIX] web: date < 01-01-1900
The Python method `strftime` raises an error when the date is older than
01-01-1900 ("The datetime strftime() methods require year >= 1900"). If
the user mistyped the date (or was expecting 01-01-16 to be converted
into 01-01-2016), this can lead errors since the ORM uses this method
frequently.

opw-702313
2017-01-19 09:52:44 +01:00
Christophe Simonis 6169018c33 [MERGE] forward port branch 9.0 up to bbdf9605e4 2017-01-18 16:13:03 +01:00
Jiri Zatloukal da3e6e36e6 [CLA] signature for jirizatloukal
Done at #15117
2017-01-18 15:29:50 +01:00
dansanti bbdf9605e4 [FIX] openerp: Field One2many child propagation on NewId dict
If exist an one2many field as child of another field, this one2many get only
empty lines and Javascript dataset set wrong referid, causing a bad query with
False values and 'one2many_v_id'$ as inverse_id.

This PR adetect on convert_to_change if field is one2many and fnames = None,
in case True, set fnames with one2many model's fields

This commit closes #12249, closes #11236

Courtsey of @rco-odoo for review
2017-01-18 15:27:20 +01:00
Jeremy Kersten 16349661e3 [CLA] signature for dansanti 2017-01-18 15:01:00 +01:00
Nicolas Martinelli 23b2bba925 [FIX] calendar: private events
By default, an event can be modified by any employee. This is also the
case for private events, displayed as "Busy" to other users. However,
since any user can modify an event, nothing prevents him to change the
privacy setting in order to be able to see the content.

This commit introduces a global record rule which only allows the
followers of an event to modify it.

opw-705079
2017-01-18 14:49:22 +01:00
Goffin Simon f98a4d45af [FIX] account_asset_invoice: setting account_id on an invoice line with an asset
Thanks to this commit: 342dad44cd

(1) Asset Account
(2) Depreciation Entries: Asset Account
(3) Depreciation Entries: Expense Account

Now it's possible in 9.0 to set the account_income_recognition_id.
So in the case of a vendor bill if the account_income_recognition_id(3) is set,
it means that the depreciation entries are debited on this account(3).
Then the asset account can be used on the invoice line.

NB: When the account_income_recognition_id(3) is not set, it means that

The Asset Account(1) is used to debit the depreciation entries so it cannot be used as an asset account.
In this case, (1) is used as (3)
And the Depreciation Entries: Asset Account(2) is used as (1) and (2) because the all assets are first debited
on this account and progressively the depreciation entries are credited on this account too.

This is why in 10.0, there is an onchange on account_asset_id on model "account.asset.category" which sets
the same value for (1) and (2).

Example with account_income_recognition_id set: Purchase of 100k with a 5 years depreciation:

on (1) debit=100k and credit=0

on (2) each year debit=0 and credit=20k

on (3) each year debit=20k and credit=0

Example without account_income_recognition_id set: Purchase of 100k with a 5 years depreciation:

on (2) debit=100k and credit=0

on (2) each year debit=0 and credit=20k

on (1) each year debit=20k and credit=0

This behavior can be analysed in function create_move on model "account.asset.depreciation.line"

opw:702265
2017-01-18 14:44:53 +01:00
Nicolas Lempereur 2d753ab5ec [FIX] web: handle widget order and custom sequence
An editable list can be drag-and-drop sorted by:

- displaying a sequence field,
- displaying a field with the `handle` widget

At first it was only working if the list was not specifically ordered,
but with 26bf35260 it also worked if the list was ordered on `sequence`
or `sequence ASC`.

This commit changes this so it works:

- if the list is not ordered (same as the original intention),
- if the list is ordered by the sequence field (widget `handle` or sequence)

This allows to have a custom model (on which we can't define _order) to be
ordered on a custom field.

This also remove a far-fetched oddity such as having the view ordered by
sequence but having a custom sequence field before `sequence`.

opw-704612
2017-01-18 14:30:57 +01:00
Christophe Simonis 6825ddf9ad [MERGE] forward port branch 9.0 up to 2e5b58a3da 2017-01-18 14:30:42 +01:00
Raphael Collet 7c5291ff5c [FIX] models: avoid creating XML ids for models that have not been extended
Assume module M extends model `base`.  Upon installing M, all models in the
registry are impacted by the extension, so their `_auto_init` method is
invoked.  This currently creates an XML id `M.model_X` for every model X,
including the custom models created before installing M.  Now, if we deinstall
module M, all those custom models will be removed, as they have only one XML
id, namely the one introduced by M.

Prevent the creation of XML ids for the children of an extended model to avoid
this bug.  Note that if the model extension adds a field, every instance of
that field in children models will have an XML id associated to module M.
2017-01-18 13:32:56 +01:00
Yannick Tivisse e4f6bde414 [FIX] stock: correct typo strinsg -> string 2017-01-18 11:45:25 +01:00
Nicolas Martinelli 2e5b58a3da [FIX] project_issue: traceback when group by 'Date of Closing'
Oversight of commit f57787e

Fixes #15110
2017-01-18 10:33:29 +01:00
Christophe Simonis a0aca47fef [FIX] website_sale_stock: search warehouse as sudo
Oversight of new-api convertion done in previous forward-port.
2017-01-17 18:45:24 +01:00
Christophe Simonis 70f86ce4e8 [MERGE] forward port branch 9.0 up to 16fa61b34f 2017-01-17 18:04:57 +01:00
Christophe Simonis 16fa61b34f [MERGE] forward port branch saas-6 up to 7cb977fc3c 2017-01-17 16:11:05 +01:00