Commit Graph
90137 Commits
Author SHA1 Message Date
Christophe Simonis 0cfbc7581f [MERGE] forward port branch saas-14 up to f8bf335aea 2017-08-23 18:14:18 +02:00
Christophe Simonis f8bf335aea [MERGE] forward port branch 10.0 up to 420e433fa3 2017-08-23 18:12:24 +02:00
Christophe Simonis 420e433fa3 Revert "[FIX] website_sale: Avoid compute tax for every company"
This reverts commit 04cddc447b.

Public user can't read taxes (map_tax() only play with ids)
2017-08-23 18:07:38 +02:00
amoyaux 857778fa94 [FIX] stock: move entire pack with multiple quants
There was an error message when trying to move an entire
pack that contains multiple quants saying that every component
in the pack should be in the same location. (it the case with the
bug)

It happens because after action_done only one quant of the package is moved
to the new location and other quant still in the old location. Thus the
check fail. Also the extra move for remaining was not created.

This commit changes the get_remaining_prod_quantities on pack operation
that had a migration error between old/new api. This change returns the
correct remaining quantities and thus the extra move is created and all
quants for the pack are moved to the new location.
2017-08-23 14:24:11 +02:00
Nicolas Martinelli 3b232b9eff [FIX] link_tracker: do not track 'tel:' or 'sms:' links
- Create a mass mailing including a 'tel' or 'sms' link, e.g.
  `<a href="tel:555-000-0000">555-000-0000</a>`
- When sent, the link is converted to a tracked linked (`http://...`)

We do not want to convert these links, they should be handled by the
browser directly.

opw-765885
2017-08-23 11:08:19 +02:00
Nicolas Martinelli b3590bc58e [FIX] mrp: change lots in produce
- Create Products A and B, tracked by unique serial number.
- Receive some quantity of B.
- Create a BOM for A which uses 1 unit of B.
- Create a MO for 2 units of A, save and check availability.
- Click on the 'Produce' button.
- Change the suggested lot (choose a new one or create), then click on
  the '+' button.

When the wizard is reloaded, the lot chosen is lost.

We reach an exception in the framework: when clicking on the '+' button,
no `create` is performed on the transient model `mrp.product.produce`,
therefore the values are not saved.

Since this use case is an exception and is likely to lead to errors, we
remove the button.

opw-761044
2017-08-23 10:17:49 +02:00
Nicolas Martinelli fa36e98368 [FIX] website_sale: default "Product Prices" value
The default value should be 'subtotal' in the website settings, since it
is already the case in the sales settings.

opw-766024
2017-08-23 09:56:41 +02:00
Benjamin Willig 00125215f7 [FIX] Allow inheritance to change writeoff lines values
Allow inheritance to change writeoff lines values in function _create_writeoff

opw:766422
2017-08-23 09:45:48 +02:00
Nicolas Martinelli cda1bc55af [FIX] product_extended: traceback on bom_count
Complement of commit 543f75f46e

opw-766678
2017-08-22 18:25:45 +02:00
Christophe Simonis d5f2a38b50 [MERGE] forward port branch saas-14 up to 6956ad54de 2017-08-22 17:20:15 +02:00
Christophe Simonis 6956ad54de [MERGE] forward port branch 10.0 up to 6dc0f31415 2017-08-22 16:45:43 +02:00
Christophe Simonis 6dc0f31415 [MERGE] forward port branch saas-11 up to 92ec666f8d 2017-08-22 16:28:10 +02:00
Holger Brunn 8a4a232e54 [FIX] project_issue: use issue_count instead of counting issues
It is costly to compute all issues, return the full list of all issues, only to
compute the length and display it.
Use proper issue_count field.

Closes #18858
2017-08-22 15:25:12 +02:00
amoyaux 92ec666f8d [FIX] stock: change delivery method on a supplied warehouse
Use case to reproduce:
- Create multiple warehouse
- Select a warehouse to ressuply on a warehouse form view
- Go to the supplied warehouse form view
- Change the delivery method -> Traceback can't adapt stock.location type

This happens because there is a write method using a stock
location instead of its id.

This commit use the location id instead of location
2017-08-22 14:15:46 +02:00
Christophe Simonis e68da600de [MERGE] forward port branch 9.0 up to caf78d22e1 2017-08-22 13:55:05 +02:00
Lucas Perais (lpe) e38de9dfa4 [FIX] website_portal: modify user details should inherit from portal
before this commit, when a portal user edited its details, the State field was not updated on change of country_id
This was because a CSS class was missing.

We make the details template calling portal_layout as it should to get every resource we need in the rendering of details

OPW 767041

Closes #18984
2017-08-22 13:33:35 +02:00
Christophe Simonis 902fc764d5 [FIX] mail: only set header value for emails (not comments) 2017-08-22 13:32:34 +02:00
David Vidal 04cddc447b [FIX] website_sale: Avoid compute tax for every company
When a product has multiple company taxes and b2c prices is enabled, price is
not computed properly and adds to the base price every company tax present.

This patch filters the company set on the company so taxes are computed just
for that company.

This closes odoo/doo#18840
2017-08-22 13:18:05 +02:00
Jairo Llopis 48fe0a5953 [FIX] website: get website-specific view ids if available
In a multiwebsite environment, (de)activating some theme views produces
undesired results if the same view exists in different ways for different
websites.

With this patch, we search before for a website-specific view with the provided
 key, and fall back to the XMLID-found one if there is no specific view.

This commit closes odoo/odoo#17970
2017-08-22 13:18:05 +02:00
Jairo Llopis 7c6714d7fe [FIX] website: check website_id on view when applying inheritances.
Before this patch, if some view had both `inherit_id` and `website_id`,
its inheritances were being applied even in different websites.

After this patch, if a view inherits from another, inheritances will only apply
 when both views belong to the same (or none) website.

Refactoring based on the pr #17635
This closes odoo/odoo#17635
2017-08-22 13:18:05 +02:00
Christophe Simonis caf78d22e1 [MERGE] forward port branch saas-6 up to e4c7b11834 2017-08-22 12:42:26 +02:00
Christophe Simonis e4c7b11834 [MERGE] forward port branch 8.0 up to ff30928786 2017-08-22 12:38:17 +02:00
Christophe Simonis c023e1d562 [FIX] mail: add custom headers for mails send via the composer 2017-08-22 12:27:47 +02:00
Thibault Delavallée e8cfa45f3c [FIX] project: fix issue with onchange when unsetting project
Let us do like in project issue and use a void record set instead of
None.
2017-08-22 10:55:37 +02:00
Goffin Simon d7481a9bb1 [FIX] website_portal: Wrong word
Typo error.

opw:766578
2017-08-21 14:55:48 +02:00
Yenthe V.G e25b8356e5 [IMP] sale: hide analytic info
Make the view consistent, hide the analytic information to users no in analytic
accounting.

Courtesy of Andrius Laukavičius

Fixes #18875
Closes #18955
2017-08-21 14:04:29 +02:00
Goffin Simon 68de5c7e9f [FIX] account: Cancel: create refund and reconcile
When refunding an invoice with the option: "Cancel: create refund and reconcile",
it raised a warning: "You are trying to reconcile some entries that are already reconciled!"
because in some cases the refund is linked to several entries which match the same
account of the invoice. So it tried to reconcile several times the same entries.

opw:765673
2017-08-21 10:22:20 +02:00
Martin Trigaux 85a360eeae [FIX] sale_stock: allow to cancel multiple orders
The action was tagged multi but crashed if executed on more than one order.
Courtesy of Andrius Laukavičius
2017-08-21 10:15:24 +02:00
Nicolas Martinelli 7e1d1f9502 [FIX] account: set default taxes
Allows removing default taxes. It was supposed to solve PR 11498, but
the solution brings more problems than the original issue.

opw-766720
2017-08-21 08:54:25 +02:00
Odoo Translation Bot 3b142d426a [I18N] Update translation terms from Transifex 2017-08-20 07:14:17 +02:00
Odoo Translation Bot 8cb991c772 [I18N] Update translation terms from Transifex 2017-08-20 04:40:12 +02:00
Odoo Translation Bot 4c78611784 [I18N] Update translation terms from Transifex 2017-08-20 00:31:52 +02:00
Joren Van Onder 89cade3bff [FIX] pos_restaurant: wrap product names on OrderChangeReceipt
Reuse generate_wrapped_product_name() which was implemented for
regular POS receipts at 62a8def918.

Fixes #18688
2017-08-18 13:56:39 -07:00
qsm-odoo be754451b4 [FIX] web_editor: open correct view on HTML editor default start
When starting the HTML editor, the first view that is shown is supposed
to be the main one of the page by default. This was not the case for
custom pages as the 'xml_id' of the page was considered instead of its
'key' value.
2017-08-18 12:36:04 +02:00
Nicolas Martinelli 110bf158f6 [FIX] website_sale_digital: special character in filename
- Create a product with attachment, and name the attachment 'テスト'
- Purchase the product, make a payment, validate and pay the invoice
- Go to My Orders under My Account, open the order, and try to download
  the file 'テスト'.

An error 500 is raised due to a UnicodeEncodeError.

```
  File "/home/nim/src/odoo/addons/website_sale_digital/controllers/main.py", line 104, in download_attachment
    return http.send_file(data, filename=attachment['name'], as_attachment=True)
  File "/home/nim/src/odoo/odoo/http.py", line 1595, in send_file
    headers.add('Content-Disposition', 'attachment', filename=filename)
  File "/usr/lib/python2.7/dist-packages/werkzeug/datastructures.py", line 1093, in add
    _value = _options_header_vkw(_value, kw)
  File "/usr/lib/python2.7/dist-packages/werkzeug/datastructures.py", line 830, in _options_header_vkw
    for k, v in kw.items()))
  File "/usr/lib/python2.7/dist-packages/werkzeug/http.py", line 212, in dump_options_header
    segments.append('%s=%s' % (key, quote_header_value(value)))
  File "/usr/lib/python2.7/dist-packages/werkzeug/http.py", line 165, in quote_header_value
    value = str(value)
UnicodeEncodeError: 'ascii' codec can't encode characters in position 0-2: ordinal not in range(128)

```

opw-766568
2017-08-18 11:26:08 +02:00
Cedric Snauwaert 27b46f3ba5 [FIX] account: when assigning outstanding payment in another currency, don't verify move validity
Otherwise if payment is before lock date, user will get an error as he can't change the move value before lock date.
2017-08-17 14:17:38 +02:00
Nicolas Martinelli c00267bc34 [FIX] stock: inventory adjustment
The inventory adjustment form is not suitable for large inventories.

First, a list view embedded in a form view is not convenient since it
doesn't provide any search capabilities. The user has to rely on the
search feature of the browser, which has restricted features in
comparison to the Odoo search field.

Then, the existing onchange mechanism coupled with computed fields
triggers heavy computations impacting all lines each time a single
line is modified. This leads to a hanging page for every inventory line
modification, which causes a non-negligeable loss of time.

This commit introduces a new tree view for inventory lines, accessible
thanks to a stat button on the inventory page. This button is available
in debug mode, if the inventory is in state 'Confirmed'. The tree view
contains the same fields than the tree view embedded in the form view,
without the flaws of the latter.

opw-760614
2017-08-17 13:32:02 +02:00
qsm-odoo 1472d92a5d [FIX] website_blog: do not sanitize blog content field
Fixes commit https://github.com/odoo/odoo/commit/02c748be59ac8abc44c945218587e7b8a8e06a28:
Blog content field should not have been marked for any sanitization at
all as it is a field whose content is editable only by users through the
website editor. Any content should be authorized there. In particular,
some snippets contain form elements (like <input/> tags) which are
never accepted during sanitization.

opw-752458
2017-08-17 13:31:22 +02:00
Nicolas Martinelli 99e5a601b0 [FIX] payment_stripe: charge creation failed
To reproduce:
- Buy a product costing 0.01
- Validate the cart, pay with Stripe
- Enter the credit card info, validate

Stripe cannot process the transaction (minimum charge is not met), but
the user is not warned about it. The Stripe pop-up is closed and the
error is recorded in the console silently.

opw-765775
2017-08-17 12:16:28 +02:00
Yannick Tivisse 1651786340 [FIX] mail: Allow to recompute the res_model on a mail.follower after creation
Purpose
=======

Currently an employee can
- Create mail.followers
- Write on mail.follower if it is related to his own partner

When creating a record with followers (example: An expense sheet), the followers are created but the function fields are recomputed and stored on the table (if store=True).

In that particular case (Create: ok, Write: ko), this recomputation will trigger a write and then an access right error with a transaction rollback.

Specification
=============

Adding the `compute_sudo=True` attribute on the `res_model` field, the recomputation will be allowed for users at the record creation.

This fix doesn't imply to update the modules.
2017-08-17 11:16:21 +02:00
Nicolas Martinelli c9cd44cf56 [FIX] payment_stripe: UTF-8 encoding
For proper comparison with 'PYGí'
2017-08-17 10:43:23 +02:00
Yenthe V.G 06019dfa6d [FIX] google_account: do not update without client_id and client_secret
If a google application has no client_id or client_secret during the update
process (e.g. was configured but the API keys have been removed and the tokens
have expired), the method will crash.

Instead of continuously try and produce a traceback, return a proper error message

Closes #18613
Closes #18614
2017-08-16 17:24:24 +02:00
Yannick Tivisse fc1f00a7d0 [FIX] sales_team: Don't parse graph values
The graphs can accept None as value. int(None) is not working well.
2017-08-16 14:25:35 +02:00
Lucas Perais (lpe) ff30928786 [FIX] account_budget: clearer analytic budget report
Before this commit there were two issues:
- The date "from and to" set in the wizard weren't working, as in not used at all
- The lines in the report did not have a date range, making the understanding of the report difficult

after this commit, only the budget lines which dates overlap at least one day of the report's dates will be selected.
Also, the first line of the report, containing the budget name also contains the dates on which it applies

OPW 743441

Closes #18737
2017-08-16 09:09:22 +02:00
Lucas Perais (lpe) 8c5d8af855 [FIX] point_of_sale: recompute for current session only
Backport of 0280354045

Original message:

The previous trigger would recompute all sessions of a config when modifying
the cash_control flag on the config.
It was not possible to enable cash_control if a previous session wasn't in
cash control mode.

Recompute only when changing the config

OPW 761025

Closes #18814
2017-08-16 08:56:44 +02:00
Nicolas Martinelli 0888602831 [FIX] website_sale: return sale.order object
Always return a `sale.order` object, otherwise calling method may crash
since they expect receiving such an object.

opw-761344
2017-08-14 16:00:13 +02:00
Nicolas Martinelli 3f7eee073b [FIX] stock: split move
1. Set the Decimal Accuracy of "Product Unit of Measure" to 7.
2. Create a UoM: T-LBS which is the reference for weight and has a
   precision of 0.01
3. Deactivate KG (which was the previous reference for weight)
4. Create a UoM: T-GT which is BIGGER, with a ratio of 2240.00 and a
   precision of 0.0000001 (necessary to avoid rounding errors)
5. Set the Product Unit of Measure Decimal Accuracy to 6 digits.
6. Create a Product T-TEST with T-LBS as the UoM ans Tracking as LOTS
7. Create a PO for 60 T-GT
8. Observe a Receipt created for 134,400.0000000 T-LBS
9. Receive 42760 by using LOT SPLIT button, and creating a LOT to hold
   this amount.
10. Click VALIDATE.
11. Click CREATE BACKORDER.

The backorder is created for 91640.01 instead of 91640.00.

When the backorder is created, we should make sure to use the same
rounding method that was used to compute `product_uom_qty`, in this case
'HALF-UP'.

opw-753116
2017-08-14 15:16:43 +02:00
Nicolas Martinelli 7aa9a7edeb [FIX] website_hr_recruitment: hr department
To reproduce:

- Create department 'Art' parent Department 'Management'
- Create job position and set department 'Art' & publish
- Allow 'Filter by department' from the frontend page
- As a public user, open job => Access Forbidden

The record rule should be adapted to allow accessing departments which
have children.

Actually, the rule could probably be removed since the controller
already lists only the necessary departments.

opw-765736
2017-08-14 15:05:15 +02:00
Yannick Tivisse fd089ee467 [IMP] base_import: Defer parent computation after record creation/update
Currently when importing files, the parent left and right are recomputed on each record creation/update, which could lead to a lot a request.

This commit will defer the parent field recomputation to the end on the `load` function by recomputing the values from the MPTT and inserting directly the new values on the records.

Tested on a customer instance, this will reduce the execution time when importing a thousand stock.location from 15 minutes to several seconds.
2017-08-14 15:02:52 +02:00
Nicolas Martinelli 5c2380e9f4 [FIX] product: create variant
1. Create an attribute with create_variant boolean un-ticked (ie. don't
   create variants from these attributes). For example 'Test Attribute'
2. Create attribute values related to the above attribute. For example
   'Test 1', 'Test 2', etc
3. Create a product (product.template) and assign an attribute (eg.
   Color: black and white)
4. On one of the product variants, add one of the attribute values for
   the attribute we've created in step 2 to the attribute_value_ids
   field to allow for filtering by product attributes that do not create
   variants.
5. Go back to product template and add another attribute value to an
   attribute where create_variant is True (eg. Memory: 16 GB)
6. Our value from attribute_value_ids is gone, and the product has been
   deactivated

When attributes are set with create_variant is False, they are
obviously not used to create variants. Therefore, when we are looking
for existing variants, we should filter out these attributes.

Partially closes #18682
opw-762743
2017-08-14 11:10:43 +02:00