Commit Graph
110261 Commits
Author SHA1 Message Date
Goffin Simon 8be16e7a1c [FIX] product: group_product_variant on product kanban view
The number of variants doesn't have to be displayed if variant not enable on product.

opw:711034
2017-03-09 23:52:38 +01:00
Goffin Simon e6d790e340 [FIX] account: _onchange_partner_id not matching fiscal position
When changing partner_id on an invoice, the fiscal positions with auto_apply=True,
must be checked to apply the right one.

To have the same behavior as in 10.0

Backport of this commit: 4b11e3e3a5

opw:715511
2017-03-09 16:21:37 +01:00
Nicolas Martinelli 1d0d74bd89 [FIX] payment: transaction form
The transaction form has readability issues. It is improved by taking as
a example the partner form.

opw-711162
2017-03-09 14:43:01 +01:00
Alexis de Lattre f5722e5076 [FIX] l10n_fr: add missing account 649 (CICE)
Switch account 120  to 'current year earning' type

Closes #15717
2017-03-09 14:20:36 +01:00
Laurent Mignon (ACSONE) 1dea8a53fb [FIX] resource: correct also microsecond information
A lot of methods are designed to work with pure datetime objects as args. If
the value comes from the database it will be rounded at the level of seconds
(0 microsecond). If it comes from a call do datetime.now() / datetime.utcnow()
the datetime object has a value != 0 for its mircroseconds attribute. Therefore
some methods have unpredictable results depending of the origin of the values
manipulated since the microsecond argument is missing into all the calls to
datetime.replace

Closes #15768
2017-03-09 14:07:58 +01:00
Goffin Simon bb0b4cb8f2 [FIX] fleet: return_action_to_open
The 'group_by' must be poped from the context in function return_action_to_open
because the act_window can call another model.

opw:710363
2017-03-09 13:54:33 +01:00
Denis Roussel (ACSONE) e4a0a300cb [FIX] stock_calendar : correctly schedule calendar
Bad call to api.multi method.
Introduced at 4cb09653

Closes #15763
2017-03-09 09:10:23 +01:00
Jeffery CHEN Fan 2ad0a5a906 [FIX] l10n_cn: correct China accounts
Correct the list of accounts using wrong type
Better manifest with copyright and english description

Fixes #14999
Closes #15021
2017-03-09 09:03:31 +01:00
Denis Ledoux a8efeffbf2 [FIX] pos_mercury: support for Inernet Explorer / Edge
In the method `xml_node_to_string` in `qweb2.js`,
which is used when extending XML templates,
such as this extend of the template `PaymentScreen-Paymentlines`

the method `(new XMLSerializer()).serializeToString(node)`
magically escapes the double quotes `"` in Internet Explorer and Edge,
while this is not the case in other browsers,
therefore converting, for instance,
`this.removeAttr("class");`
to
`this.removeAttr(&quote;class&quote;);`
whhich made the rendering of the template fails.

As this method is quite critical, we do not dare
editing it to use an alternative to `XMLSerializer.serializeToString`
in a stable release

Instead, as a workaround, we just avoid the use of the double
quotes.

opw-708296
2017-03-08 18:07:07 +01:00
Christophe Simonis f9fa39a8c0 [FIX] board: correctly handle invalid actions
This may happen when a dashboard contain references to deleted actions.
2017-03-08 16:31:03 +01:00
Nicolas Martinelli 6bb63edb98 [FIX] base: save ir.values
- Install accounting module
- Create new tax, keep note of its ID
- Go to Settings > Technical > User-Defined Defaults
- Change the value of 'taxes_id' to the ID of the tax created
- Create a new product => crash

The issue is that the value of 'taxes_id' is saved as a string, not as a
list. Therefore, once retrieved, it crashes.

opw-709906
2017-03-08 15:28:33 +01:00
Nicolas Martinelli bfef35774d [FIX] sale, purchase: currency in subtotal
The "Subtotal" field of a SO/PO line is not rounding following the
currency rules.

opw-710701
2017-03-08 15:26:25 +01:00
Florent de Labarre 681625ea56 [FIX] account: correct domain evaluation
'is set' filter is the equivalent to != False
A many2one has not the value True but an ID

Closes #15749
2017-03-08 13:46:46 +01:00
Martin Trigaux 9732c3049a [FIX] hr_timesheet_sheet: keep timesheets linked to a task
When deleting an hr_timesheet_sheet.sheet, the linked analytic lines are
dropped too.
This was introduced in 8.0 at 5f45e7ca

The initial bug, reported at #5326, was targeting the analytic lines created
independantly, directly from the timesheet encoding.

In version 8, the timesheets were encoded via project.task.work and the unlink
on the hr_timesheet_sheet.sheet had no effect on the works.

In version 10, this model no longer exists and it needs to be filtered to avoid
removing independant timesheets.

Fixes #15741
2017-03-08 13:38:55 +01:00
Denis Ledoux 4d440caafd [FIX] mass_mailing: mailing users requires write on utm.source
Since revision
731356a155

and the fact `mail.mass_mailing.campaign` inherits (with s)
from `utm.source`, and the name of the mass mailing
is took from this `utm.source` linked to the mass mailing,
a mass mailing user requires the write access on the model `utm.source`
to be able to change the subject of a mass mailing.

As a side node, I notice there is no group applied on the
base `access_utm_source` access rule of the module UTM,
meaning a portal user can create `utm.source`.
I am not sure if this is wanted or not.

opw-710525
2017-03-08 12:52:10 +01:00
Denis Ledoux 8428910a74 [FIX] mail: format_date with falsy date
If the date passed is falsy, return
an empty string instead of crashing.

opw-704260
2017-03-08 12:52:10 +01:00
Nicolas Martinelli b0321b1474 [FIX] sale: do not run procurement twice
When procurements are created, they are automatically run. Avoid this
behavior, to run all procurements at the end of the process and used the
optimized JIT behavior.

opw-710007
2017-03-08 11:44:56 +01:00
Nicolas Martinelli 218a21a37e [FIX] sale: do not run procurement twice
When procurements are created, they are automatically run. Avoid this
behavior, to run all procurements at the end of the process and used the
optimized JIT behavior.

opw-710007
2017-03-08 10:47:19 +01:00
Nicolas Martinelli fb1b9baeb1 [FIX] stock: prevent location creation
Prevent location creation in pack operation view to avoid location
inconsistencies.

opw-707439
2017-03-08 09:28:24 +01:00
Goffin Simon 8c2db9a9a2 [FIX] account: Duplicates a customer invoice
Fine tuning of this commit: a7cd820
When clicking on button "Duplicates" it printed "Duplicate + number". Now it prints
" Duplicate invoice + number" if the customer invoice is of type out_invoice.

opw:708440
2017-03-07 23:45:33 +01:00
Nicolas Lempereur 629d80c3c2 [FIX] mail: fix typo in attachment managment
Fix some dead code. This is a fallback for linking mail attachment with
its data. The issue was not reported since a long time since this just
disable a fallback which in my tests was not used anyway.

opw-710502
2017-03-07 18:05:53 +01:00
Christophe Simonis 0a2b99f985 [FIX] product_visible_discount: use defined variable
Oversight of a previous forward-port
2017-03-07 16:55:05 +01:00
Martin Trigaux 76b724294a [FIX] calendar: correct search in recurrent event
Add a 3 use cases with tests that were failing before.

datetime filters were not working correctly on stop filters
The `_get_recurrent_date_by_event` was only computing recurrency on the start
field of an event which can make a difference. A recurring event
  start=2017-01-01 09:00:00; stop=2017-01-01 10:00:0
was not matched in a search ('stop', '>', '2017-01-01 09:30:00')

The filter != was not handled in the recurring use cases.
e.g. making the search 'start is set' in the web client is equal to
  ('start', '!=', False)

Searching with only a start filter matching recurring events but not the
first ("real") occurence, was returning no result if no stop filter was present.
  start=2017-01-01 09:00:00; count=5
had no result in a search ('start', '>', '2017-01-02')
2017-03-07 15:57:37 +01:00
Goffin Simon 8eb759dcff [FIX] hr_expense: Multi company rule for hr.expense.sheet
To apply to multi company rule on hr.expense.sheet
Inspired from Expense multi company rule

opw:709834
2017-03-07 13:51:02 +01:00
Denis Ledoux 04bb06fcb3 [FIX] mrp: Do not ask for to provide a lot if there is no finished product.
If `product_move` is an empty browse record
`produce_move.product_id.tracking` is `False`, not `none`,
and therefore
`produce_move.product_id.tracking != 'none'` returns True,
and it therefore asked to provide a lot for no reason.

opw-710748
2017-03-07 12:50:34 +01:00
Nicolas Martinelli c0f1f27dbd [FIX] crm: translation in merge message
- Install a language different from English, set it to your user
- Merge two opportunities

The merge message which summarizes the operation contains the name of
the fields in English.

opw-708381
2017-03-07 12:09:45 +01:00
Goffin Simon a7cd820fc1 [FIX] account: Duplicates a refund customer invoice
When clicking on button "Invoices"(below "Print") on a refund
customer invoice, it prints "Refund  + number". But when clicking
on button "Duplicates" it printed "Duplicate + number". Now it prints
" Duplicate refund + number" if the customer invoice is of type out_refund.

opw:708440
2017-03-07 12:06:06 +01:00
Nicolas Martinelli 4ce309dfab [FIX] web: deactivate buttons
To reproduce:
- Get a slow connection, e.g. activate throttling in debug mode of the
  browser.
- Create an invoice with at least one tax.
- Change a price unit.
- Click on 'Save' then repeatedly on 'Validate'

The tax lines are duplicated.

The issue comes from two identical `write` calls whose purpose is to
delete the existing tax line and create a new tax line.

The two calls are issued by the click on 'Save' and the click on
'Validate', which triggers a 'Save' since it doesn't consider the form
as being saved yet.

There were several issues:
- The buttons from the statusbar were not disabled
- The buttons were enabled too soon. They should be enabled again when
  the form is reloaded, otherwise the call to 'Validate' doesn't
  consider the form saved.

This is an extension of commit
https://github.com/odoo/odoo/commit/bbbf3db581b5cf883

opw-710642
2017-03-07 11:57:14 +01:00
Martin Trigaux ee78aa7d6a [FIX] web: avoid undefined options
options is not mandatory, crashed when navigating with tabs
Complete 2bf6e69e
2017-03-07 11:24:23 +01:00
Goffin Simon 69d6c37456 [FIX] web: prepare_dropdown_selection
Steps to reproduce the bug:
1.Create a new company
2.Set a user in this company
3.Go to Helpdesk > All tickets > Create

It raised a traceback because stage_id was not defined

opw:710084
2017-03-07 00:35:58 +01:00
Denis Ledoux cde8668034 [FIX] web: IE <= 11.0 doesn't support ChildNode.remove
IE 11.0 doesn't support `Childnode.remove`:
http://caniuse.com/#feat=childnode-remove

As a workaround, we use `Node.removeChild`,
which is more widely supported.

opw-710617
2017-03-06 18:21:06 +01:00
Atte Isopuro 6458210250 [FIX] sale_stock: don't link groupless backorders to all sales
When a backorder is created from an outgoing picking, a message is posted,
linking to the related sale orders as source of the original picking.

If the initial picking was not created from a sale, the resulting backorder
group was `False`.
The domain ('procurement_group_id', '=', False) matches many unrelated
(e.g. unconfirmed) sale orders.

Avoid trying to find the origin SO for pickings with no SO

Closes #15693
2017-03-06 16:41:14 +01:00
Denis Ledoux a14cf34327 [FIX] im_livechat: Add the livechat on an external site
The file
`/web/static/src/js/services/session.js`
is not required for the livechat to works,
and with it it fails on external websites because it makes
RPC calls to the relative URLs:
`/web/webclient/bootstrap_translations`
`/web/webclient/qweb`

opw-710049
Closes #15518
2017-03-06 16:37:35 +01:00
Nicolas Lempereur 2d10c5eb43 [FIX] website: use public user for sitemap making (up to s14)
The current user was used to generate the sitemap. So if a user with
more permissions than `public user` goes on the sitemap, he could
generate it (if he is the first to see it or the last generation was
more than 12 hours ago (by default)) and have pages unavailables for
a user with lower permission in the sitemap (until the sitemap is
generated again).

The issue was solved in 8.0 with d08facdcb but was introduced back in
10.0 with fd09ddb6f because the `uid` argument was dropped from
`generate` method on `ModelConverter`.

From 10.0 up to saas-14 the fix introduced is to use a `use_public_user`
key in `request.context` but in master we will keep the fd09ddb6f fix
by adding uid to the `generate` method.

opw-708456

note: to forward-port only up to saas-14
2017-03-06 16:11:19 +01:00
Denis Ledoux 3d2841aac0 [FIX] crm: New / opportunity in the dashboard opens an opp form
Up to now, it opened the lead form view instead
of the opportunity form view.

Most-likely, a new / lead should be added to
the dashboard in addition to the new opp,
as this is the case with the view lead/opportunity
but it doesn't seem it was expected up to now
so I leave it like it is.

opw-710583
2017-03-06 16:03:54 +01:00
Nicolas Martinelli fb35132bc6 [FIX] sale_stock: incorrect return
- Create a SO with both 'service' and 'consu' products
- Depending on the order of the lines, the 'Delivered qty' might not be
  editable consistently.

This is because of an incorrect `return` statement in the
`_compute_qty_delivered_updateable` method.

opw-710561
2017-03-06 14:35:20 +01:00
Jeremy Kersten 4edbd15845 [IMP] website_sale: disable zoom on xxs device by default
This is a cherry-pick of 44911af6fd

opw-710491
2017-03-06 14:24:49 +01:00
Denis Ledoux 1279f82e12 [FIX] sale: sales order email template without portal_sale
When disabling the customer portal
in the general settings
(or uninstalling the `portal_sale` module directly),
the model `sale.order` no longer has a method
`get_signup_url`, and it therefore leads
to the fail of the email template rendering which is
still referencing this method.

Besides, the `access_url` is actually used only if
`is_online` is True,
(see the `% if is_online:` few lines later)
and in this case `get_signup_url`
was not used at all.

Therefore, we can assume `None` is a good alternative,
as the resul of `get_signup_url` was actually no longer
used.

opw-710481
2017-03-06 13:28:14 +01:00
Christophe Simonis 6b3a80862c [MERGE] forward port branch saas-11 up to 503227838d 2017-03-06 13:23:38 +01:00
Christophe Simonis 503227838d [MERGE] forward port branch 9.0 up to eaddb7caff 2017-03-06 13:09:17 +01:00
Denis Ledoux eaddb7caff [FIX] uninstall: unlink of many2one fields having one2many dependencies
The revision
ea9ef7c39d
introduced a regression:
many2one fields having one2many depending on it declared before
the declaration of the many2one itself were not unlinked
during a module uninstall.

As a result, the column in the table was not dropped,
and the table itself was not deleted either, not even truncated.

Therefore, when you tried to reinstall the module, you had data
left.

The check of the one2many dependencies must not be performed
during an uninstall. Anyway, this wasn't blocking the uninstall
of the modules,
it was just preventing the field  to be deleted, that's all.

opw-710291
2017-03-06 13:02:39 +01:00
Christophe Simonis be0c9596c8 [MERGE] forward port branch 9.0 up to 8092ee8c6a 2017-03-06 12:21:27 +01:00
Denis Ledoux 8092ee8c6a [FIX] purchase: taxes in price difference accounting entry
Setting the taxes in the accounting move entries
is important for the taxes report.

When a price difference occures in a purchase
with a product set in a perpetual inventory valuation,
the taxes set on the price difference move line should be the same
than the move line from which this price difference
is computed. Otherwise, the taxes report
do not have the whole purchase amount

opw-710228
2017-03-06 11:42:18 +01:00
Christophe Simonis ea527cc3fc [MERGE] forward port branch saas-6 up to 9ff0eb0586 2017-03-06 11:29:04 +01:00
Christophe Simonis 9ff0eb0586 [MERGE] forward port branch 8.0 up to 1246680756 2017-03-06 11:24:16 +01:00
Denis Ledoux 8ecec2bfbb [FIX] payment_paypal: prevent the IPN feedback to return an HTTP error code
When you enable the IPN notifications in your Paypal account configuration,
the default IPN URL is mandatory.

You are therefore obliged to put the IPN feedback URL of Odoo
in this default URL, even if this is not used because
each transaction done by Odoo specifies the URL to which the IPN
notifications must be sent.

Because of this, if you use your Paypal account
for something else, e.g. Ebay, you receive
notifications of payments for these other transactions,
that have nothing to do with Odoo.

In such a case, Odoo returned an HTTP error status code (e.g. 500),
because Odoo couldn't find the given transactions, and
then Paypal sent emails to the Paypal owner
to tell the IPN feedback was failing. Eventually, after
several fails, Paypal automatically disabled the IPN
notifications of the given account.

With this revision, we now avoid to raise the Validation errors
in the case of the IPN feedback, and just logs it,
to avoid Paypal to sent emails to
the owner and to automatically disable the IPN notifications
if it receives transactions from other services than Odoo.

opw-702403
2017-03-06 10:37:49 +01:00
Odoo Translation Bot c0f0d49542 [I18N] Update translation terms from Transifex 2017-03-05 04:32:11 +01:00
Odoo Translation Bot 1246680756 [I18N] Update translation terms from Transifex 2017-03-05 02:55:35 +01:00
Odoo Translation Bot 1b6d91b5c3 [I18N] Update translation terms from Transifex 2017-03-05 00:30:41 +01:00
Denis Ledoux ec2929fbfc [FIX] website_sale: disable the checkout confirm button on submit
On the checkout page, the page loaded after clicking on the
confirm button can take a while, for instance
if you have delivery carrier API requests to perform
(Fedex, USPS, UPS, ...) in order to get
their price according to the shipping weigth
and destination.

As it took a while, the end user was therefore tempted to submit the form
again, multiple times, which caused the requests to the delivery
carriers API to be performed multiple times, and it was
monopolizing multiple workers and the overal performance of the
server was impacted. It also leaded to concurrent update due
to the fact the sale order was being updated multiple times.

opw-710963
2017-03-03 15:58:05 +01:00