Commit Graph
114126 Commits
Author SHA1 Message Date
Christophe Simonis a2890c1e76 [MERGE] forward port branch 10.0 up to bbc226cd6c 2017-10-26 19:03:19 +02:00
Christophe Simonis bbc226cd6c [MERGE] forward port branch 9.0 up to 809aaf9e7b 2017-10-26 18:33:33 +02:00
Jeremy Kersten 809aaf9e7b [FIX] website_event: avoid double subscription
Before this commit, you was able to double click on the button when
are in registration flow. In this case, you subscribe 2 times and so
take 2x more seats, what can be annoying when you have a limited room.

In the same time, we fix the form in the form that generate
strange behaviour like some events not bubbled correctly.

The attendee form (into the modal) was inside the registration form.
$'attendee_form).on('submit') obviously failed due to this bad dom.

This commit closes opw-778191
2017-10-26 17:52:21 +02:00
Christophe Simonis 7a03426826 [MERGE] forward port branch 9.0 up to ab9b5a13e4 2017-10-26 17:47:49 +02:00
Denis Ledoux ab9b5a13e4 [FIX] l10n_ca: default stock input account for products categories
Since Odoo 8.0,
the default stock input account for product categories
in the Canadian localization is set to
`214100 CANADA REVENUE AGENCY`

This is the case since this commit:
https://github.com/odoo/odoo/commit/13dacd11c10dac853def763432829b8976604a7d#diff-2e65e26a4efc4ab95e72dbe2033141ecL294
In which the account with the XML ID 2141_en
214100 Stock Received But Not Billed
has been renamed
214100 CANADA REVENUE AGENCY

In this very same commit, the account "Stock Received But Not Billed" has been moved to the account 217100,
under the XML ID chart2171_en:
https://github.com/odoo/odoo/commit/13dacd11c10dac853def763432829b8976604a7d#diff-2e65e26a4efc4ab95e72dbe2033141ecR447

While the default value for the products categories stock input account remained the same, the account with as code 2141:
https://github.com/odoo/odoo/blob/8.0/addons/l10n_ca/account_chart_template_en.xml#L8

This is an oversight. It was not meant that way. The default stock input account for products
should well be "Stock Received But Not Billed".

In addition, a stock account is supposed to be of type assets, and not of type liabilities.

I contacted @max3903, who was a contributor of the l10n_ca localization,
and who is therefore a better expert than me regarding the Canadian localization.
He confirmed me all the above findings.

opw-775413
2017-10-26 17:31:25 +02:00
Martin Trigaux 8318c38966 [IMP] mrp: clarify help message 2017-10-26 16:19:31 +02:00
Denis Vermylen 9dee7d1e58 [FIX] sale: pricelist without_discount included taxes
When having a product with included taxes that are changed/removed with
a fiscal position, the price changes depending on if the pricelist's
discount_policy is with_discount or without_discount.

This commit aligns the without_discount behavior to the with_discount
behavior.

Note: the behaviour isn't 100% correct. The applied discount will be
      computed on the list_price, instead of the tax excluded
      list_price. If a price_surcharge is set, it will be wrong.
2017-10-26 16:11:55 +02:00
Denis Vermylen a44954b625 [FIX] sale: pricelist recursion in without_discount
Supplements https://github.com/odoo/odoo/commit/0d56dca

When basing a pricelist on another pricelist in different currency
conversion was not being made correctly, since commit https://github.com/odoo/odoo/commit/6b3a808
that changes the pricelist_item on which the currency_id is set in
_get_real_price_currency.

Also align the _get_display_price's base_price to the
_onchange_discount's new_list_price in the case where the pricelist
depends on other pricelists that are in without_discount mode as well.
2017-10-26 16:11:55 +02:00
Benjamin Willig (ACSONE) e653798d5c [FIX] hr_expense: allow inheritance when adding followers (#20319) 2017-10-26 16:01:56 +02:00
Pierre Rousseau b80b13a572 [FIX] l10n_fr_fec: change EcritureNum
opw-777652
2017-10-26 15:54:04 +02:00
Goffin Simon 5082dc55d5 [FIX] stock: 500 error when clicking on WH/OUT on portal
When clicking on WH/OUT  in a SO as portal user in My Account on the website,
it raised an 500 error if the product in the SO is not published on the website.

opw:777708
2017-10-26 14:13:16 +02:00
Jérome Maes 1f62c210a9 [FIX] sale_timesheet: fix multicurrency for invoice and to invoice amount
Convert all amounts into the currency of current
user.

opw-777514
2017-10-26 14:11:32 +02:00
Olivier Dony d9b721c805 [FIX] server: avoid partial HTTP responses in worker mode
Python 3 (before 3.6) is affected by outstanding issue 24291:
 https://bugs.python.org/issue24291

In Python 3.6 the issue is gone thanks to this patch:
 https://bugs.python.org/issue26721

The base StreamRequestHandler class does not properly deal with raw IO
output streams. This affects most HTTP servers that use it, including
werkzeug. It causes large HTTP responses to be truncated when the
output socket is unbuffered and in non-blocking mode.
This is the case in multi-process mode (workers > 0) due to the socket
timeout configured to avoid worker deadlocks.

Typically, large file downloads (2MB+) and large JSON responses will be
truncated and cause corrupted files or errors on the client side.

As a workaround, we turn on the buffering on the output stream by
default in multi-process mode (it is already turned on for the input
stream) when running on Python 3.5.

See also the socket.makefile() method and the docstring of
`socketserver.StreamRequestHandler` at
https://github.com/python/cpython/blob/dcb101e7f078f12fc3d2bf1730410798a880bfe3/Lib/socketserver.py#L707

Fixes #20158
opw-777120
2017-10-26 12:58:22 +02:00
rde f435267680 [FIX] website_quote: missing args on route throwing error
Before this commit, trying to pay a sale order from portal would throw an
error

 * create an order in back end, set a partner, a product, a quotation
   template and 'Online Payment' as Confirmation Mode;
 * confirm the order;
 * go to the order in portal (/quote/XX) and click on 'Pay Now';

It throws a server error because route is being called with unexpected
keyword arguments like success_url, error_url, callback_method.
2017-10-26 12:54:38 +02:00
Thibault Delavallée 1a6fd2f957 [FIX] account: add access_token propagation in portal
Otherwise access token is not correctly propagated notably in payment
form. This means customers paying invoices through the customer portal
without being logged are not correctly redirected once payment is done
as the access token used to display invoices is lost.
2017-10-26 12:54:18 +02:00
Thibault Delavallée 3c0d39baea [REV] base: revert "[IMP] base: no image (and kanban use default values"
This reverts commit cfd5f47493.

It is not clear why it has been done. Original author thinks it can
be reverted as it makes Odoo have people without image which is not
good when starting with Odoo. We don't know what we want but what is
certain is that we need images instead of ugly void placeholder.
2017-10-26 12:53:12 +02:00
Christophe Simonis fe715bd63f [FIX] mrp: deactivate failing test. 2017-10-26 11:40:06 +02:00
Jeremy Kersten 4a3801bc58 [FIX] google_calendar: allow to use the function number_of_week for synchro
get_param return string, but timedelta wait a integer
2017-10-26 11:10:13 +02:00
Martin Trigaux 801fb2967a [FIX] utm: fix the fix typo
Look at the commit message of c4ba5adc, not the content
2017-10-26 10:47:46 +02:00
Cedric Snauwaert 1c367e32d6 [FIX] account: reconciliation: fix trouble with reconciliation in multi-currency
This fixes several problems with the reconciliation widget when used with multi-currency.
- company in EUR, create invoice 25 USD, statement of 25 USD (in journal USD), try to reconcile, the amount is not correctly converted, we see two different values, can't reconcile
- company in EUR, create invoice in EUR, statement in USD journal, the amount displayed for the EUR invoice is not correct
2017-10-26 10:45:58 +02:00
qsm-odoo 6b767c8b1f [FIX] web_editor: properly show error line when saving wrong XML
When using the HTML editor, when attempting to save a syntax-invalid
XML, the error line is supposed to be displayed in red. This was not
the case anymore since saas-15. This was a simple mistake of comparison
between a stringified integer ID and its integer equivalent.
2017-10-26 10:44:07 +02:00
Josse Colpaert 365362a4a0 [FIX] mrp: on rereserve of mo, we can unlink stock.move.lots
On rereservation of an mo, it will remove the existing stock.move.lots
if no quantity was done on them.  We wanted to avoid however that it
 would remove the temporary stock.move.lots on the workorder.  On the normal
 ones however, there is also a workorder_id.  That way it would
 not unlink stock.move.lots when you had workorders.  By checking the temporary or
 not flag (done_wo) instead of workorder_id, we solve the issue.

 Courtesy of blaggacao fixes #19422
2017-10-26 09:50:33 +02:00
Christophe Matthieu e2190860a6 [FIX] web: calendar tests are good in US timezone
Calendar tests did not go into US for a timezone problem, making it more difficult to correct errors.
To do: pass all the tests js in US (with simplification for the calculations of the times)
2017-10-26 09:12:23 +02:00
Christophe Matthieu ffa4646af7 [FIX] web: calendar don't return to month mode in US
When click on the mini calendar, the calendar does not return to month
mode.
2017-10-26 09:12:11 +02:00
Christophe Matthieu 0c0fb63b0d [FIX] web: Calendar view of project tasks are displaying on the wrong day
Tasks are showing up on Wednesday when they are Thursday. Checked the dates
on the tasks and my timezone preferences are set to Americas-New York.

fix: Do not apply timezone for all day mode.
2017-10-26 09:12:11 +02:00
Aaron Bohy 16c90138bd [FIX] web: handle onchange on nested one2manys
Suppose that we have a form view with a one2many field o2m_1,
displayed as a list. The model of o2m_1 contains a one2many field
o2m_2 which isn't displayed in the list view, but which is in the
form view. If an onchange sets the value of o2m_1, e.g. with a
command 0 to create a new record, and that the value of o2m_2 for
this new record is set (e.g. with a command 0 as well), it crashed.
2017-10-26 08:22:00 +02:00
Aaron Bohy 6fa63eb15c [FIX] web: default value for o2m inside o2m
A traceback was raised when opening a new record for a model with a
one2many displayed inside a one2many (e.g. simply displaying the
number of records in the relation), and with an onchange setting a
default value to the inner one2many (for example, linking it to
existing records).

As the inner o2m has no subviews, it has no fieldsInfo, and the
code assumed that fieldsInfo was always set.

This was for example reproducible from v11 as follows:
  - create a product (with MTO/Buy and call for tender (need
    purchase agreement module))
  - create an SO with this product and confirm it
  - go to purchase order form view and add a move_dest_ids field in
    the tree definition of field order_line
  - go to menu purchase agreement and choose the PA generated by
    your SO
  - add a vendor, confirm the PA and click on 'New Quotation'.
2017-10-26 08:19:43 +02:00
Aaron Bohy 7b8001a847 [FIX] hr_expense,web: explicit link_to command for o2m
The ORM doesn't automatically link subrecords when it receives an
update command for a one2many. However, it may be necessary when
the default_get returns existing records for a one2many field. It
only worked before this rev. for the hr_expense model because of an
hack from 2016 (to reproduce: go to Expenses, check some expenses
from the list view, in Actions, click on 'Submit to Manager', the
new hr_expense_sheet contains the checked expenses (one2many), and
the webclient only sent an update command by linked subrecord).

This rev. fixes the problem properly: when the default_get returns
existing subrecords for a one2many field, a link_to command (4) is
generated alongside the update (1) command.
2017-10-26 08:19:43 +02:00
Géry Debongnie 0b41f21c16 [FIX] web: buttons with confirm attribute works properly
Before this commit, buttons in form view with the confirm attributes had
a peculiar behaviour:
- < saas-16: they saved the record as soon as you clicked on them, so
  the warning was basically ignored
- in saas-16+ (the new views): the button did not save the record before
  calling the method, at all.

This can be a problem, obviously.  Also, it does not seem consistent to
have a different behaviour when the user clicks on OK in the confirm
dialog, compared to a button without the confirm attribute.

So, with this commit, we just make sure that such buttons save the
record before calling the method, just like other buttons.
2017-10-25 21:51:36 +02:00
Christophe Simonis 2a1456a29c [FIX] web: _applyChange() should return list of changed fields, even when no onchange are performed 2017-10-25 17:58:01 +02:00
Lucas Perais (lpe) f45edfbe6d [FIX] web: image widget is dependent on its record's last_update
As a way to optimize loading, images are not necessarily fetched in db.
They have, in their url a "unique" parameter, which is the last_update date on **the record** and controls on the python-side whether it should get the image from a cache or from the db.

Before this commit, this __last_update field wasn't present in the view, so it wasn't fetched, and writes on a model's image worked but did not refresh.
The image displayed was the old one.

After this commit, when the image field widget is present, we force the loading of the __last_update field of the record.
Upon update, the image displayed is the new one.

OPW 777552

closes #20457
2017-10-25 16:39:52 +02:00
Laurent Smet 505a7f853f [ADD] account_tax_cash_basis: add hook to change the cash basis base amount account
To be able to retrieve the base amount of cash basis taxes lines, an additional move is created.
However, this additional move contains a several lines that are considered as pollution in reports.
This hook allows to move these additional lines to an another account if needed.

-task: https://www.odoo.com/web#id=35605&view_type=form&model=project.task&action=333&active_id=967&menu_id=4720
2017-10-25 15:44:50 +02:00
Raphael Collet 446be392ea [FIX] base_import, web: error messages related to data import modules
OPW 777366
2017-10-25 15:44:18 +02:00
xmo-odoo f13cab6aa6 [FIX] website_mail_channel: unsubscription
Fixes 27280fefa9:

* `partner_id` is an `int` not a recordset
* qweb Response is lazy (the template is only looked up and rendered
  when we actually need to send the content over the wire) => the error
  would occur outside of the try..except block. Force rendering
  (`Response.flatten`) so we can handle the issue here
* Uses the HttpCase interface to contact the server over a new socket
  (same as tours & al) because using `werkzeug.test.Client` would not
  use the correct cursor (?) and so the test data would not be visible
2017-10-25 15:31:58 +02:00
Simon Lejeune 46af955328 [FIX] stock: display lot_name in the detailed operations view
If the user selected 'use_create_lots', he should see the text field and
not the many2one. This improves the usability of the barcode scanning in
a receipt, where the lots were not displayed (as it only set the
lot_name).
2017-10-25 15:17:57 +02:00
Lucas Perais (lpe) 6fc0793c30 [FIX] web: column aggregates should recompute when no records
1- When viewing for example journal items.
2- Now activate a filter that would display no record

Before this commit, the column aggregates of case 2 were the same as case 1.
After this commit, we recompute the aggregate, which ever case we are in.

OPW 777660

closes #20452
2017-10-25 15:02:13 +02:00
Christophe Simonis 693f8dc68a [MERGE] forward port branch saas-16 up to 7bfde6e05d 2017-10-25 14:57:24 +02:00
Christophe Simonis 7bfde6e05d [MERGE] forward port branch saas-15 up to d516d39948 2017-10-25 14:20:51 +02:00
Géry Debongnie c739bcf0d1 [FIX] web: update column aggregate when field changes (list)
A list view can display the sum of all values for one field, using the
'sum' attribute.  Before this commit, this sum was not updated whenever
a field was changed (but it worked when adding a line).
2017-10-25 14:13:14 +02:00
Christophe Simonis d516d39948 [MERGE] forward port branch saas-14 up to f86141aac2 2017-10-25 13:41:16 +02:00
Goffin Simon c7a6409fac [FIX] base: Changing password with false as new value
Before clicking on 'Change Password' button, a new password must be
written. Otherwise an error was raised: TypeError: secret must be
unicode or bytes, not bool.

opw:777921
2017-10-25 13:35:41 +02:00
Christophe Simonis f86141aac2 [MERGE] forward port branch 10.0 up to 598ac60a77 2017-10-25 12:52:00 +02:00
Nicolas Martinelli 87b2f3fadd [FIX] base: to_text
- Install Website Live Chat
- Publish a Livechat on the website

Crash on rendering:
```
<img t-att-src="user.image_small and ('data:image/png;base64,' + to_text(user.image_small)) ...
```

Commit 1df6f4c741 fixes a P2/P3 compatibility by including the helper
`to_text` in the QWeb context. However, it was included only for reports
(in `ir.actions.report`), while it is necessary for the rendering of all
templates.

opw-777681
opw-777630
2017-10-25 12:16:53 +02:00
Richard Mathot 598ac60a77 [FIX] account_voucher: fix SyntaxError introduced by e69fb3f82d 2017-10-25 12:15:53 +02:00
qdp-odoo e69fb3f82d [FIX] account_voucher: fix missing payment_id in "Pay Directly" voucher
Create an accout.voucher with "Pay Directly" as payment.
    You get something like:

                D  |  C
    --------------------
    Expenses:   x  |
    Cash:          |  x

    However, the expense line doesn't appear in the reconciliation widget
    because the payment_id is missing in the account.move.line and then, doesn't match
    the search domain for the reconciliation.

    To solve it, a payment_id is created for this line in case of "Pay Directly" payment.

    -opw: 775167
2017-10-25 12:04:38 +02:00
Giang Manh b844f3bfd5 [FIX] calendar: sorting error (P3)
When showing a list in Calendar, it is always sorted at least by
id. If the recordset mixes real and virtual (recurrent) events, this
will blow up as sort() will try to compare the int-typed real event
ids and the string-typed virtual event ids.

Generate a type-compatible id key for both real and virtual events in
order to properly sort.

Closes #20278
2017-10-25 11:33:27 +02:00
Christophe Simonis ea9b574ac6 [MERGE] forward port branch 9.0 up to 6366150484 2017-10-25 11:28:25 +02:00
Martin Trigaux 8991021dc6 [FIX] survey: use verbs
The placeholders were not easy to understand
2017-10-25 11:12:14 +02:00
amoyaux 1d72dc3e6a [FIX] mrp: traceback BOM button on product template
[self.ids] represents a list of list and product_id
an integer thus the domain definition was not correct.
2017-10-25 10:59:14 +02:00
Martin Trigaux c4ba5adc04 [FIX] utm: use proper Englsih abreviation
ex is French
e.g. should be used
2017-10-25 10:57:59 +02:00