Commit Graph
126133 Commits
Author SHA1 Message Date
Martin Trigaux f7501b9fff [FIX] website_sale: data > demo data
Do not rename a translatable record in demo data.
Renaming a translatable record will breaks translations.
I am aware this renaming was done for demo purposes but it is not a good enough
reason to force people in another language (e.g. Chinese) to have the main
pricelist to be named 'USD'.

Exporting the translations only when the product module is installed is not an
option as many product descriptions are added in website_sale
(website_description field) and would then be missing from the translated
content.

It is the same problems as renaming menu based on module installation, it
will not work for non-English speakers.

Will also avoid manual corrections of pot file such as in #23686
2018-03-16 13:44:44 +01:00
Christophe Simonis 512fd20dfd [IMP] maintenance: allow cross-company usage
Company fields should not be required.
2018-03-16 13:37:59 +01:00
Nicolas Martinelli 4e507faaaf [FIX] web_editor: type of res_id
- Set the demo user to have access to all quotations
- Connect as demo, create a quote and send the message
- In the message try to upload an image

An access error is raised, although the user can write on the record.

This is because the `res_id` received is a `string`, not an `int`.
Therefore, the access check fails.

Introduced with 6494f51171

opw-1824673
2018-03-16 13:30:25 +01:00
Stéphane Bidoul (ACSONE) 854943379b [FIX] hr_expense: fix Not Refused filter
"cancel" is not a valid hr.expense state
This filter should be the opposite of the one above.

Closes #18823
2018-03-16 13:23:54 +01:00
Jerther 0ee76b664c [IMP] doc: add a tip to create a model without any table
As explained in #17386, _auto=False on a model is used for report where the
table is explicitely created in init method.
To create a model without any table, AbstractModel should be used.

Closes #19448
2018-03-16 12:57:16 +01:00
Akim Juillerat c4a11cb42a [FIX] stock: use correct warehouse name in multicompany
At stock installation, the warehouse0 has the name of the first company found
(order "sequence, name"), while the comapny_id field is
`_company_default_get('stock.inventory')` (the company of the user installing
the stock module).

In a multi-company environment, it is possible than both results are different
and having name = 'Company A' and company_id = 'Company B'.

Use the name of the default company as default value for the field name.
Note that 'stock.inventory' is not needed in _company_default_get call but
kept to match the default of company_id (in case of override).

Using a default on the field will impact all the future records but should,
hopefully, not be problematic as it is a valid default value.

Closes #19563
2018-03-16 12:12:30 +01:00
len-odoo 00057f8efd [FIX] stock, sale_stock, purchase: create quality checks for backorders
There was no Quality check entry for backorders
when the user did a partial shipment.
We move the logic of the backorder creation to the _create_backorder function.
This function was defined but not called anymore due to a refactoring.
We clean some of its unnecessary overrides which were not used anymore.

opw-1816845
2018-03-16 11:36:53 +01:00
Romain Derie 61d049ab4c [FIX] sale_coupon: recompute coupon before confirmation
Instead of after
If "Lock Confirmed Orders" option is checked, a sale order with a coupon can not
be confirmed as the lines are recomputed after the change of state

Backport of https://github.com/odoo/enterprise/commit/073ca5866a3a7006a03b99c4681e60da7a6e6efd

Closes #1967
2018-03-16 11:14:12 +01:00
Thibault Delavallée cd69ea8f9a [REM] crm, project: remove support of mail-based record update
Currently crm and project parse incoming email body following an old
syntax to find some "set field - value" lines in the email content. It is
used to update the record linked to the discussion directly from the email.

However this feature is undocumented and not really supported anymore.
Moreover we don't think being able to update records from emails is a
reliable way of working. Moreover those update is limited to

 * revenue and probably for leads; this should totally be managed from
   the pipeline view by lead / opportunity responsible;
 * priority update coming from a "priority" entry in the incoming email;
   this code seems strange as priority is probably not standard in email
   headers;
 * planned hours for project; this should be managed by project user
   and managers through dedicated views in Odoo;

Let us remove that old feature and let people use desktop or mobile
interface to update their records.
2018-03-16 11:00:35 +01:00
Thibault Delavallée 8a7a2c7af2 [FIX] mail: add missing decorators for public methods in subtype model 2018-03-16 10:43:09 +01:00
Simon Lejeune 0a2999cdd9 [FIX] stock: delivery slip report
The delivery slip is a document targeted to the customer, it is
important that the quantities displayed there reflects what's actually
been delivered.

As for some reason the delivery slip tries do display some stuff on a
not yet done picking and as the ordered_qty field on the move line do
not reflect the ordered quantity but instead the first quantity reserved
on it, we apply the following changes to make the report consistent.

- In all cases, only display the quantity done.
- Get rid of the ordered / delivered quantities. If the move wasn't
  processed fully and a backorder will follow, a message is shown at
  the end of the picking.

There's an ongoing task to fix this report in a better way on master.

opw-1808126
2018-03-16 10:42:22 +01:00
Simon Lejeune ca64b299cc [FIX] stock: picking report
Display the reserved quantity of the move line. Before this patch, it
was only displayed if the product was tracked by lot or serial number.
Not showing it make the only visible quantity on the report the initial
demand of the move, leading users to think the move is fully available.

opw-1808126
2018-03-16 10:42:22 +01:00
Mehul Patel 78d681d14f [IMP] mail: composer / chatter new followers email address tooltips
Before this commit, many2many email tags showed the recipient's name
and email address. Most of the time, the text was cut off in order to
fit in the maximum length of a many2many tag, so the email address was
usually not visible.

With this commit, many2many email tags now show only the recipient's
name. The recipient's email address is displayed when hovering on the
tag.

Task-ID 36677
2018-03-16 09:48:13 +01:00
Ryan Cole ca83d3c1ac [IMP] doc: add details of o2m and m2m limitations 2018-03-16 09:04:31 +01:00
Florent de Labarre dc1681b1f8 [FIX] stock: show complete name of product
In case of changing the quantity on hand of two variants of the same product,
the two inventory adjustment created will have the same name (the name of the
product.template).
Show the name of variant instead.

Closes #23696
2018-03-16 08:58:02 +01:00
Nicolas Lempereur 45607de944 [FIX] test_main_flows: set tax on product in test
Following odoo/odoo@87c09b8 if a chart of account template with falsy
complete_set_tax is installed, the default sale and purchase taxes are
not set.

This made a enterprise step fail in test_main_flow, so this commit set
the tax on product inside the test explicitely.
2018-03-16 08:49:59 +01:00
João Santos 6bafc30ed3 [FIX] hr_org_chart: add missing event on show more button
The event was lost during new view refactoring at e3d1abc75f
The "show more" button at the bottom of a too long employee list was not binded
to an event.
After this commit, clicking the button leads to the subordinates list.

CLA signature for agente2012

Closes #23665
2018-03-16 08:39:31 +01:00
Nicolas Martinelli 08dc1fc268 [FIX] sale_coupon: fix test
Following https://github.com/odoo/odoo/commit/87c09b8ebcea950b628e5c7adfe847b9f8b6c031
the default COA taxes are not used as sale/purchase default taxes.
2018-03-16 08:31:03 +01:00
Aaron Bohy 75802f9afc [FIX] web: ActionManager: concurrent window actions
This rev. strengthens the handling of concurrent actions of type
'ir.actions.act_window' in the ActionManager. In particular, the
two following cases are now handled:

 - execute an action A, its 'load_views' RPC takes a while, during
   that time, execute an action B: A can be dropped, meaning that
   it doesn't need to fetch its data, and thus it should not be
   appended to the DOM (nor appear in the breadcrumbs) ;
 - execute an action A, its 'read' or 'search_read' RPC takes a
   while, during that time, execute an action B: A can be dropped
   and should not be appended to the DOM (nor appear in the
   breadcrumbs).
2018-03-16 08:08:38 +01:00
Joren Van Onder e94912b9a9 [FIX] payment: do not refund transactions if they need 3DS validation
This was already the intended behavior, but in Python a return inside
of a try...finally does not behave this way. From the Python
documentation [1]:

When a return, break or continue statement is executed in the try
suite of a try...finally statement, the finally clause is also
executed ‘on the way out.’

This can cause issues because some payment acquirers will return an
error when refunding a pending transaction. This puts the transaction
in the 'error' state which means it won't be refunded anymore.

Additionally, putting s2s_do_transaction in a try...except like this
hides any traceback that occurs which makes troubleshooting harder.

[1] https://docs.python.org/3/reference/compound_stmts.html#finally
2018-03-15 14:56:34 -07:00
Goffin Simon 0717bb6c0d [FIX] event_sale: Expected attendees for event
When making a registration for event tickets from a SO, by clicking on apply
from registration.editor.form view, duplicated event registrations
were created(in function action_make_registration) because the registration_id
was not sent to the server.

opw:1824952
2018-03-15 17:30:22 +01:00
Nicolas Lempereur 7f216f62b6 [FIX] web_editor: modal fullscreen is fullscreen
Depending on CSS surrounding the editor, the fullscreen component could
fail to set the editor fullscreen.

eg. if the editor is in a modal in a modal (ie. when editing a mail
template when adding an activity and creating a marketing automation
campaign) the fullscreen function would set it to 184px height away 30px
to the screen top.

With this change, `transform` css property is unset on parent elements
of the editor, this was causing the absolute editor to have an offset
parent that was not the body tag.

opw-1824605
closes #23682
2018-03-15 17:12:57 +01:00
Deep Patel 71de0c47f8 [IMP] base,web: settings view: enable swipe on mobile
Task 38926
2018-03-15 17:04:33 +01:00
Aaron Bohy c3be396519 [REF] base,web: move and rename settings tests file
and remove some unnecessary code
2018-03-15 17:03:32 +01:00
Aaron Bohy 3dd93ed129 [FIX] base: settings view: don't patch jQuery
especially to alter the behavior of a standard function to make it
behave like a function that is already available (defined in our
extension of jQuery).
2018-03-15 16:55:53 +01:00
Stephane Bidoul 3bf9cf4f36 [FIX] l10n_multilang: correctly set src
While it is the name of the record that is set most of the time, it can also
be different value (like tax description)

Closes #21651
2018-03-15 16:40:53 +01:00
Martin Trigaux dc7b2dff02 [FIX] crm: partial backport of 78b7996d
It appears there is more partners withotu a create_date than I expected on
legacy databases

opw-1827099
2018-03-15 16:37:02 +01:00
Aaron Bohy dbbb342eff [FIX] base: settings view: don't patch jQuery
especially to alter the behavior of a standard function to make it
behave like a function that is already available (defined in our
extension of jQuery).
2018-03-15 16:21:51 +01:00
Yannick Tivisse 206209a461 [IMP] l10n_be_hr_payroll: Add name on views to allow inheritance 2018-03-15 16:03:01 +01:00
Martin Trigaux 850d0a79b7 [I18N] product: followup of 192dc39ef7
Was stating in 192dc39ef7 that 'Public Pricelist' was already present but it
was actually 'Public Price'
So term was missing.

Still related to #23686
2018-03-15 15:47:35 +01:00
Martin Trigaux 192dc39ef7 [FIX] product: remove wrong reference to pricelist
The pricelist `list0` is name 'Public Pricelist' and is already present in the
product.pot file.
USD is the renamed name after installing website_sale

Closes #23686
2018-03-15 15:16:42 +01:00
Lucas Perais (lpe) 61216f116a [FIX] web: add many records in m2m list
Have a model with a m2m (field A)
  this m2m has also a m2m (and displayed as m2m tags in the view) (field AA)
Have a domain on field A, to trigger the search view selection
Click on add an item
Select everything in the modal, making sure that there is more than 40 records

Click on Select

Before this commit:
There was a traceback indicating the local data did not contain records >= 40
This was because the internal data repository was constrained by a limit

After this commit:
We adapt the limit of the local data repository and there is not traceback

OPW 1823400
2018-03-15 15:11:08 +01:00
Romain Derie 2b5bb95d43 [FIX] website: make 'Optimize SEO' working again (for empty fields)
This commit https://github.com/odoo/odoo/commit/965f49201812cc3cca319a3b5b93331272dd2288 removed empty meta-description and meta-keywords from
the DOM for SEO audit reasons (these tags when empty are considered as
duplicates at a SEO point of view).

By doing so it prevent the 'Optimize SEO' to work correctly since it can't
retrieve the DOM elements that are used to store the user modifications until
he saves.

Now, even when these meta-tags are empty, we display them to people having the
rights to 'Optimize SEO'.

This closes #23659
2018-03-15 15:03:34 +01:00
Thibault Delavallée 1e040c8713 [FIX] test_mail: update one counter because of runbot crashing sometimes
Due to unknown reasons sometimes a performance test takes one query more to
run than expected. Let us therefore avoid red runbots by increasing the
query count by 1.
2018-03-15 14:18:18 +01:00
Raphael Collet f31516566e [FIX] base: validate domain of field used in view
When a field has a domain like `"[('foo', '=', bar)]"` and is in a view, check
that `bar` is in the view as well.  Note that the check should only occurs in
editable views (form or editable list) and when the field itself is editable.

OPW 1820269
2018-03-15 14:16:38 +01:00
Nicolas Martinelli 65214c01b5 [FIX] mrp: BOM count on product
- Create a Product A with attribute color and attribute values white and
  black.
- Create 3 products (Components 1, 2 and 3)
- Create a BOM for A like:
  Component 1, Variant column is empty
  Component 2, Variant white
  Component 3, Variant black
- Go to Inventory > Master Data > Product Variants, and open one of the
  2 variants of Product A

The BOM count is zero, while it should be 1.

The current implementation of `bom_count` doesn't take into account
attributes that can be set on the BOM line.

opw-1814973
2018-03-15 13:35:54 +01:00
Nicolas Martinelli 8f9770f076 [FIX] product_extended: "Compute from BOM"
Display the 'Compute from BOM' button on the simplified view of
`product.product`, alongside the 'Cost' price.

opw-1814973
2018-03-15 13:35:54 +01:00
Nicolas Martinelli 7e724f96c5 [FIX] product: display Cost price of product
The 'Cost' price should be displayed in the main form view of
`product.product`, not only the simplified view.

The reason is that the field `product_variant_count` has the same value
for the product and the template, therefore it cannot be used to make
the distinction between the two models.

To do so, we need to reintroduce the `is_product_variant` field to make
the distinction between `product.product` and `product.template`.

opw-1814973
2018-03-15 13:35:54 +01:00
Nicolas Martinelli 56749cf098 [FIX] product_extended: compute price
Remove the limitation introduced in 6feefe4d10, since the
`standard_price` field is now available on `product.product`.

opw-1814973
2018-03-15 13:35:54 +01:00
Nicolas Martinelli e03a06b3e9 [FIX] crm: favorite filters
- Go to CRM > Reports > Pipeline
- Click on one of the Favorites filters (e.g. 'Opportunities Won Per
  Team')

A JS error arises.

The filters are not correct. `__count` should be `__count__` and
`expected revenue` should be `expected_revenue`.

opw-1825759
2018-03-15 13:26:48 +01:00
Thibault Delavallée b90e046299 [MERGE][IMP] mass_mailing: allow to choose outgoing server for mailings
This merge improves mass mailing application by allowing to choose
specific outgoing mail servers on mailings. It is used notably if
you want to separate mass mailings from classic emails and/or to perform
some load balancing. A settings to add a default server used for mailings
is also added.

As a read access on outgoing mail servers is added for mass mailing
users the credentials are now restriected to admins for security
reasons.

This merge is related to task ID 31737. Closes #21699 .
2018-03-15 13:24:38 +01:00
Sanjay Jamod fe5c8602b0 [IMP] base: protect ir_mail_server credentials by base.group_system group
Purpose of this commit is to prevent unauthenticated access on user name
and password of the mail server. Indeed as mass mailing users notably gain
access to mail servers let us protect its credentials.

This commit is related to task ID 31737
2018-03-15 13:01:58 +01:00
Sanjay Jamod 7169a72869 [REF] base: remove ir_mail_server name_get method and use default one
Purpose of this commit is to not set parentheses around mail server name.
Indeed it does not add any value to have its ID in the name_get.

This commit is related to task ID 31737
2018-03-15 13:00:54 +01:00
Sanjay Jamod 507c1e03a7 [IMP] mass_mailing: allow users to choose a specific outgoing mail server
Purpose of this commit is to allow mass mailing users to select an outgoing
mail sever when performing mass mailing. It includes

* add a field in mass_mailing to select specific outgoing mail server;
  it is put in debug mode because it sounds people would not understand
  what is its purpose;
* add an option in settings to set a default outgoing mail server;
* give read access to ir.mail_server to mass_mailing users;

This commit is related to task ID 31737.
2018-03-15 12:56:26 +01:00
Jeremy Kersten 1cd63d8190 [FIX] website_sale: dont show variant option when not active
Before this commit, a user that ccick 'Customize' on th eproduct page
see the 'List View of Variants' aven if option 'Variants' in settings
was disabled.

Now we hide this view if the group for variants is not enabled in the settings.

This commit closes #23398

That means that a user that enable the view while the variants was enable,
need to disable the view before disable the variants.
2018-03-15 12:35:24 +01:00
Raphael Collet 07a73ce27f [FIX] stock_account: standard price on average
Avoid the division by zero when the available quantity becomes zero.

OPW 1826912
2018-03-15 12:15:20 +01:00
Rohan Patel 7cee389e78 [IMP] auth_signup,portal: create portal user using template user
Purpose of this commit is to standardize portal user creation when
creating new portal users (when 'Free sign up (B2C)' option activated). It
copies the portal user template. The same behavior now applies when
converting a partner into portal user using the portal wizard.

This commit is related to task ID 31399 .
2018-03-15 11:34:41 +01:00
Rohan Patel e3afd5508c [MOV] auth_signup, base: move portal user template to base module
Purpose of this commit is to standardize portal user behavior and creation.
As all portal required features (user, group, support) have moved to
base let us move the template user used to create portal users to base.

'Portal User Template' is therefore moved from auth_signup to base module.
Various config parameters are updated due to the change in xml id.

This commit is related to task ID 31399 .
2018-03-15 11:34:41 +01:00
Sagar Ahirrao 05e02059f0 [IMP] base: resize partner image with actual aspect ratio
Purpose of this commit is to finally stop adding extra padding to
website logo. Indeed not giving square logos lead to padding added
to images, leading to not so beautiful logo that makes people sad.

Before this commit
 * partner's image was resized to square 1024x1024. Extra padding was added
   if user provided rectangle image;
 * due to this website logo resized to square when rectangle logo provided;

After this commit,
 * sizes dict can be passed in image resizer of tools;
 * e.g. tools.image_resize_images(vals, sizes={'image': (512, 512),
   'image_small': (128, 128)})
 * image field in partner will resize with max width 1024 and height based
   on given image ratio (still image_medium, image_small will be default
   square images);
 * now website logo will respect actual aspect ratio

This commit is related to task ID 31994 . Future commits should probably
clean all that mess, but at least it seems we have something that works.
2018-03-15 11:31:06 +01:00
Parth Gajjar 964e16a7f5 [IMP] web: support famous 'avoid_if_small' parameter in image controller and qweb field options
Before this commit there was no option to avoid resizing images when it
was smaller than expected size. This leads to several image being displayed
with extra and unnecessary padding due to resize. This option will allow
to avoid that behavior by allowing to propagate the parameter directly
to image_resize_image.

This commit is related to task ID 31994 .
2018-03-15 11:30:53 +01:00