Commit Graph
104610 Commits
Author SHA1 Message Date
Christophe Simonis 5c4744cd1f [MERGE] forward port branch 9.0 up to 5f9f4f4d9d 2017-03-01 14:07:15 +01:00
Christophe Simonis 5f9f4f4d9d [MERGE] forward port branch saas-6 up to 7eaa9f767a 2017-03-01 12:23:57 +01:00
Christophe Simonis 7eaa9f767a [MERGE] forward port branch 8.0 up to 775022e01f 2017-03-01 11:26:31 +01:00
Odoo Translation Bot 775022e01f [I18N] Update translation terms from Transifex 2017-03-01 02:54:50 +01:00
Martin Trigaux 18fd9fe0a8 [FIX] server: avoid cron thread death
In case an exception (programming, out of memory or any other unexpected
failure), the cron_thread would crash and not recover until server restart.

Issue #15666 was an example of failure.

Courtesy of Nils Hamerlinck
2017-02-28 18:00:50 +01:00
Martin Trigaux 69e91f6a7c [FIX] base: recover thread from down postgresql
If postgresql database is temporarly down, the cron thread may fail.

The cursor creation fails when trying to connect to the server which leads to
the cron thread to die (uncatched exception) and will not restart when postgres
is back.

Fixes #15666
2017-02-28 18:00:00 +01:00
Florian da Costa e0392500dc [FIX] l10n_fr_fec: evaluation of unaffected earning line
Change the condition from
  [...] and debit != and credit != 0
to
  [...] and (debit != or credit != 0)

as at least one of debit or credit may have an unaffected value

Without this patch a past unpaid entry will not be included in the report.

Closes #15550
2017-02-27 17:00:28 +01:00
Florian da Costa 433f295b94 [FIX] l10n_fr_fec: unaffected earning sign and separator in FEC
The separator in the debit/credit columns of the report must contains coma
instead of dots for decimal separator (fr).
All the other columns (cf SQL query) contains coma but not this one.

Inverse the currency sign of the credit column. Otherwise the credit is negative
and sum of the balance is wrong (sum credit != debit)

Closes #15550
2017-02-27 17:00:28 +01:00
Isaac Gallart Bochons 48cebafdaf [FIX] mrp: call message_post separately
message_post accepts only one id

CLA signature for igallart done at #15625

Closes #15625
2017-02-27 12:26:42 +01:00
Goffin Simon d612daae71 [FIX] product_visible_discount: product_id_change
When computing the discount in product_id_change, before the fix

discount was equal to (new_list_price - line.price_unit) / new_list_price * 100

But line.price_unit was already rounded so the discount computed was not the
discount set in the pricelist due to rounding error.

opw:709704
2017-02-27 11:08:43 +01:00
Odoo Translation Bot 333e7d1f9e [I18N] Update translation terms from Transifex 2017-02-26 02:55:24 +01:00
Odoo Translation Bot 24fa6012e7 [I18N] Update translation terms from Transifex 2017-02-26 00:31:32 +01:00
Jeremy Kersten 3f26151cbd [FIX] website_sale_portal: show cancel invoice fixing typo in domain
This commit closes #15254

Courtesy of @hugho-ad for reporting
2017-02-24 20:52:22 +01:00
Jeremy Kersten 2bf6eab609 [FIX] website: fix sitemap for multi website if more than one page
Template "sitemap_index_xml":
    <loc><t t-esc="url_root"/>sitemap-<t t-esc="page"/>.xml</loc>
should be:
    <loc><t t-esc="url_root"/>sitemap-<t t-esc="website_id"/>-<t t-esc="page"/>.xml</loc>

The fix in python is not elegant but allow to fix without -u of website.
2017-02-24 20:52:22 +01:00
Raphael Collet 1f77c2d681 [FIX] models: add warning for inconsistent compute_sudo on fields (#15184)
Check that fields using the same compute method have the same value for
parameter `compute_sudo`.
2017-02-24 11:45:15 +01:00
Nicolas Lempereur 65c1926a37 [FIX] web: html_frame field and lang vs onchange
In mass mailing there is several possibilities of states when rendering
the widget with a possibly new value:

1. we are not in edition
  a. we are in same language than user language => the editor content
     can be updated
  b. we are in a different language => the content cannot be updated

2. we are in edition
  a. we are editing translation : the editor content cannot be updated
  b. we are not editing translation (editor language == en_US)
    i.   we are requesting editor update (by having magic value
         `on_change_model_and_list`) => the editor can be updated
    ii.  we are in same language than user language => the editor content
         can be updated
    iii. we are in a different language => the editor content cannot be
         updated

In summary:

- if language is the same than the user, we can update the value
- if value is magic `on_change_model_and_list` and we are not translating,
  we can update the editor

Before this commit, this worked as expected but for 2.a.ii. which if the
user language was not en_US would for example prevent editor updating.

closes #15583
closes #15414
opw-708032

inspired by a27e24c6d1

note: the fix is a fix for 9.0 and saas-11 only.
2017-02-23 16:52:45 +01:00
Christophe Simonis 1730dca101 [MERGE] forward port branch 9.0 up to f3491a27a5 2017-02-23 16:51:40 +01:00
Christophe Simonis f3491a27a5 [MERGE] forward port branch saas-6 up to 2cc44f5c62 2017-02-23 13:45:34 +01:00
Christophe Simonis 2cc44f5c62 [MERGE] forward port branch 8.0 up to a6c2210770 2017-02-23 13:36:19 +01:00
Christophe Simonis bbe7cdf05f [IMP] sale_margin: lint uninstall hook 2017-02-23 13:33:39 +01:00
Goffin Simon 36b7d980ca [FIX] sale_margin: uninstall_hook
When uninstalling the module sale_margin, the view 'sale_report' was deleted
because this view was overwritten  in this module.

But the module sale still uses the 'sale_report' view so it raised an error
each time this view was required.

opw:709328
2017-02-22 14:46:26 +01:00
Goffin Simon f0178abe9b [FIX] base: Early commit when making uninstall_hook
Due to these commits, it was impossible to make an uninstall_hook
just after an uninstallation.

In some case, it 's needed to make an uninstall_hook just after the uninstallation.

Look this commit for example: e03c919e9955c5d3f678c0580744d9ef8c483c74
2017-02-22 14:46:07 +01:00
Raphael Collet 4f62a65b1d [FIX] fields: on monetary fields, allow x_currency_id as currency field
OPW 704684
2017-02-22 10:46:28 +01:00
Nicolas Martinelli fcdb50ae3b [FIX] website_sale: "Ship to the same address"
- Create a partner with an invoicing and a delivery address.
- Connect to the website as this partner, create an order
- In the "Shipping & Billing" page, the delivery address is selected
  automatically. Change and set to "Ship to the same address", and
  confirm.

The "Ship To" address is still the delivery address, while it should be
the same than the "Bill To" address.

This reintroduces the v8 behavior:
`order_info.update(partner_shipping_id=checkout.get('shipping_id') or partner_id)`
https://github.com/odoo/odoo/blob/8.0/addons/website_sale/controllers/main.py#L623
2017-02-22 09:32:47 +01:00
Nicolas Martinelli a6186990bc [FIX] website_sale: invoice and delivery address
Create the following
- Create a partner of type "Company" (Address 1)
- Add an "Invoicing" address to this partner (Address 2)
- Add a "Contact" address to this partner
- Authorize this contact as a portal user

Connect as the portal user created:
- Place an order from website, add a product to cart
- In "Shipping & Billing", confirm the order. The proposed billing
  address is "Address 1". Do not change the shipping address ("Ship to
  the same address"), and confirm.

The "Bill To" as well as the "Ship To" address are set to "Address 1".
This is a regression from v8. In v8, "Bill To" is set to "Address 2",
while "Ship To" is set to "Address 1".

opw-707283
2017-02-22 09:32:47 +01:00
Martin Trigaux 1a1b0e238a [FIX] l10n_sa: use official currency
Saudi Arabia uses Saudi Riyal, not Egyptian Pound
Introduced at 932748d

Fixes #11741
2017-02-22 09:30:30 +01:00
Denis Ledoux 2f66e77fe8 [FIX] account: variable st_line used outside its scope
The variable `st_line` was used outside of its scope,
in the line
`move.line_ids.filtered(lambda x:x.statement_id == st_line.statement_id).write({'statement_id': False})`

It leaded to issues when calling the method
on multiple `account.bank.statement.line`: Only
the items associated to the last line were unlinked

opw-709196
2017-02-21 17:27:44 +01:00
Denis Ledoux b7dffb59ff [FIX] link_tracker: convert link with ampersand
Links containing HTML escaped characters,
such as the ampersand
`&` escaped `&amp;`
were not shortened correctly:
Their redirecting URL contained the escaped value
(e.g. `&amp;`) instead of the actual character,
leading to the wrong redirected URL.

e.g. creating a mass-mailing with a link
contains as query string
?test1=1&test2=2 were shortened
with as redirect link
?test1=1&amp;test2=2

opw-708272
2017-02-21 12:26:02 +01:00
Denis Ledoux 3598538b57 [FIX] sale: Hit the Sales button of an archived product
Without passing `active_test=False` in the context,
a one2many fields exludes the record with
`active` set to False.

For an archived product template, this means
`product_variant_ids` returned an empty array

opw-708828
2017-02-20 16:29:07 +01:00
Levent Karakaş a6c2210770 [FIX] hr_payroll: sum correctly category code
If amount = 1 and the category amount = -1, the sum is 0 and the returned
value was amount instead of zero (`0 or amount`)

Avoid this evalution error by splitting on multiple lines

Closes #15470
2017-02-20 16:19:12 +01:00
Goffin Simon 32e0f0954f [FIX] crm_claim: _claim_count
When clicking on the smart button "Claims" of a contact, it shows
a tree view with all the claims of this contact and his children(because
the domain on the filter is [('partner_id','child_of',self)]).
So the function _claim_count has to return the sum of the # claims
of a contact and the # claims of the children of this contact.

opw:708698
2017-02-20 11:36:11 +01:00
Goffin Simon 6c1aeceffb [FIX] purchase: purchase: null stock_moves creation
Link to this commit: 40507c4
To have the same behavior as in 10.0

opw:708099
2017-02-20 09:16:06 +01:00
Odoo Translation Bot 0616016b47 [I18N] Update translation terms from Transifex 2017-02-19 02:54:42 +01:00
Odoo Translation Bot e2bbb01665 [I18N] Update translation terms from Transifex 2017-02-19 00:30:54 +01:00
Adrien Peiffer (ACSONE) a587fde991 [FIX] web_calendar: translation for title on calendar form
The previous code (`parent.field_widget.string`) was returning the untranslated
action name (and why use parent anyway?)

Use the action name instead.

Closes #15207
opw-705938
2017-02-17 16:45:05 +01:00
Wolfgang Taferner 17caa7076d [FIX] point_of_sale: restore removed but used images
Used in the big scrollbars display in CSS

Closes #15523
2017-02-17 15:00:05 +01:00
Denis Ledoux e5747410c9 [FIX] product_visible_discount: sale price for pricelist based on other pricelist
For a pricelist based on another pricelist,
the price of the product is the price in this other
pricelist.

To get the price of a product in a specific pricelist,
the field `price` must be used, along with the right `pricelist`
passed in the context when browsing the product.

Without this, the sale price is considered the sale price
indicated on the form, in the product company currency,
while the pricelist on which is based the currenct pricelist
could give a specific other price, in another specific currency.

e.g.:
Watch, Sale price 690CHF
Public USD Pricelist, setting the sale price of the watch to 790 USD
Reseller USD Pricelist, discounting 60% based on the public pricelist price, discount shown.

Before this revision, the sale price of the watch was marked
690 USD, with a sown discount of 54,xx %

With this revision, the sale price of the watch is marked at
790USD, with a shown discount of 60%, as expected.

opw-708301
2017-02-17 14:54:46 +01:00
Christophe Simonis ac11bfd927 [MERGE] forward port branch 9.0 up to a7531810f3 2017-02-17 11:42:12 +01:00
Christophe Simonis a7ad263fc9 [MERGE] forward port branch 8.0 up to 5de7500a41 2017-02-17 11:27:43 +01:00
Martin Trigaux a7531810f3 [IMP] doc: more explicit section name
A section for uncategorised methods.

Fixes https://twitter.com/mannequin/status/832360802422312962
2017-02-17 11:10:14 +01:00
Goffin Simon 40507c4ad9 [FIX] purchase: null stock_moves creation
Backport of 1f6ec2b8d6

When the quantity of a purchase order line is manually decreased and if
the purchase order line as been generated by more than one procurement.
If the new quantity is lower than the quantity of the smallest
procurement, it is impossible to validate the picking containg the
stock_moves created by the purchase order validation.

It is impossible to validate the picking, because it contains
stock_moves with 'product_qty' set to 0. Those stock_moves are generated
during the validation of a purchase order.

To fix this issue, we avoid the creation of stock moves with a
'product_qty' set to 0 which has no sense.

opw:708099
2017-02-16 16:58:49 +01:00
Martin Trigaux a2cf865dfe [FIX] point_of_sale: use valid sequence on pos.order.line
2 sequences are created when a pos.config is created:
- one for pos.order, stored in sequence_id field
- one for pos.order.line, link is lost, like dust in the wind ♫

When creating a pos.order.line from a new order, the default value was using the
first sequence if found using the code 'pos.order.line' (returning the latest
created).

The name of the line was always using the same sequence, whatever the config
used.

In master, the field has been stored at 645df676 but in stable version, the
following hack is done:

As the sequences are created in the same transaction as the pos.config, the
create_date will be the same to the microsecond.
The name of the config can not be used as too easily changed (e.g. duplicate)
and may not be unique.
Done in SQL to avoid ORM cleaning of microseconds, not working with a search.

opw-703092
2017-02-16 15:34:52 +01:00
Denis Ledoux 5de7500a41 [FIX] sale: stuck workflow in invoice before delivery
With a sale order with:
- a stockable product
- the `Create Invoice` policy set to `Before Delivery`

After the quotation validation and the invoice validation,
if the user:
 - cancelled the invoice,
 - then validated it again,
 - then hit `ignore exception` on the sale order
 - then registered the payment on the invoice

The picking of the sale order was not created automatically,
and the sale order was therefore stuck.

Actually, it was just a write trigger that was missing:
The condition for the sale order workflow to go to the next state
is that the `invoiced` boolean is set to True.

It was, when the invoice of the sale order was paid
(after having registered the payment), but since
this is a computed field, not stored, no write operation
was actually performed on the sale order, and the workflow
wasn't "notified" that a change occured for the `invoiced` boolean.

A simple write on the sale order (e.g. in its notes) would
have unblock the situation, though.

This trigger ensures the worfklow to be notified when
the invoice of the sale order is paid, and therefore
when the `invoiced` boolean is set to `True`.

opw-706591
2017-02-16 11:20:20 +01:00
Cedric Snauwaert 5ed80452d1 [FIX] account: missing depends when computing total amount of invoice
self.type is used inside method but is not present in the dependencies.
OPW 706029
close #14187
2017-02-16 10:34:08 +01:00
Christophe Simonis e2c8752b6b [MERGE] forward port branch 9.0 up to 22ac4deb94 2017-02-15 17:23:56 +01:00
Nicolas Martinelli 3908956193 [FIX] account: company contact data
Avoid exposing information that could be sensitive.
2017-02-15 14:33:14 +01:00
Nicolas Martinelli 1b653178b6 [FIX] account: company contact data
This is a complement of previous commit.

As a portal user, access one of your invoices from the frontend
(download the PDF). The generation of the report crashes because of an
access error. The error arises when trying to access the company banking
information displayed in the report footer.

opw-708581
2017-02-15 13:27:20 +01:00
Nicolas Martinelli ad50324a8e [FIX] base: company contact data
As a portal user, access one of your invoices from the frontend
(download the PDF). The generation of the report crashes because of an
access error. The error arises when trying to access the company contact
information (address, phone, fax...) displayed in the report footer.

This is due an API migration error (7eab8e26d3). Before the migration,
the partner was browsed in `_get_address_data` as:
`address = part_obj.read(cr, openerp.SUPERUSER_ID, ...`

After the migration, this is not browsed as superuser anymore.
Therefore, users with limited access rights won't be able to read it
anymore.

opw-708581
2017-02-15 13:04:47 +01:00
Adrien Dieudonne d506199988 [FIX] web: set max width for image field in form view
Before this commit, wide images were larger than the form view.
2017-02-14 16:02:57 +01:00
Aaron Bohy 0e6eb9687f [FIX] web_kanban: load grouped field if not in view
In the kanban view, if we try to group by a field that is not
defined in the arch, some features (like 'Add a new Column')
are not available because the case is not correctly handled.

To fix it, a RPC is done to load all fields in this case.
2017-02-14 15:07:10 +01:00