Commit Graph
140847 Commits
Author SHA1 Message Date
Thibault Delavallée d5f8e39923 [FIX] website_profile: fix leaderboard / top3 computation
Contains some small fixes

  * correctly order leaderboard by descending karma, not creation date;
  * top 3 users displayed in footer banner should be published, otherwise
    displayed images do not match the top 3 displayed in the page displayed
    when clicking;
  * correctly say Leaderboard is an overall leaderboard, not only limited
    to the current week;

Linked to task 2005840
Related to PR #34220
2019-06-28 13:43:19 +00:00
Thibault Delavallée f66453a0f5 [FIX] website_profile: correctly display rank position image in top 3 users
As user is a loop variable we can directly use its index instead of a rank
position that is not always correctly computed when not being logged due
to access rights issues.

Linked to task 2005840
Related to PR #34220
2019-06-28 13:43:19 +00:00
mgh-odoo 798aa51a00 [FIX] website_{profile, forum}: migrate events from forum to profile
After this commit  https://github.com/odoo/odoo/commit/ff870099c588e56 some of the events are left
in website_forum, that caused some buttons to be inactive. In order to fix that
events moved to website_profile.

Note: code is moved as it is. Cleaning class / namespace will be done in master
to avoid issues due to stable version.

Related to task 2006045

closes odoo/odoo#34138

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-06-28 05:02:45 +00:00
Yannick Tivisse 4a748da4b0 [FIX] hr: Correct implementation for 3be372c 2019-06-28 08:49:21 +02:00
Басхүү f7f58b1062 [CLA] Add CLA for Baskhuu 2019-06-19 11:16:39 +00:00
Rémi Rahir 2ba7114047 [FIX] website_sale: multi-website
The fix added in 3a0f05f334 doesn't work if an already existing user in company A
trys to modify his address on a website linked to company B. The form will try to change the company_id
of the res.partner which will then conflit with the company_id of the associated res.user, ultimately leading
to a UserError and a 500 error on the website.

opw-2025457

closes odoo/odoo#34262

Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
2019-06-20 10:17:00 +00:00
Nicolas Martinelli b59f3e4f99 [FIX] account: fallback journal
Commit 6b14ceb225 introduced a smarter way to find the default
journal based on the currency. However, it missed the fallback if no
journal is found.

opw-2009934
opw-2024204
opw-2011321

closes odoo/odoo#34263

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-06-20 09:00:50 +00:00
Jigar Vaghela e416428669 [FIX] l10n_de: Fix wrong tag name
closes odoo/odoo#34239

Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2019-06-19 10:34:47 +00:00
Christophe Simonis 132e38beef [MERGE] forward port branch 11.0 up to b5a04fd29f 2019-06-19 12:07:56 +02:00
Olivier Colson c0643ac918 [FIX] account: make cash basis taxes work in case several account move lines are reconciled within the same account.move
Such move lines can be created by POS, when closing a session. Because of commit https://github.com/odoo/odoo/commit/d3453f7d152d486cb5df01b4e40dbde57f59b49e , the cash basis entries are now created *after* reconciling everything (and not during reconciliation anymore). This causes multiple lines of the move created for the sessions to be reconciled together in case a refund was made (partial or not).

Solves ticket 2008085

closes odoo/odoo#34237

Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
2019-06-19 09:24:26 +00:00
Goffin Simon cfd5c90652 [FIX] hr_holidays: Access error when requesting a new leave
Steps to reproduce the bug:
- Create an hr.leave.allocation with mode = 'By Employee Tag'
- Select Employee Tag = 'Employee'
- Set all the other required values
- Log with Demo User(Marc Demo)
- Go to Leaves > My Leaves > New Request

Bug:

An access right error was raised due to the record rule: "Allocations: employee: read own"
With this record rule the user can only read the hr.leave.allocation linked to his employee's user.
But with allocations in mode 'By Employee Tag', in the function get_days it tried to compute
the 'number_of_hours_display' of all the allocations linked to the current employee's user and
in the function _compute_number_of_hours_display, it also computes the parent_id of these allocations.
As the parent_id is not linked to the employee's user, it raised an access right error.

opw:2006686

closes odoo/odoo#34236

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-06-19 09:14:47 +00:00
Nicolas Lempereur 97cd3dfdf9 [FIX] web: update moment ar locale for month
The months name in momentjs used an arabic translation with the month
then some crap (or the month said a second time) after.

This does not seem expected, and has been solved in moment.js library 2
years ago:
https://github.com/moment/moment/pull/4271

This PR apply this change in moment.js localization included in Odoo.

opw-2006265
closes #34248

Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2019-06-19 15:00:27 +00:00
Christophe Simonis 37e05d35d2 [MERGE] forward port branch saas-11.3 up to 132e38beef 2019-06-19 14:41:36 +02:00
Julien Castiaux 85ab9238c5 [FIX] google_account: improve logging of errors
There is no guaranty that both the request body and the response body
will contain JSON data. This fix corrects the logging by printing the
raw text in case of json decode error.

opw-2006561
opw-2024242

closes odoo/odoo#34221

Signed-off-by: Julien Castiaux <Julien00859@users.noreply.github.com>
2019-06-19 09:12:27 +00:00
Goffin Simon 3b1699e02d [FIX] l10n_fr: Wrong tags for TVA déductible (achat) 5,5% TTC
The tags set for TVA déductible (achat) 5,5% TTC were for "TVA collectée"

opw:2026360

closes odoo/odoo#34410

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-06-27 09:50:24 +00:00
Nicolas Martinelli 34644baab0 [FIX] sale_margin: no company
Complement of commit 7a24df4889

opw-2009044

closes odoo/odoo#34374

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-06-26 09:33:37 +00:00
Jorge Pinna Puissant 044c5c2c81 [FIX] mrp: BoM structure report with variants
1. Setup a few variants for a product;
2. Create a BoM for each of the variants with different
components/quantities, make sure to specify the product variant field;
3. Go to any of the variants and click Print BoM Structure.

Before this commit, it will print the BoM structure for all variants and
not only the one selected. Also, it will print in all the variants the
same BoM structure. If multiples BoM were selected to print, each
variant of the product was printed with each of the BoM structure
selected.

Now, if you select one BoM, only this is printed. If multiples BoM are
printed, each product, and product variant are correctly related to
their respective BoM structure.

opw-2007939

closes odoo/odoo#34353

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-06-25 08:42:27 +00:00
Goffin Simon cb4afb263b [FIX] mrp: Manufacturing cost analysis report
Steps to reproduce the bug:

- Create a finished product P with a manufacturing BOM B
- Set two components on B C1 and C2
- Create a MO with P and process it(plan and produce it)
- Unlock the MO and set the consumed qty of C1 to 0
- Lock and click on Mark as Done
- Click on Cost Analysis

Bug:

C1 was displayed in the report with a qty = 1.0

opw:2010912

closes odoo/odoo#34351

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-06-25 09:23:32 +00:00
Christophe Simonis e628e66271 [FIX] hr_timesheet: add missing dependency for timesheet_uom widget
The `timesheet_uom` widget is a proxy to another widget (configurable
server-side). We need to ensure the widget registry is filled before
using it to avoid a fallback to `float_factor` widget.

closes odoo/odoo#34350

Signed-off-by: Christophe Simonis <chs@odoo.com>
2019-06-25 09:36:12 +00:00
Mathieu Duckerts-Antoine 89d5cc3b3d [FIX] web: measure/groupby many2one variation in pivot view
In case a many2one field (let us say 'foo') is used
simultaneously as a groupby and a measure in the pivot view,
the values returned by a read_group for that many2one are of
the form [id, label] and the aggregated values (always 1) are
missing in the read_group results (datapoints).
Thus typically, a datapoint is of the form

{'foo': [1, 'Bar'], '__count': 4, ...}

and does not contain information on the 'foo:count_distinct'
value (this is a read_group bug).

As a consequence, a special processing of the read_group
datapoints is done in the pivot model to handle that
situation and the value for 'foo:count_distinct' is infered
correctly to be 1.

In the pivot comparison mode, datapoints comming from the
period and the comparison period (data and comparisonData
sets) are identified if they have same values for the groupby
fields and the measure values become small objects containing
information on the the measure values for data and for
comparisonData and on the related variation.

Thus

{foo: [1, 'Bar'], __count: 4, ...}

from data and

{foo: [1, 'Bar'], __count: 3, ...}

from comparisonData should become a single datapoint

{
foo: [1, 'Bar'],
__count: {
data: 4,
comparisonData: 3,
variation: {
magnitude: +33 (%)
}
}
fooAggregate: {
data: 1,
comparisonData: 1,
variation: {
magnitude: 0 (%)
}
}

It turns out that the code responsible for merging the data
and comparison datapoints made a mistake by mixing the keys
'foo' and 'fooAggregate', with the consequence that the
variations were not correctly computed in the situation
described above.

This is fixed in this commit.

closes odoo/odoo#33118

Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2019-06-25 11:18:02 +00:00
Nicolas Martinelli 28e24b9540 [FIX] website_sale_stock: custom message translatable
Make the 'Custom Message' field translatable since it is supposed to be
used on the website and displayed in the language of the user.

opw-2008088

closes odoo/odoo#34344

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-06-25 08:01:50 +00:00
Alexandre Kühn ea1960d10a [FIX] mail: keep chat window hidden on receiving new message
Before this commit, when receiving a new message from a hidden chat
window, it was making it visible. Because of this, if we had focus
on any other window, the focus was lost. Even more annoying, if we
had focus on the left-most visible chat window, it moved to hidden
menu, so that new chat window takes its place.

This commit fixes the issue by keeping new chat windows hidden
on receiving new messages, in case there is not enough available
space.

Task-ID 2026101

closes odoo/odoo#34291

Signed-off-by: Martin Geubelle (mge) <mge@openerp.com>
2019-06-24 16:04:27 +00:00
Nicolas Martinelli 1db371721f [FIX] account: incorrect bank account domain
- Set 2 banks accounts for a partner A
- Create a credit note
- Choose partner A => a default bank account is chosen, and both are
available in the list.
- Save, go back to the tree view, then reopen the same credit note

It is not possible to choose among both bank accounts anymore.

It is due to the domain set on the view, which is valid for customer
invoices but not for credit notes. It works at creation since
`_onchange_partner_id` overrides the domain for `out_refund`.

In this specific case, a domain in the view is not appropriate: the same
view is used for 2 invoice types although they require a different
domain. Therefore we set the domain only in the onchange. The drawback
is that all bank accounts are shown when we reopen a customer invoice or
a credit note from the tree view since the onchange is not triggered.
However, the constraint `validate_partner_bank_id` still protects
against an incorrect configuration.

opw-2010017

closes odoo/odoo#34292

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-06-21 10:03:48 +00:00
Mathieu Duckerts-Antoine 92a1f215c0 [FIX] web: pie chart structure not modified by favorites
A pie chart widget aims to instantiate a graph view in mode
'pie', with a measure and a single groupby specified via some
attributes. It turns out that if a pie chart is instantiated
in a context in which the keys 'graph_mode', 'graph_measure',
and 'graph_groupbys' are present, that keys prevail over the
pie chart specification. This can produce a line chart for
instance. This fix corrects that situation.

A test has been added in a corresponding commit in enterprise
(historically, the pie chart widgets are tested in dashboard
views).

closes odoo/odoo#34234

Signed-off-by: VincentSchippefilt <VincentSchippefilt@users.noreply.github.com>
2019-06-19 08:36:44 +00:00
Nicolas Martinelli ba2c179c44 [FIX] hr_holidays: validity constraint
- Create a leave type valid from June 1st
- Create a leave in May using the created leave type

Nothing prevents the user to do it.

It is because the constraint is implemented only if there is a validity
start and end date.

Fixes #32107
opw-2009800

closes odoo/odoo#34225

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-06-19 09:55:56 +00:00
Goffin Simon 84b89555c0 [FIX] account_voucher: Wrong entries for account voucher transaction with VAT
Steps to reproduce the bug:
- Create a vendor receipt in a journal with a foreign currency with taxes
- Validate it

Bug:

A UserError was raised because it tried to create unbalanced entries

Technically: the debit and credit of the VAT account move line were not converted
in the currency of the of the voucher's company.

opw:2007760

closes odoo/odoo#34203

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-06-19 09:51:21 +00:00
William Henrotin 894ca01048 [FIX] mrp: wrong index into inverse function
The first occurence of the set was wrongly place on the date field
instead on the recordset

Task: 2024628

closes odoo/odoo#34230

Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2019-06-19 07:47:43 +00:00
Nicolas Martinelli 32603da5ba [FIX] web: avatar on empty field
- Create a calendar event
- In debug mode, remove the responsible

The 'Avatar Undefined' string is displayed at the botton of the
responsibles' list.

Do no fetch an image for a falsy value (= falsy id)

opw-2010007

closes odoo/odoo#34215

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-06-18 13:09:28 +00:00
Olivier Colson 06d305b06e [IMP] l10n_ae: add tax templates for consistency with 12.3
Some taxes were declared as groups with some children having 'type_tax_use' different from 'none'. While this is totally correct from a technical point of view, this meant that the group actually had to stay a group in the new model introduced in 12.3. However, functionally speaking, it was not what was intended. We change that here for consistency with 12.3, and to ease the migration. Databases having installed l10n_ae's chart template before this commit will not be affected, and their groups will stay groups in the future (which makes no problem, they simply will be less easy to configure).

closes odoo/odoo#34189

Signed-off-by: Josse Colpaert <jco@openerp.com>
2019-06-18 12:06:31 +00:00
Julien Castiaux c0c779d662 [FIX] web_editor: remove "missing class on parent"
On a chromium based browser. Install theme_treehouse, add the "Step"
widget. Double click on the FA-icon, error in log.

The parent element of `self.$media` does not have a `class` attribute,
accessing that attribute returns `undefined` and `cannot call match on
undefined` error.

closes odoo/odoo#34946

Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2019-07-18 14:29:54 +00:00
Aaron Bohy eba0325355 [FIX] web: add href to main menus
This was already the case for sub menus. This allows to right-click
and open menu in a new tab.

Closes #29345

closes odoo/odoo#34983

Signed-off-by: Julien Mougenot (JUM) <Arcasias@users.noreply.github.com>
2019-07-18 13:07:25 +00:00
Rémi Rahir 1e4152b255 [FIX] crm_reveal: warn user on missing GeoIP
The GeoIP lib is necessary for this module to run but there is zero
documentation on that specificity. This commit adds a bus notification
to inform the user of the absence of the package through the webclient
notification system.

closes odoo/odoo#34968

Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
2019-07-18 11:51:57 +00:00
Rémi Rahir e50800deaf [IMP] mail: Add simple partner notification 2019-07-18 11:51:57 +00:00
Nicolas Lempereur a6805b7280 [FIX] stock_zebra: display lot in picking report
On picking "Barcodes (ZPL)" report, we show barcode of product for
untracked product, and barcode of lot if available.

But if we use an existing lot, we have to use lot_id.name to get the lot
name instead of lot_name (used in configuration with new lot only) or
lot will not be shown in the report.

opw-2036894
closes #34958

Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2019-07-18 12:13:19 +00:00
Nans Lefebvre 8533c19a60 [FIX] payment_authorize: save payment token from form validated transaction
https://docs.python.org/3/library/stdtypes.html#truth
By default, an object is considered true unless
its class defines either a __bool__() method that returns False
or a __len__() method that returns zero

Since etree elements are iterator, they define a len function.
However it turns out that customerProfileId has always no children.
So bool(find(x)) is always False; the intended meaning was find(x) is None.

opw 1999427

closes odoo/odoo#34922

Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
2019-07-16 14:16:46 +00:00
Adrian Torres 46d12675a7 [FIX] tests: allow False as value for required booleans in SSF
A required boolean accepts two values, True and False, however the SSF
and the web-client assume False to be equal to NULL and treat them
interchangeably.

In the SSF, we verify that a required field is filled by checking that
its value is different from False, however False is a valid value for a
boolean, this means that setting a required boolean to False would never
work in the SSF.

This commit overcomes this issue by simply skipping the check for fields
of type boolean.

closes odoo/odoo#34729

Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
2019-07-10 08:58:27 +00:00
Goffin Simon ddada7bb9e [FIX] stock_dropshipping: Dropship created after editing an existing quotation
Steps to reproduce the bug:
- Create a quotation and a SO line SOL with one product and route "Dropship"
- Confirm the SO and a PO is created
- Validate PO and process the dropship picking
- Add 4 units to the SO line SOL

Bug:

A new PO was created but the related picking was type "Receipts" instead of "Dropship"

opw:2034398

closes odoo/odoo#34923

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-07-17 12:57:38 +00:00
Adrien Dieudonne 9408cab4a6 [FIX] mail: tabs should appear on mobile
Since Chrome 74 or 75, tabs in Discuss suddenly disappeared.
Normally, these buttons are displayed at the bottom of the screen
when you open the Discuss app.

So we had to review this part and it seems more logical to override
the "height: 100%" property with "min-height: 0".
By doing this, the flex box element can grow from this size.

We also set flex-shrink to 1 to reduce the content with a scroll-bar
to let enough space to the other static elements (flex 0 0 auto).

Note that these rules are only applied on mobile.

opw-2030433

closes odoo/odoo#34947

Signed-off-by: Pierre Paridans <pparidans@users.noreply.github.com>
2019-07-17 13:21:51 +00:00
Julien Castiaux 713df0baf1 [FIX] stock: putaway strategy without location
Using Studio, create a menu for the Putaway Strategies, access its form
view, edit the location field. Traceback.

opw-2032144

closes odoo/odoo#34904

Signed-off-by: Julien Castiaux <Julien00859@users.noreply.github.com>
2019-07-17 07:31:05 +00:00
Nathan Olson 40bfd596d2 [CLA] Individual CLA for Nathaniel Olson (Lutrome)
closes odoo/odoo#34927

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2019-07-17 04:30:15 +00:00
Nans Lefebvre 956204fe10 [FIX] sale: do not crash on _compute_currency_rate if any currency is not defined yet
The _get_conversion_rate method crashes if any of its parameters is undefined.
Therefore triggering the compute of the currency_rate early* causes it to crash.
(* e.g. by putting it in the view with studio)

opw 2035604

closes odoo/odoo#34928

Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
2019-07-17 04:57:54 +00:00
Swapnesh Shah 1e5fbb8e5b [FIX] sale: ensure Down Payment product exists
In case the Down Payment product is removed/not accessible, trying to create
a down payment from a sale order to invoice produced an error "Record does not
exist or has been deleted. (Records: [42], User: 2)"

Add a exists for returning an empty recordset for a better fallback and create
a new Down Payment product using the wizard

closes odoo/odoo#32965

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2019-07-16 16:01:40 +00:00
Nimesh Jethva 7766b89aa0 [FIX] web: restore kanban progressbar animation
With BS4 migration, the progressbar 'active' class should have been
renamed 'progress-bar-animated'.

closes odoo/odoo#26868

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2019-07-16 08:25:17 +00:00
Jorge Pinna Puissant 19d340c712 [FIX] l10n_ch: write access to create invoices
- Having a user with access to create an invoice in Accounting, but
without the rights to create or modify Currency's objects;
- Install the Switzerland localization;
- Create an invoice with this user.

Before this commit, the user will have an access error. This issue arise
because when saving an invoice it will also try to save the name of the
currency. In the Switzerland localization a field(l10n_ch_currency_name)
is related to the currency's name of the invoice.

Now, this field is tagged as read-only, and when saving an invoice, it
won't try to save also the currency's name.

opw-2032756

closes odoo/odoo#34680

Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
2019-07-16 09:20:47 +00:00
Goffin Simon 68273e2181 [FIX] point_of_sale: Product description missing on invoice via POS
Steps to reproduce the bug:

- Create a product and fill in a description for that product
(in Sales app, on Sales tab --> description for the client)
- Sell the product via POS
- Create an invoice via POS

Bug:

The customer description didn't appear in the invoice line.

opw:1771302

closes odoo/odoo#34869

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-07-15 12:57:08 +00:00
Lucas Perais (lpe) 1112ca05ab [FIX] account: reconciliation model support tags in widget
Activate analytic tags
Create an reconciliation model on which you set at least one tag
Create a bank statement and a line
Click on reconcile (or access the reconciliation widget by another means)

Quick Create a writeoff line
Click on the button corresponding to the reconciliation model

Before this commit:
The many2many tags was buggy, there was one empty tag, corresponding to nothing
clicking on the field triggered errors
validating the reconciliation by clicking on reconcile triggered a server traceback
in the real backend, opening the tag form view triggered an access error

This was because the data were not formatted the right way to be passed to the m2m_tag_field through
notifyChanges

After this commit, the reconciliation model's tag renders and behaves well
Validating the reconciliation works

OPW 2033350

As a side note, in the future, the reconciliation widget Model should fully implement basicModel
or not at all. Some of the heavy plumbing that the ReconciliationModel does (fetch records, data...)
is imitating what fetchRecord does

closes odoo/odoo#34838

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-07-16 07:22:16 +00:00
Olivier Colson 56cecc5b6e [FIX] l10n_be: add missing tags to repartition lines
Tax report line 88 has been modified in v10 by this commit in l10n_be_reports https://github.com/odoo/enterprise/commit/1fe60a9b35245dbdba7815f32ae9bdb4c2851a87 . It has not been forward-ported properly to the new tax model: a tag must be added on refund repartition lines of taxes referencing line 88.

closes odoo/odoo#34208

Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2019-06-18 11:07:00 +00:00
Jakub Hrubý 36abc4641c [FIX] web: keep the search options visibility state
The search buttons visibility is saved in the local storage. Rev.
6448420 changed the API of the LocalStorage servive (by JSON
parsing the values), and didn't adapt the calls done for the
search buttons.

Closes #33833

closes odoo/odoo#34206

Signed-off-by: VincentSchippefilt <VincentSchippefilt@users.noreply.github.com>
2019-06-18 10:13:39 +00:00
Christophe Simonis ec8cfd5624 [MERGE] forward port branch saas-14 up to 249d09068a 2019-06-18 10:56:48 +02:00
Christophe Simonis 249d09068a [MERGE] forward port branch 10.0 up to 455714c7bf 2019-06-18 10:56:06 +02:00