Commit Graph
135402 Commits
Author SHA1 Message Date
Thanh Dodeur bf97152ce9 [REF] mail: removes signature from route params
This commit removes the unnecessary usage of `signature` instead of
`unique` in the route params for `web/image`.

closes odoo/odoo#48437

Related: odoo/enterprise#9501
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-04-17 11:09:41 +00:00
Thanh Dodeur a6e96c256d [FIX] mail: fetches the attachments checksum for cache control.
This commit makes so that we also fetch the checksum of the attachments
of mail.messages to use it for cache control.

Before this commit, the urls of message attachments had
`undefined` for the signature parameter.
2020-04-17 11:09:41 +00:00
Swapnesh Shah 6688f45470 [FIX] account: disable creation of account.payment from kanban view
Creating New records for account.payment from Grouped kanban should not be allowed as they are not consistent and Leads to error. (Eg, Try to create New Payment when grouped by State, Add new Column when grouped by Journal)

With this commit, We disable the creation of new Payment/Relational records from this view.

closes odoo/odoo#49619

X-original-commit: 6774f9cfe768e5cffce4cfd458910af450ef7616
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-04-15 18:39:02 +00:00
jerome hanke (jhk) 5eccc6a7df [FIX] board: calendar view height is not zero
Steps to reproduce:
- install calendar and dashboard
- go to calendar > favorites > add to my dashboard
- go to dashboard

Previous behavior:
the calendar view in the dashboard does not show the main widget
because height is 0px (because the structure is different that normal
calendar view where view height is restricted based on viewport).

Current behavior:
calendar views are properly displayed in dashboard

opw-2226565

closes odoo/odoo#49709

X-original-commit: d1218004aa0b4a1840c99346baef73bc5fbb90a1
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Signed-off-by: mightyjol <jhk-odoo@users.noreply.github.com>
2020-04-17 10:14:57 +00:00
Nicolas Martinelli a834a1b235 [FIX] stock: correct qty comparison
Use `float_compare` to avoid the usual float representation comparison
errors.

opw-2215497

closes odoo/odoo#49702

X-original-commit: 500240874cd21c6950210968c8c7e8d84c1c4bee
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-04-17 09:27:03 +00:00
Stéphane Debauche 4d843de26b [FIX] web: fix nested o2m edition traceback
There's a traceback when we edit an activity on a campaign

  * Create a child activity
  * Save the activity (not the campaign)
  * Edit again the activity
  * -> Traceback

Introduced in a9cebd5

Task ID 2220930

closes odoo/odoo#49698

X-original-commit: efa8952c39b0bcb0969013dc22e05b5d61ff1c66
Related: odoo/enterprise#9964
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-04-17 08:09:11 +00:00
Nicolas Martinelli 7c430846a8 [FIX] calendar: all day event
- Go to the calendar list view
- Click on 'Create'
- Tick 'All Day'
- Set a start date

The end date is set to the day before.

This happens because in this case, the default duration is zero.

opw-2236766

closes odoo/odoo#49682

X-original-commit: 0b6ae3ed4ff20898cd88b97a644190b20f11cf8f
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-04-17 07:55:34 +00:00
Florian Gilbert 25f157efc0 [IMP] account: Verify if res_partner_bank exists in set_bank_account.
When creating or writing on a account.journal model,
it is possible to pass a char representing the bank account number
into bank_acc_number instead of passing directly a res.partner.bank.
In case we pass bank_acc_number the system will try to create automatically
a new res.partner.bank for us, however if a res.partner.bank already exists
with the same account number it will result in an error as we have a unicity
constraint for that. Therefore it is best to first seach for such an existing
res.partner.bank before trying to create it. The search is done on the
sanitized_account_number field as the unicity constraint is on that field.

closes odoo/odoo#49637

Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
2020-04-17 06:45:27 +00:00
Odoo's Mergebot 7e2971d080 [MERGE] mail, various: clean mail alias mixin usage
PURPOSE

Clean mail alias mixin use through addons and clean its code

SPECIFICATIONS

Remove unnecessary code overlap: duplicate of model computation
or alias definitions.

Remove alias creation relying on context and instead give a single
method to override giving alias creation values.

Go through all addons using aliases to clean its usage code.

Remove remaining alias fields on res.users, linked to a now removed
feature.

Finally make alias creation work in batch mode in mail_alias_mixin.

LINKS

Task ID 1919277
Community odoo/odoo#41160
Enterprise odoo/enterprise#6983
Upgrade odoo/upgrade#872

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-04-17 09:43:56 +02:00
ryv-odooandThibault Delavallée 186cfb5ebd [REF] mail: make alias mixin multi-enabled
Purpose of this commit is to allow multi-create in alias mixin by correctly
creating / updating aliases in batch.

Task ID 1919277
Community PR odoo/odoo#41160
Enterprise PR odoo/enterprise#6983
Upgrade PR odoo/upgrade#872

Co-Authored-By: Rémy Voet <ryv@odoo.com>
Co-Authored-By: Thibault Delavallée <tde@odoo.com>
2020-04-17 06:52:09 +00:00
Thibault DelavalléeandRémy Voet 7cfd364db5 [REF] mail, various: clean usage of mail alias
Clean the usage of mail aliases and more specifically its associated mixin
`mail.alias.mixin` .

Stop using context for model of aliases, and correctly give model_id and
parent_model_id to the call chain through a cleaned code easier to override.

We also merge methods get_alias_model_name and get_alias_values in single one
called before record creation (alias first values) and right after (to have
values depending on actual record).

LINKS

Task ID 1919277
Community PR odoo/odoo#41160
Enterprise PR odoo/enterprise#6983
Upgrade PR odoo/upgrade#872

Co-Authored-By: Rémy Voet <ryv@odoo.com>
Co-Authored-By: Thibault Delavallée <tde@odoo.com>
2020-04-17 06:51:46 +00:00
Thibault DelavalléeandRémy Voet 4b3589359b [FIX] crm, hr_recruitment: clean manual alias creation
Purpose of this commit is to clean manual alias creation by correctly giving
field values instead of relying on magic from model_name to model_id. Code
is more understandable now.

Task ID 1919277
Community PR odoo/odoo#41160
Enterprise PR odoo/enterprise#6983
Upgrade PR odoo/upgrade#872

Co-Authored-By: Rémy Voet <ryv@odoo.com>
Co-Authored-By: Thibault Delavallée <tde@odoo.com>
2020-04-17 06:51:39 +00:00
ryv-odooandThibault Delavallée 4385ed024e [REM] mail: remove leftover mail alias fields from res.users
A mail alias is still linked with the res.users model with 2 fields, alias_id
and alias_contact (related). It is not used anymore. We can therefore remove
those fields.

Aliases were added at 052f2ace57 . Purpose was to be able to discuss with
users directly using Odoo as a mailbox. However it was not usable and was
quickly deactivated. Aliases on res.users was removed at 029d1baf35 . It was
decided at that time to not support alias on users anymore as it was creating
more issues than adding communication facility.

This commit finally removes the unused fields. If necessary in some custom
flow they can always be added through studio.

LINKS

Task ID 1919277
Community PR odoo/odoo#41160
Enterprise PR odoo/enterprise#6983
Upgrade PR odoo/upgrade#872

Co-Authored-By: Rémy Voet <ryv@odoo.com>
Co-Authored-By: Thibault Delavallée <tde@odoo.com>
2020-04-17 06:51:06 +00:00
Kevin Baptiste e3189298cb [IMP] hr_contract: remove unused medic_exam field
The field `medic_exam` is not used anywhere and can thus be removed.

closes odoo/odoo#49631

Taskid: 2239321
Related: odoo/upgrade#1075
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-04-16 08:16:31 +00:00
Nicolas Martinelli 4f76f3526a [FIX] maintenance: Top Priorities
Use correct filter since it was renamed in 9a0fedfc65

opw-2238922

closes odoo/odoo#49687

X-original-commit: e427a1f097791900b79f08f1f7b8431b6d58d9fd
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-04-16 17:57:05 +00:00
Ravi Gohil 99447e28e7 [FIX] l10n_xx: fix bad default accounts for journals
l10n_hn:
Default Income Account set for product's category
is actually an "Expense" account, which is wrong.

l10n_sa:
Default Debit/Credit accounts for exchange journal
should not be same as of sales/purchase journal.
This is forbiden in future version by commit caeb7828.

Currently, this is the case here and this commit aims
fixing it.

closes odoo/odoo#49667

X-original-commit: 370f2d9ebda7eb3e52af8f55f466f4e66ab8140c
Signed-off-by: Josse Colpaert <jco@openerp.com>
2020-04-16 13:40:41 +00:00
Benjamin Frantzen (bfr) 63d0fea176 [FIX] account: reference field appear on account.move form
- Specifically, it did not appear for misc operations & credit notes
- Currency only appear if group_multi_currency
- Fix label for journal_id appearing based on group

closes odoo/odoo#49671

X-original-commit: 62e54cb8960cd84484d462dc8c7d7c1e89a9eacd
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2020-04-16 14:53:27 +00:00
Julien Mougenot f7a8f42113 [FIX] web: export/import form state with pure JS
Before this commit, restoring the previously active tab on a form view was done
through programatically clicking on the tab and letting Bootstrap handle the switch
itself. This caused some cases of race condition since the click handler is asynchronous.

Now, classes are applied manually and should not cause any concurrency issue.

closes odoo/odoo#49668

X-original-commit: 214b842cba030f451430ff0d8c3fc1868be515e9
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Signed-off-by: Julien Mougenot (jum) <jum@odoo.com>
2020-04-16 14:08:27 +00:00
jbm-odoo 14b9347343 [IMP] hr_timesheet: Move not yet invoiced timesheets when project changes
When we change the project on task, we change it also on
timesheet line if this line is not yet invoiced and if it
has no sale order line or the sale order line is the same
as sol of task.

closes odoo/odoo#45154

Taskid: 2169290
Related: odoo/enterprise#9471
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-04-16 14:07:30 +00:00
Ravi Gohil 691bd3c8a8 [FIX] l10n_no: set correct default purchase tax
25% rate is the default VAT rate and not 0%.

Encountered this bug when a test case failed for
Norway SAF-T PR, see odoo/enterprise#9724

closes odoo/odoo#49662

X-original-commit: 0d4fe47745d241b99a690c16554383a4e3c7c86b
Signed-off-by: Josse Colpaert <jco@openerp.com>
2020-04-16 13:09:42 +00:00
Michael Mattiello (mcm) f0aa343fe2 [REF] web,mail: use patchMixin and patch instead of utils.patch
This commit replaces the use of utils.patch by the new class patcher and
makes the renderers that are converted to owl patchable.

closes odoo/odoo#47700

Related: odoo/enterprise#9551
Signed-off-by: Géry Debongnie (ged) <ged@openerp.com>
2020-04-16 07:19:55 +00:00
Michael Mattiello (mcm) dcf9a4c38d [IMP] web: add es6 class patcher
This commit implements a new way to monkey-patch ES6
classes (for instance, Owl Components).

Usage
-----

odoo.module('module.BaseClass', function (require) {
    const patchMixin = require('web.patchMixin');

    // Define your class as usual
    class BaseClass {
        constructor() {
            this.foo = 'foo';
        }
        bar() {
            console.log(this.foo);
        }
    }

    // but export it like this to have a "patchable" version
    return patchMixin(BaseClass);
});

odoo.module('module.Patch', function (require) {
    // imports the "patchable" version
    const BaseClass = require('module.BaseClass');

    BaseClass.patch('key', T =>
        class extends T {
            constructor() {
                super();
                this.foo = 'patched foo';
            }
            bar() {
                super.bar();
                console.log('patched bar()');
            }
        }
    );
});

odoo.module('module.instance', function (require) {
    // imports the "patchable" version
    const BaseClass = require('module.BaseClass');

    const obj = new BaseClass();
    obj.bar();
    // if module.patch is loaded before this module the patch
    // will be apply and calling obj.bar() will log:
    // patched foo
    // patched bar()

    // You can unpatch a patchable class
    BaseClass.unpatch('key');
});
2020-04-16 07:19:25 +00:00
nia-odoo 5cc42022fc [IMP] hr_holidays: Allow to select start date for accruals for allocation
Currently it was not possible select start date for accruals
leave allocation. it was default taken as today's date.

So purpose of this task is to make start date field of accrual
time off visible so user do not have to wait until day to add a day off

In this commit, we make start date field of accrual time off visible with
default value as today and also check for the start date in cron method.

closes odoo/odoo#46811

Taskid: 2199326
Closes: #46811
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-03-27 10:12:23 +00:00
Romeo Fragomeli fbd1d7584a [FIX] tests,tools: remove unused code
Due to this commit: odoo/odoo@0ea67467b1 ( https://github.com/odoo/odoo/blob/0ea67467b1301b39a263a386a622e931784eb0de/odoo/tools/config.py#L521 )

the screencasts value is not a string anymore but a valid PATH.

So now you can't set '1', 'true' or 't' to force to have the
same directory as the screenshot dir.

Steps to reproduce:
odoo-bin ... --screencasts 1 (with a failed JS test to produce a screencast)

closes odoo/odoo#49665

X-original-commit: ab1bf59a3b78f3c0857755cb2439636b6df297c3
Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
Signed-off-by: rfr-odoo <rfr-odoo@users.noreply.github.com>
2020-04-16 13:28:07 +00:00
Romeo Fragomeli f91665ac66 [FIX] tests: ffmpeg don't use the right path for screencast
Screencasts were saved in the right directory (screencasts_frames_dir)
but the given path for ffmpeg was wrong (screencasts_dir) and it wasn't
possible to read theses files to make the video.
After this commit, we use the screencast_frames folder to read files.

Steps to reproduce:
Execute Odoo with these additional command:
--screencasts "folder_of_destination" --test-enable (with a failed JS test to produce a screencast)

X-original-commit: 0c0b7a656388d65de15796f07a3f4cc93028f1d7
2020-04-16 13:28:06 +00:00
Lucas Lefèvre 7e09f71ae4 [FIX] calendar: Aggregate field when grouped
Commit b0f1086 forgot that `read_group` supports
aggregation functions (e.g. "start:month") and that
`groupby` could be a single field or a list of fields.

+ add some tests

Task 2238100

closes odoo/odoo#49550

Related: odoo/enterprise#9878
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-04-15 11:14:52 +00:00
Victor Feyens 61267f3760 [FIX] repair: ensure the pricelist is in the right company
Default and onchange fallbacks don't consider the current company
when searching for a pricelist.

Forward-port of #46429

closes odoo/odoo#49650

X-original-commit: 812af92080648bdb7f7bb0e4e6aef55c6dc4b9d4
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2020-04-16 11:48:57 +00:00
Victor Feyens 6fd2d9b898 [FIX] product,website_sale: partner pricelist fallback
When no pricelist property is defined for a customer, we use a search as
fallback, without considering the current companies.

This means you can see the pricelist of company B as pricelist for a
partner, even with company A as main current company (if both company
are enabled in the multi-company widget).

Forward-Port of #46429

X-original-commit: 68040c92c8e09218641d823d690e0ce36dcdef30
2020-04-16 11:48:56 +00:00
Odoo's Mergebot f5a047955c [MERGE] website_slides(_survey): ease certification creation in eLearning
Purpose
=======

In eLearning you currently have to create a certification before adding it to
a course in front-end. This PR allows creation of certification in front-end
with pre-filled settings.

Functional Spec
===============

1. On a course, add content, type certification, you can choose an existing one
   (normal flow) or create a new one in the dropdown by typing a new survey
   name (new flow).
3. When submitting (Publish or save as draft), a certification survey, with
   pre-filled settings is created and linked to the slide.
   Pre-filled settings:
        * One page per question
        * Attempts limit : 1
        * Time limit : no limit
        * Scoring without answers
        * Passing score : 70%
        * Is Certification : True
        * Email Template : Certification: Send by email
        * Give Badge : False
4. After submit, the user stays on the Course Content.
5. A toaster is displayed in the top right saying:
    Toaster's Title: Certification created
    Content: Follow this link to add questions to your certification.
    <a>Edit certification</a>

A website editor can select a certification (if available) for the creation of
a slide.

This PR also includes various IMP for a better user experience as well as
some code cleaning

  * use badge level image as default badge image
  * force duration to be positive in upload slide widget
  * clean slide upload widget and controller code

See sub commits for more details.

Link
====

Task ID 1981399
PR odoo/odoo#43577

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-04-16 13:14:48 +02:00
Thibault Delavallée b72b29f990 [IMP] website_slides_survey: merge slides controller files
Two files holding slides-related controllers exist. Let us merge them in
a single one to simplify organization.

Task ID 1981399
2020-04-16 10:26:32 +00:00
Florent LejolyandDavid Beguin 24033e4aaf [IMP] website_slides,_survey: allow certification creation at frontend
Purpose
=======

Before this commit, in the front end, you had to create a certification before
adding it to a course. This commit allows creation of certification in
front-end with pre-filled settings.

Functional Spec
===============

1. On a course, add content, type certification, you can choose an existing one
   (normal flow) or create a new one in the dropdown by typing a new survey
   name (new flow).
3. When submitting (Publish or save as draft), a certification survey, with
   pre-filled settings is created and linked to the slide.
   Pre-filled settings:
        * One page per question
        * Attempts limit : 1
        * Time limit : no limit
        * Scoring without answers
        * Passing score : 70%
        * Is Certification : True
        * Email Template : Certification: Send by email
        * Give Badge : False
4. After submit, the user stays on the Course Content.
5. A toaster is displayed in the top right saying:
    Toaster's Title: Certification created
    Content: Follow this link to add questions to your certification.
    <a>Edit certification</a>

A website editor can select a certification (if available) for the creation of
a slide.

Task id: 1981399
PR #43577

Co-Authored-By: Florent Lejoly <fle@odoo.com>
Co-Authored-By: David Beguin <dbe@odoo.com>
2020-04-16 10:26:32 +00:00
David Beguin dd53c515c8 [IMP] website_slides: force duration to be positive in upload slide widget
To avoid user to set a negative duration on slide they upload using the
upload widget, a min=0 has been added to the duration input of that widget.

Task ID 1981399
PR #43577
2020-04-16 10:26:32 +00:00
David Beguin e52489bf99 [IMP] website_slides: lint and clean slide upload widget and controller code
This commit prepares the next ones from same PR and only clean the code of
slide upload widget + website_slides controller.

Task ID 1981399
PR #43577
2020-04-16 10:26:32 +00:00
David Beguin 45f7463e7a [IMP] website_(profile, slides): use badge level image as default badge image
Before this commit, if no image was set on the badge, no image was shown when
displaying the badge.

After this commit, if a badge level is set on the badge and no image is set,
the badge level image will be used for the badge.

This fix / improvement is applied twice

  * when displaying an user profile, its received badges;
  * when displaying current user achievements in eLearning;

Task ID 1981399
PR #43577
2020-04-16 10:26:32 +00:00
Thibault Delavallée 16e492860b [FIX] website_slides_survey: fix ACLs for eLearning officers reading surveys
Commit 90bf317c01 added read rights on survey for eLearning officers.
Reason is that they should be able to link surveys to slides, notably to create
certifications in eLearning.

However in backend eLearning officers cannot access any survey form view as
rights on sub models are not granted. We fix that by correctly giving a read
access on survey sub models to eLearning officers.

They are therefore able to read survey results and statistics. It makes sense
as they are linked to marketing teams. They have no modification rights as
those are limited to survey users / officers.
2020-04-16 10:26:32 +00:00
Thibault Delavallée d998c29ae8 [FIX] website_slides: fix upload without category
This commits fixes 6d9b367a79d09d3d7a9dde890ca651aa09b93987 that fixed 0a980d4be6300fbc888dcc9daf760a48c1b0ec32 that fixed dc9fa6e2166ad803c91ca4f3e3e17b8065eeee82 .
Amazing.
2020-04-16 10:26:32 +00:00
Victor Feyens afa193c02b [FIX] sale_management: consider timezones for quotation validity days
The validity_date and/or remaining_validity_days fields on the sale
order
could be wrong due to different timezones.

Furthermore, using datetime.now to create a date is unnecessary.

closes odoo/odoo#49639

X-original-commit: 40e0c39fb410d018d007f2c70c12daf4289d2370
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2020-04-16 09:54:44 +00:00
Kevin Baptiste b83e783700 [IMP] snailmail: confirm sending first letter
Show a confirmation dialog when a user is sending the very first letter.

=========
 Purpose
=========

It happens from time to time that a letter gets sent by accident to a
final customer. This situation is always a bit problematic and is
usually only uncovered when it is too late.  Having an additional
warning when sending the very first letter should help avoid that kind
of issue.

================
 Specifications
================

Display the following warning when the user tries to send a snailmail
letter for the first time (from an invoice or from a follow-up report):
'You are about to send this invoice/follow-up report by post. Are you
sure you want to continue?' Confirm/Cancel

closes odoo/odoo#47861

Taskid: 2215091
Related: odoo/enterprise#9326
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-04-16 09:36:04 +00:00
Samuel Degueldre 0b0690a393 [IMP] website, web: add fullscreen mode and frontend keyboard shortcuts
While the edit mode interface is full of useful things, it also adds a
lot of clutter, and alters the page's width and thus, its layout. This
commit adds keyboard shortcut for website editors to use, and allows
them to enter a "fullscreen" mode that hides the editor interface while
remaining in edit mode, allowing the user to have fewer distractions
while editing text content, and a closer rendition of the page's final
layout while editing.

For this, keyboard shortcuts were required, and a few other useful
shortcuts have been added, such as alt-1,2,3 for the navbar, just like
in the backed.

task-2126915

closes odoo/odoo#46953

Related: odoo/enterprise#9295
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-04-16 09:45:58 +00:00
Victor Feyens d6893ae727 [FIX] product,sale: When multi-currency is enabled, pricelists should also be enabled
Since https://github.com/odoo/odoo/commit/7d8df4bec192e5a2ff3341dcf43d59e06a57f9a9, the groups
managing pricelists features have been updated.

But the onchange feature enabling pricelist on multi-currency activation was wrongly
adapted, it was only activating advanced pricelists, iff basic pricelists were enabled.

The wanted feature is to activate pricelist (basic pricelist features: group_product_pricelist)
when multi-currency is enabled.

Also add an implied_group on multi_currency group to enforce this behavior.

closes odoo/odoo#49633

X-original-commit: f862f9650395b02f6a43c57cdf232a309fa6948e
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2020-04-16 08:36:03 +00:00
Romeo Fragomeli f83ba90e90 [FIX] web: avoid "False-Positive"
For testing, we use helpers functions like testUtils.dragAndDrop().

Due to the commit odoo/odoo@de924f41ee
these methods were wrapped by a deprecated function to add a deprecation
warning in the console when these methods are used.

After this commit, the deprecated method will properly propagate the
returned value of the original function. And so if the returned value
is a Promise now we can await this Promise.

This should fix some false positives on runbot in saas-13.3 (e.g. FullCalendar).

closes odoo/odoo#49611

X-original-commit: 33bfe175bf1ba7824a1bef27fd7fa0898dbe8cb3
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
2020-04-16 07:06:24 +00:00
Laurent Smet 47e6afc3e3 [FIX] account: Fix rounding error when saving invoice
- Activate multi-currency
  Company currency: USD
  EUR rate: 0.14
- Set the decimal accuracy of Product Price to 5
- Create the following invoice in EUR:
  Name   Qty    Price Unit     Subtotal
  A     38.0      38.73553      1471.95
  B    222.0    4083.19000    906468.18
  C     35.0      49.45257      1730.84
  D      1.0      17.99000        17.99
- Save the invoice
- Edit the invoice and set a payment term, e.g. 30 days
- Save

There is a difference in debit and credit of 0.01 coming from the
following:
  1471.95   / 0.14 =   10513.93
  906468.18 / 0.14 = 6474772.71
  1730.84   / 0.14 =   12363.14
  17.99     / 0.14 =     128.50
              SUM  = 6497778.28

But the receivable account:
  909688.96 / 0.14 = 6497778.285714286 => 6497778.29

When changing the payment term, all invoice lines are recomputed.
`price_unit` and `tax_ids` are in the list of the updated fields, which
triggers the synchronization of accounting and business fields. During
this synchronization, `_get_fields_onchange_subtotal_model` is called
and recomputes the debit amount, leading to the difference.

We only synchronize if the value of the business fields have changed.

opw-2209543

closes odoo/odoo#49605

X-original-commit: 70bd2c9c7a7c8ec832edd2c158f4f61b78cdeb37
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-04-16 07:11:07 +00:00
Laurent Smet 5a99ddf88b [IMP] account: Improve testing class for account_reports
closes odoo/odoo#44493

Related: odoo/enterprise#8114
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2020-04-15 17:25:39 +00:00
jvm-odoo 65b798b461 [FIX] web_editor: fix video widget allow fullscreen
Issue

	- Install Website
	- Go on your website
	- Add Media & Text
	- Replace media by video
	- Add youtube URL
	- Save
	- Play the video

	The fullscreen button is disabled

Cause

	We do not allow fullscreen on the iframe

Solution

	Allow fullscreen, it is already done for the preview

OPW-2224696

closes odoo/odoo#49616

X-original-commit: e608a3feed35801c51c8ce7e251ccffa2ca9dc46
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Signed-off-by: Jason Van Malder (jvm) <jvm@odoo.com>
2020-04-15 17:18:18 +00:00
Benjamin Vray 6cd8ef2024 [FIX] website: fix wrong z-index on the header
Remove the z-index = 1 for the header because it introduces visuals
bugs where certain elements are displayed at the top of the header when
should be displayed under. Example:  search button in events page.

task-2229057

closes odoo/odoo#49612

X-original-commit: e5a5b7f454befd9059f88dbd4f31a76e43e0eb77
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-04-15 16:34:13 +00:00
william 387ee3e05a [FIX] account: account type selection in list view
The custom selection widget was only used in the form.
A small rework had to be done to make it work in list views because the
values were not pre loaded.

closes odoo/odoo#49604

X-original-commit: cf942e6df3bf065e299d8ad0dcfd8ed2cc66b29c
Signed-off-by: Cedric Snauwaert (csn) <csn@openerp.com>
Signed-off-by: wan <william-andre@users.noreply.github.com>
2020-04-15 15:14:02 +00:00
Csaba Tóth dff06e82b3 [FIX] account.invoice: leftovers of the state / invoice_payment_state
refactoring

this fixes bugs introduced by
https://github.com/odoo/odoo/commit/beaa30a3d1843de43a45f419bfbc1bfa7613a920

in saas-13.2, the field invoice_payment_state was renamed into payment_state by
https://github.com/odoo/odoo/commit/8e4158af810bcf475214946fa64d3b0ce4d3b26d

in saas-13.4, the feature post_at of journal have been removed by
https://github.com/odoo/odoo/commit/caeb782841fc5a7ad71a196e2c9ee67644ef9074

closes odoo/odoo#49569

X-original-commit: 2001c413ee142c50ca6549cd5dff9fc0f9f1637b
Signed-off-by: Csaba Tóth <csaba.toth@i3rendszerhaz.hu>
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2020-04-15 13:35:16 +00:00
william a6026eb71d [FIX] account: default account in form
The default account was never set when adding a new line because the key
was missing from overriden context

closes odoo/odoo#49583

X-original-commit: a0f0b5e4f3e569e6bb217c1243a705e180970219
Signed-off-by: wan <william-andre@users.noreply.github.com>
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
2020-04-15 11:13:49 +00:00
Adrien Horgnies 729fb763c7 [FIX] l10n_fr: fix intra com, extra com taxes and fiscal positions
1. merge intra community taxes (one taxe with two report lines instead of two taxes with one report line each)
2. fix "tva à l'encaissement" fiscal position mapping (two rates were using the same xml_id)
3. add outside EU import taxes

closes odoo/odoo#49552

X-original-commit: a5ddba34cc336e380f98c36ac4737ab97043eb76
Signed-off-by: Josse Colpaert <jco@openerp.com>
Signed-off-by: Adrien Horgnies <AdrienHorgnies@users.noreply.github.com>
2020-04-14 14:31:21 +00:00
Odoo's Mergebot 5b4ebd63a8 [IMP] partner_autocomplete,crm_*: unify displayed "clearbit" information
PURPOSE

We make multiple calls to the clearbit API and the returned information are
shown in various different templates, although they contain the same
information.

The purpose of this commit is to unify the templates into a single one to
reduce code size and improve coherence.

SPECIFICATIONS

Currently, we have 3 ways of reaching out to the IAP clearbit api:
- When creating a partner (autocomplete service)
- When enriching an existing lead based on its email address
- When generating leads using the "Geneate Leads" button or using the website
  visitors

Every time we use the service, we log a note in the model's chatter containing
all the information returned by the cleabit service (estimated annual revenue,
media links, sector, ...).

Though using different endpoints and methods, all the calls essentially return
the same data, and the templates could be unified for consistency.

This is the goal of this commit.

We merge the 3 separate templates of each modules into a unique template that
always renders the same information to the end user.

To do that, we had to find a common module to store the template, we chose
"partner_autocomplete" as it's installed anyway as soon as "crm_iap_lead_*" is
installed.

LINKS

PR #40349
Task 2081471

Related: odoo/upgrade#775
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-04-15 09:59:36 +02:00