Commit Graph
127250 Commits
Author SHA1 Message Date
qmo-odoo fa24d7df3a [FIX] website_slides: fix join course widget selector
This commit fixes the selector for the slide_course_join widget. This issue
comes from the removal of the selector 'o_wslides_wrap' recently removed
when cleaning the DOM [1].

Commit linked to task ID 1978530 (fixes linked to internal testing).

[1] See e5c7e43c71
2019-05-03 09:43:15 +00:00
qmo-odoo f4b5b709a1 [FIX] website_profile: allow administrators to update profiles
Before this commit, only the users who validated their email could change
their own profile. In addition to that behavior we let administrators update
all profiles.

Commit linked to task ID 1978530 (fixes linked to internal testing).
2019-05-03 09:43:12 +00:00
Christophe Simonis 62017de41e [MERGE] forward port branch 12.0 up to d7c0c5c127 2019-05-03 09:16:50 +02:00
Cédric Snauwaert e5fc295645 [FIX] account: move activities from account_journal to account_move
Because functionnal specs changed after we merged the task...

Follow-up of task 1911260

closes odoo/odoo#32904

Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2019-05-02 13:35:02 +00:00
Jeremy Kersten 9c1ad3604e [FIX] website_forum: fix translation from faq
Since the refactoring of forum, faq sanitize is set to False.
The editor of the faq can make what he want...

But disable sanitize will break the translation since fields.py has code:
```python
     def _setup_attrs(self, model, name):
        super(Html, self)._setup_attrs(model, name)
        # Translated sanitized html fields must use html_translate or a callable.
        if self.translate is True and self.sanitize:
            self.translate = html_translate
```

Now we don't become html_translate magically, but we need to specify it
in the field definition direclty.

Courtesy of @mart-e

This commit closes opw-1978662

closes odoo/odoo#33112

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-05-02 12:46:13 +00:00
Jorge Pinna Puissant d7c0c5c127 [FIX] account: sign columns amount_untax and amount_tax
In the tree view for account.invoice, two columns are signed
(amount_total and residual) and two columns are not signed
(amount_untaxed and amount_tax).

Now, all the columns with numeric values are signed.

This commit reverts the commit : 622af0b7cc

opw-1964348

closes odoo/odoo#33097

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-05-02 08:58:54 +00:00
Nicolas Martinelli da342a549f [FIX] mrp_byproduct: Put Away Strategy
- Create 3 products:
  C1, no tracking
  P1, tracked by lot
  P2, tracked by lot
- Create a BOM: to product 1 unit of P1, use 1 unit of C1. It also
  produces 1 unit of P2 as byproduct.
- On the Stock location, create a Put Away Strategy to send:
  P1 to Shelf 1
  P2 to Shelf 2
- Create a MO, validate until then end

P1 is correctly sent to Shelf 1, but P2 is sent to Stock instead of
Shelf 2.

No call is performed to `get_putaway_strategy` at move line creation.

opw-1972130

closes odoo/odoo#33109

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-05-02 12:05:56 +00:00
Nicolas Martinelli 033a7fab4d [FIX] account_cancel: In Payment
Allow the cancellation of invoices 'In Payment', since there is no good
reason to not be able to do it.

opw-1981682

closes odoo/odoo#33093

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-05-02 06:36:40 +00:00
Goffin Simon ff83914752 [FIX] portal: Hide messages when unpublished for portal
Steps to reproduce the bug:
- Create a SO and go to my/account
- Share the SO with a portal user P
- Go to on the website
- Write a message in the chatter and unpublish it
- Log as P and go to the SO

Bug:

The unpublished message was displayed.

Same logic as: https://github.com/odoo/odoo/commit/d79678fdd5faccffff65a439653fa5d639a3d3c4

opw:1969524

closes odoo/odoo#33053

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-05-02 08:24:08 +00:00
Julien Castiaux 81877310bc [FIX] web: ignore field message_attachment_count in debug menu
Open a record with a chatter (ie an opw task), add an attachment, enable
debug mode and click on "Set Defaults" in the debug tools, traceback.

The `message_attachment_count` field is a special view added by the
chatter on the form view. This field exists on the view but is absent on
the list of field listed by the XML file. Setting a default value on
that special field is not supported.

opw-1972372

closes odoo/odoo#33044

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2019-05-02 07:25:13 +00:00
Pierre Masereel 49fdd155f7 [FIX] website_sale: handle free SO
When a sale order is free, no transaction are created but you are
redirected to the page '/shop/confirmation' that display a transaction
and lead to bad displaying because there are no transaction.

To fix this behaviour, we redirect to the portal view of this sale order.

We've also added the 'href=#' on the button link to have it written in
white.

closes odoo/odoo#33019

Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
2019-05-02 09:47:38 +00:00
Lucas Perais (lpe) cc0273c642 [FIX] sale: portal sidebar long quote link
Because of d5d93474de,
when displaying a quote on the portal, which quote has a product with a website description
containing a long h3
the left sidebar took all the space

After this commit, we limit the width of the anchor to the description in the sidebar

OPW 1974650

closes odoo/odoo#33056

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-04-30 14:28:59 +00:00
Lucas Perais (lpe) 0669eddc7e [FIX] point_of_sale: do not add bogus tax lines
Because of 5fd19cc
when invoicing an order having a product with no tax
the onchange of invoice line put some default taxes on it

After this commit, the taxes we consider are the one coming from
the order line itself

OPW 1981326

closes odoo/odoo#33059

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-05-03 15:19:34 +00:00
Odoo Translation Bot c924356d9e [I18N] Update translation terms from Transifex 2019-05-05 01:35:12 +02:00
Nicolas Lempereur 04a8194284 [FIX] base{,_address_extended}: extended fields in address format
In 6c2b54ff there was an optimization that removed extended addresses
fields syncing on parent_id, or concerning field update or creation.

But the list of fields was also used partly for formatting address which
had been supporting extended addresses fields and now does not.

With this changeset, we have the extended fields back but only for
formatting in a new "_formatting_address_fields".

opw-1984608
closes #33144

Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2019-05-03 14:10:42 +00:00
Graeme Gellatly 8e0610f609 [FIX] account: Correctly Filter Product Taxes in Multicompany Case
Steps to reproduce:
- Create a product as user for Company A.
- Set a tax on it for Company A.
- As a user in company B, set a default tax for the account associated with the product and/or company.
- As a multicompany user of Company A and B, in company B, create an invoice with the product.

When the onchange is triggered - no tax.

https://github.com/odoo/odoo/blob/11c950ef23faefb5b826c7fb6eb0dccb8e345ca0/addons/account/models/account_invoice.py#L1644-L1654

Its because first we evaluate product taxes for all companies, if none then the account, if none again then the company.
Then they are filtered by company, but in reality the only taxes that need filtering are product taxes (as account
taxes and company taxes should already belong)

fixes #27696

opw:1963881

closes odoo/odoo#33013

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-04-29 12:55:45 +00:00
Nicolas Martinelli c9d98ec511 [FIX] payment_authorize: missing fields
- Activate Invoice Online Payment
- Set Authorize to pay through Odoo (S2S)
- Create a new customer (do not give portal access)
- Create invoice -> send to them
- Open invoice in incognito mode
- Try to pay invoice online with Authorize

An error is raised:

The transaction cannot be processed because some contact details are
missing or invalid: City, Country. Please sign in to complete your
profile.If you don't have any account, please ask your salesperson to
update your profile.

The error is quite confusing, and the user is missing the main point: he
needs to sign in.

There is no reason to display the fact that contact details are missing
for a public user, so this part is now shown only if the user is logged
in.

opw-1981003

closes odoo/odoo#33116

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-05-02 13:23:35 +00:00
Christophe Simonis 4a380414a7 [FIX] mrp: reset lines when quantity change in produce wizard
Error revealed by c6d718f211
2019-05-02 15:36:35 +02:00
Christophe Simonis 1fac2e8c05 [FIX] stock: use correct group xmlid
Oversight of previous forward-port.
2019-05-02 13:37:30 +02:00
Christophe Simonis 3ca58705c9 [MERGE] forward port branch saas-11.3 up to 2c68df0ab4 2019-05-02 13:16:27 +02:00
Nicolas Martinelli 848a1b970b [FIX] account: multi-click in reconciliation
- Open the bank reconciliation widget
- Throttle the connection
- Click multiple times on the same move line in order to select it

The line is added multiple times to the statement line.

We mitigate the behavior thanks to a `debounce`.

Fixes #33000
opw-1978551

closes odoo/odoo#33020

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-05-02 06:22:22 +00:00
Swapnesh Shah 8fdfd4a77c [FIX] project: Fill date_last_stage_update when needed
Before this commit, the date_last_stage_update field in fill everytime at task creation. This does not make sense if ther is no project linked to the task or if there is no stages associated to the project/task.

This commit populates the date_last_stage_update field only when needed. So, we can now have newly created task without date_last_stage_update filled.

closes odoo/odoo#31999

Signed-off-by: Jérome Maes (jem) <jem@openerp.com>
2019-05-01 19:07:50 +00:00
Cas Vissers 3f8a5e466d [FIX] sale_timesheet: extract the check on write in a function
On write, a check is done that raises
'You can not modify already invoiced timesheets …'.
We put that check in a function so that this behaviour can be extended.
(restricted by an override, or relaxed by not calling the super)

opw 1974968
closes #33057

closes odoo/odoo#33092

Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
2019-05-02 06:13:00 +00:00
Goffin Simon 2efcefb504 [FIX] l10n_ch: Error when saving a email template
Steps to reproduce the bug:
- Configured bank account for CHF with all the ISR related informations
- Click on "Send & Print" on a customer invoice with that bank account
- Save the email template

Bug:

An error was raised because the key 'attachments' didn't exist in the variable
rslt.

opw:1970005

closes odoo/odoo#33042

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-04-30 09:27:13 +00:00
Julien Castiaux 27e4d3bb1c [FIX] models.py: invalid write order in inherits
Create a model and extend this model using an inherits. Define a
constraint in the inherited model that uses a field of the parent model.
Create a valid element using the inherited model then write an invalid
value. This pass the constraint although it should raise an exception.

The problem resides in the `write` function of `models.py`. It first
write values on the inherited model then write values on the parent
model. The order is wrong, it should write on the parent model first
then on the child model.

The solution is to change the order fields are written: first we update
child references to their parents, then we update the parents, then we
update the child.

opw-1962705

closes #32919

closes odoo/odoo#33003

Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2019-04-30 14:34:19 +00:00
qsm-odoo eb5e8d660a [FIX] web_editor: allow d&d of blocks between flex elements
When dragging a snippet in the editor, drop zones are created at the
correct locations (e.g. between columns when dragging a column). Some
code is in charge of "cleaning" the created drop zones to, for example,
remove multiples ones which are at the same position. This code is also
currently removing the drop zones which are between two "non-block"
elements. This is preventing to swap form rows thanks to the form
builder as rows are "non-block" elements as they are flex elements.

This commit solves the problem by changing the "is non-block" condition
to "is inline" condition which is what was intended.

Note 1: rows became flex elements with BS4, that is why this is fixed
        in 12.0.

Note 2: this could be back-ported in previous stable versions as this
        actually preventing to drop snippets between tables, list
        items, etc (all non-block elements) but this can be considered
        as a limitation unless a real breaking case presents itself.

See task-1874350 which discovered the bug.

closes odoo/odoo#33054

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2019-04-30 13:07:16 +00:00
Jorge Pinna Puissant 622af0b7cc [FIX] account: remove total from invoice lists
In the tree view for account.invoice, there are totals' in some columns.
There is no logic in adding the invoices values for these columns, the
invoices could be of different types, or the invoices could have
different currencies, which creates incoherents totals.

opw-1964348

closes odoo/odoo#33051

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-04-30 12:02:12 +00:00
Xavier Morel 2fc7657975 [FIX] core: reintroduce computation of parent_store in auto_init
When 80f1ac3599 removed deferral of
parent store computations (the MPTT at the time), it also errornously
removed the computation during auto_init.

As a result, when adding a `_parent_store = True` and `parent_path`
field to an existing model (e.g. in an override, or when updating the
database) the column will be created but the column will be
False-filled, and hierarchical queries break as odoo will attempt to
perform string operations on `False` (either `False + '%'` or
`False.split('/')`).

Fix the issue by reintroducing the parent_store computation.

Note: uses the same gating as the old commit, the computation is only
performed if this is the install/update where the parent_path column
gets created.

We could alternatively gate on just _parent_store, but even the RCTE
can be expensive when executed on millions of records (at least when
it has to set all the parent_path) and while it could allow inserting
a bunch of records when calling -u to generate their parent_paths, it
feels like the caller could and would do so manually as they might
have shuffled the tree and need to update more than just the records
for which parent_path is null.

closes odoo/odoo#33034

Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
2019-04-30 07:39:20 +00:00
Nicolas Martinelli d7d4ebb312 [FIX] sale: read-only order_id
Setting the `order_id` as read-only in the model prevents the import of
SO lines separately from the SO. We set it read-only in the view
instead.

opw-1978453

closes odoo/odoo#33021

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-04-29 15:25:26 +00:00
Goffin Simon bb38b83193 [FIX] sale_timesheet: Project(s) overview wrong with downpayment
Steps to reproduce the bug:
- Install Timesheet, Sales, Accounting
- Create a product P that creates a project when validated on a SO
- Create a SO with P and validate it
- Create an invoice with a downpayment of 10% and validate it
- On the SO, click on "Project(s) overview" smart button

Bug:

The invoiced amount  on the overview was not updated with the downpayment invoiced.
When the SO was completely invoiced, the amount of the downpayment was counted in
"Other cost" (because an analityc line is created for the downpayment SO line)

opw:1969143

closes odoo/odoo#32962

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-04-30 07:42:11 +00:00
qsm-odoo 695cb942b6 [FIX] website_sale: fix product description on mobile with list layout
Long product descriptions were overflowing on mobile when the list
layout was used. Indeed in all other cases (non mobile or grid layout),
a max-height is set to prevent this problem. This commit sets a
max-height for the mobile list layout use case.

Note: the layout is still to be reviewed to handle these cases the right
way. A task is actually being developed in master to do that.

opw-1974989

closes odoo/odoo#33023

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2019-04-29 16:07:28 +00:00
qsm-odoo 84bb01606a [FIX] website_blog: restore latest posts snippet's styles
When the snippet was moved from the theme repository to the community
repository, some scss mixins were badly refactored, making the theme
specific styles not work anymore.

This commit removes the bg color which was added to latest posts
snippet's post elements as it made no sense, appeared broken and was
not possible to remove. It also adds some padding to the snippet by
default.

This commit also reviews the snippet options which seemed to allow post
color edition while it is in fact not possible.

opw-1964485

closes odoo/odoo#33016

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2019-04-29 15:31:20 +00:00
Kishan Gajjar 8e7a9b5046 [FIX] website: restore Facebook snippets in edit mode
Facebook snippets' related widgets must be instantiated in edit mode.

This was broken when the feature which disables the widgets in edit mode
by default was introduced with https://github.com/odoo/odoo/commit/335a505d1f9b6a978c0fe0f6ea760a45b0d0a67f.

closes odoo/odoo#32921

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2019-04-29 10:23:35 +00:00
Kishan Gajjar f670d4103b [FIX] website: adapt Facebook snippet to API changes
Facebook API does not accept float values for height and width
parameters anymore.

closes odoo/odoo#32970

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2019-04-29 10:15:05 +00:00
Lucas Perais (lpe) c7773f9f72 [FIX] sale, _management: portal sale order optional products
Forward Port 0c46c8a929 from v10.0
has dome flows, namely, the new feature of grouping the taxes by tax group was not supported

Now it is supported: when modifying an optional product's quantity, every field is updated with the new values

OPW 1974708

closes odoo/odoo#32980

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-04-29 07:46:39 +00:00
Julien Castiaux 9c4b52000f [FIX] calendar: browse record using IrRules
Install CRM (we need the "Hide Private Message" record rule defined by
that module), create a meeting as of today, set a reminder of one day,
invite another user (Demo) as attendee, save. Edit, go to the options,
change the "Show time as" to "free", save => access error due to the
said record rule.

Using a search instead of browse ensures record unavailable due to a
record rule are filtered.

Same as 54e970e

opw-1974599

closes odoo/odoo#32987

Signed-off-by: Julien Castiaux <Julien00859@users.noreply.github.com>
2019-04-29 07:01:19 +00:00
Mohammed Shekha faf63c2c60 [FIX] website_sale_delivery: fix public user access error on carrier
When public user is on payment page '/shop/carrier_rate_shipment' controller is
called to get delivery carrier rate. But public user has no access right on
`delivery.carrier`

closes odoo/odoo#32977

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-04-26 10:42:28 +00:00
Jeremy Kersten 4d9179f1ae [FIX] website_forum: quick fix layout
Add missing row that make column ugly
add missing fa-icon that make no icon visible
add missing row that make forum name one by line
...

closes odoo/odoo#32975

Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2019-04-26 08:57:03 +00:00
Nicolas Martinelli e3b25b402c [FIX] sale: date on portal
It is more logical to display the order date on the portal rather than
the create date. Indeed, all computations (e.g. currency conversion) are
performed with the order date, not the create date.

opw-1966040

closes odoo/odoo#32973

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-04-26 08:40:51 +00:00
Odoo Translation Bot 3ac23bef79 [I18N] Update translation terms from Transifex 2019-04-28 01:34:21 +02:00
Romain Derie f0bc5e0b52 [FIX] web_unsplash: correctly load images after credentials
Since media dialog and unsplash refactoring (1f847a1e2e, 78a30d44c) there was a
bug after adding credentials.
Indeed, when doing a search for the first time and no credentials are set, it
shows a form to add the missing credentials.
When saving those, it should automatically perform the initial search now that
the credentials are set.
But it was not the case anymore, it would keep reloading the credential form.
User would have to close and reopen media dialog.

closes odoo/odoo#32943

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2019-04-25 08:53:00 +00:00
Denis Ledoux b11930047f [MERGE] forward port branch 12.0 up to c9913152ec 2019-04-26 18:14:18 +02:00
Gert Pellin 26c4acc761 [FIX] point-of-sale: discount line on ticket
Before this fix an extra line with the price without discount will be
printed even if there is no discount on the product.

After this fix the line will only be printed if there is a discount.

The error occured due to the use of t-else instead of t-elif.

closes odoo/odoo#32989

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-04-26 13:44:33 +00:00
Xavier Morel 617ba2887a [IMP] base: avoid unnecessary exists in Contact HTML formatter
Protactively checking exists() seems unnecessary, it's likely that the
widget would be called on an empty recordset but seems very unlikely
that it'll be called on a missing record. The commit which added the
exists() call performs significant refactoring/rewrite and doesn't
explain why this exists() call would be useful.

Since exists is not cached and qweb field converters are not batched,
saves a large number of queries when formatting a series of addresses
e.g. with 99 hr.job, /jobs goes from ~170 queries and ~100ms spent in
SQL to ~70 queries and ~60ms spent in SQL.

Though the total performance improvement is very limited as even with
odoo/odoo#32985 the endpoint takes ~700ms (with the aforementioned 99
hr.job visible to the current user).

closes odoo/odoo#32986

Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
2019-04-26 12:24:04 +00:00
Olivier Colson b1530265e4 [FIX] purchase: anglosaxon accounting: fix wrong computation of prod qty when multiple stock move
Have a PO with a product in automated valorization, and average as method of valorization
Validate and receive *partially* (create backorder)
invoice with a different price than the PO
Receive the backorder
Invoice the rest, also with a different price than the PO

Before this commit, wrong amounts were written in the account.move corresponding to the invoice.
In particular, the payable account's amount was erroneous because it is computed to balance the move
As a result, the bill showed an amount due different from its total, even though nothing was reconciled with it.

After this commit, the payable entry and hence the amount due on the invoice are correct

OPW 1967289

closes odoo/odoo#32920

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-04-24 13:17:22 +00:00
Denis Ledoux 6fd637e131 [MERGE] forward port branch 11.0 up to b71b78035b 2019-04-24 14:31:10 +02:00
Damien Bouvy 90af6254ba [FIX] mrp_byproduct: missing oldname
Impacts migrations

closes odoo/odoo#32900

Signed-off-by: Damien Bouvy (dbo) <dbo@odoo.com>
2019-04-24 08:53:29 +00:00
Denis Ledoux b71b78035b [MERGE] forward port branch saas-15 up to 0c46c8a929 2019-04-24 10:04:05 +02:00
Denis Ledoux 0c46c8a929 [MERGE] forward port branch saas-14 up to 6fd092e131 2019-04-24 09:31:49 +02:00
Anang 5d0d6e4827 [CLA] Sign Odoo CLA for 0yik
closes odoo/odoo#32896

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2019-04-24 07:31:14 +00:00