Commit Graph
140847 Commits
Author SHA1 Message Date
Romain Estievenart f88520280a [FIX] web_editor: make toolbar scrollable in mass_mailing on mobile
Before this commit, the web_editor toolbar wasn't horizontally scrollable
and part ot the items were not displayed.

To fix this, we have to revert back the initial position on some elements.

closes odoo/odoo#37076

Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
2019-09-24 10:05:47 +00:00
Romain Estievenart 65c8d33c29 [FIX] web_editor: make toolbar scrollable in note on mobile
Before this commit, the web_editor toolbar wasn't horizontally scrollable
and part ot the items were out of the screen area.

To fix this, we have to revert back the initial position on some elements.
2019-09-24 10:05:47 +00:00
Romain Estievenart 90e58efeba [FIX] web_editor: correctly display dialogs on mobile
Before this commit, web_editor dialog was opened inside an iframe and
not on the window.top. So dialogs didn't take all screen area.

To fix this, we open dialogs in full screen mode but we also put the
web editor in full screen to increase the size of the iframe.
Note that the initial state of the web editor (full screen or not) is
preserved when you close the modal.

We also add some fixes to make the "web_editor media dialog" responsive.
2019-09-24 10:05:39 +00:00
David Monjoie c778a0552f [FIX] web_editor: fix wrapping of toolbar icons
Commit e6b1dbca wrongly introduced a no-wrap rule on the toolbar while
fixing another bug. This commit fixes that mistake.
2019-09-24 07:40:04 +00:00
Christophe Simonis d67b2483e5 [MERGE] forward port branch saas-12.4 up to 9ed4872ea0
closes odoo/odoo#37372

Signed-off-by: Christophe Simonis <chs@odoo.com>
2019-09-24 17:45:37 +00:00
Florent Lejoly 38d8b0526f [FIX] sale_crm: correctly handle customer option when converting opportunity
When converting an opportunity to a quotation, it will give 3 options where
the last option is "Do not link to a customer". When clicked it has the
same behavior than "Create a new customer".

Followup of 1d2bccd0db that added the
selection entry but did not implement its behavior.

This commit fixes that behavior. Now it opens a quotation without linked
customer.

Task ID 2065014

closes odoo/odoo#37026

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-09-24 11:08:27 +00:00
William Henrotin 1191676227 [FIX] sale_stock: quantity widget improvement
Commit fff2a30 introduced a popup on sale order line to show some information about available quantity
of the sold product.

This commit adds various imporvement on this widget

closes odoo/odoo#36995

Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2019-09-20 08:37:08 +00:00
Debauche Stéphane 34791aa403 [IMP] website_slides: clean navigation and breadcrumb with profile / courses
SPECIFICATIONS

  * Remove the /home from the breadcrumb in user profile
  * Rename the Home (on a specific course) into "Courses"

Task 2062640

closes odoo/odoo#36900

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2019-09-24 11:23:25 +00:00
qdp-odoo 5abad05e8b [FIX] account: tax audit field sign
Customer invoices and supplier refunds lines involved with taxes will be credit lines, hence their balance must be inversed when shown in the tax audit field.
The method is_inbound() encloses exactly those documents, whereas is_outbound() stands for customer refunds and supplier bills.

closes odoo/odoo#37092

Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2019-09-20 07:11:46 +00:00
Florian Gilbert 4a1321bc99 [FIX] account: Show invoice due date on invoice report for customer.
Task ID: 2060475

closes odoo/odoo#37172

Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2019-09-20 06:35:59 +00:00
Andrea Grazioso (agr-odoo) 3ee3f7d497 [FIX] web: digits option not applied in list view
From the settings activate:

- Multiple Sales Prices per Product
-- Prices computed from formulas
- Discounts

Create a pricelist with discount policy "Show public price & discount to
the customer", set the price calculation formula:
- Rounding: 10
- Price discount: 10%

Modify the sale order xml list view adding 'digits="[3, 2]"' to the
discount shown in the sale order line.

Create a sale order with such pricelist and on the so line put a
product with quantity 1 and sale price 4190 (VAT 19% included in the price).

The discount will not display the requested number of decimal digits (2)
in list view, but it will when editing the field.

The cell formatting is done calling the appropriate function (formatFloat),
which search the digits option from the 'options' parameter or from the field
definition. The latter stores the default digits coming from
the DecimalAccuracy settings, which, as side effect, alter the behavior
of the discount calculation.
https://www.odoo.com/web#view_type=form&model=project.task&id=2069939&active_id=2069939

When passing into edit mode the field is created as widget, parsing its options
which have 'digits', instead when coming back in list mode it is "just a
float field" rendered directly from the list_renderer which no options,
so the formatFloat will look at the field definition
https://github.com/odoo/odoo/blob/12.0/addons/web/static/src/js/fields/field_utils.js#L172

Adding the correct parameter to the dictionary passed to formatFloat
during the list rendering is a possible solution, because it is the
"closest" point in which parsing the parameter is possible without
touching higher level code or forcing the creation of a widget (adding
widget='float' as xml parameter).

closes odoo/odoo#37167

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-09-20 05:37:56 +00:00
Nans Lefebvre 151666b79d [FIX] service: clear environments between transaction retries
Initial bug report, full of red herrings:
receive two support requests by email while on Odoo.sh, the first creates a
ticket, while the second replies to the server with the error:
550 Requested action not taken: mailbox unavailable

When a request is done, the service check function tries each request multiple
times when getting Operational errors.
When two email are received within a 'short' amount of time (e.g .1 second)
the two requests are initiated with a new cursor.
When both mails generate the creation of a new record of the same model,
the second cursor is going to fail because of an:
ERROR: could not serialize access due to concurrent update
However, the record we used in the computations needed in the creation of the
second record have been added to the environment.
When that second creation is retried, it will operate on the same records,
and find them in the todo, with the environment that was obtained for the first
trial. Since the cursor is closed, this crashes.

To explain the bug report, Odoo.sh transfers the mail through an xmlrpc
to process the mail.
Because of this crash, the server interprets the lack of well-formed response
by a generic 'mailbox unavailable'.

opw 2060476

closes odoo/odoo#37165

X-original-commit: 845eecdfa7b27d84862e94f4b63d40a851e0c410
Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
2019-09-19 15:44:59 +00:00
Nicolas Martinelliandjev-odoo f00d6aaeaf [IMP] account: better logging of unbalanced entry
Display the difference when an unbalanced journal entry is created to
help pointing out the source of the issue.

opw-2069673

closes odoo/odoo#37145

X-original-commit: d00e3158cd30067f7cc8d524eff81ccd6e620342
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
Co-authored-by: jev-odoo <jev@odoo.com>
2019-09-19 13:06:26 +00:00
Hugo Adan 7592d609b8 [FIX] web: incompatible blockquote css
- Add the following in a PDF report:
```html
<p>
    <blockquote>
        <ol class="loweralpha simple">
            <li>Item that explain terms</li>
            <li>Another item that explain something else</li>
        </ol>
    </blockquote>
</p>
```
- Print the report

Wkhtmltopdf crashes with the error:

Wkhtmltopdf failed (error code: -11). Memory limit too low or maximum
file number of subprocess reached. Message : b''.

This is a known issue:
https://github.com/wkhtmltopdf/wkhtmltopdf/issues/4115

Actually, since this CSS is only used for Wkhtmltopdf reports, we can
simply remove the CSS rule causing the problem.

Closes #37034
Fixes #37033

opw-2073195

closes odoo/odoo#37155

X-original-commit: 8d08893172ae8c0f3ad1f1af6ab9514aa30bf843
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-09-19 14:08:07 +00:00
Nans Lefebvre c92fb90e7b [FIX] product: always use UTC to compare pricelist dates
In case where no argument is given to _compute_price_rule, it would default to
context_today().
This gives "today" in function of the context, depending on the user timezone.
In contrast, an explicitly given date would always be UTC.
Furthermore, on the webshop an unlogged user would get the Public User timezone,
and once logged would get its portal user's timezone.

To make everything coherent, we always use UTC.

opw 2054881

closes odoo/odoo#37154

X-original-commit: 35d4a8ccce8f3a34701d231e17a324cbbf5abfab
Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
2019-09-19 14:05:23 +00:00
Nans Lefebvre eb2885bc79 [FIX] sale: get correct account to create corresponding invoice
Sibling commit of 427280d9760a71e6ca2961bcf4a2f9f157e6dddd, same use case.

Be in company C1. Create the invoice I for a SO in company C2.
The invoice line is with an account created of C1.
This is because property_account_income_id or property_account_income_categ_id
are company dependent properties that need to be accessed with a force_company.
This happens when e.g. C2 is a child company of C1.
However, accounts are not readable across companies, so the resulting invoice
cannot be validated in either company, since there is a mix of accounts.

Note that in case force_company is False, it defaults to the user's company,
which is already the default.

opw 2068291

forwardport of 79714bafe4b

closes odoo/odoo#37146

X-original-commit: ae84e7fd416c38404c20607b5b04fc1c9b790cde
Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
2019-09-19 12:50:03 +00:00
Nans Lefebvre 7571b086bd [FIX] base: fix portal rights update
Commit c3717f3018 added a (5, 0, 0) command when modifying groups_id of any
non-internal user, to avoid the situation where the various implications would
end up giving the portal user group_user rights.
This risk is avoided by commit f206714af0, which added a constraint
check_one_user_type, which would raise in that specific case.
The last missing piece was 9badedcd98f; when groups are added through settings,
they are added through the implied_groups of the group model.

The (5,) command has the unfortunate side-effect to remove the portal group
from a user if a write is triggered programmatically.
If that happens, then the 'signing up' process end-destination is a 500 error.

Now we simplify the logic that keeping the same behaviour for implied_ids for
internal (group_user) and non-internal users.
We keep the (5,) command in one case: if a user is demoted to portal or public,
he may have groups should be reserved to internal users, but that do not imply
group_user (which would raise).
To avoid that, we remove all its groups, since there is no clear distinction
between technical display groups and actual privilege-granting groups.

opw 2041606

closes odoo/odoo#37144

X-original-commit: 29723e351d5dc5e5ea055c80da86f4e871909de9
Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
2019-09-19 12:49:11 +00:00
Goffin Simon ce7090001d [FIX] product: Field display_name in product template form view
Steps to reproduce the bug:
- Go to Sales app and open the form view of a product P
- With studio add the field display_name in the view
- Try to create a new product

Bug:

A access error was raised because a read was made on a record in cache

opw:2070074

closes odoo/odoo#37133

X-original-commit: 90143c18f50ff31ded5aba7d7ba3beb66423ff06
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2019-09-19 10:33:02 +00:00
Cedric Snauwaert d136a725b2 [IMP] account: manual reconciliation
Improve the manual reconciliation widget:
previously when opening the reconciliation view from receivable or payable account, only entries having a partner where showned, now also shows entries with no partner. -> We still need to have one entry in debit and one in credit for the reconciliation widget to show something but partner is not necessary anymore.

When coming from the aged receivable or the partner followup and clicking "reconcile" we want to be able to see all entries for that partner that are not reconciled (before we only showed something if they were at least one debit and one credit entries for that partner). We added a new context key (all_entries) for that use case.

closes odoo/odoo#36879

Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2019-09-19 07:56:09 +00:00
Laurent Smet 6839671c81 [FIX] account: Fix multi-currency in account.moves
Suppose an invoice in EUR with a company using USD.
- Try to create an invoice with some lines, remove the value of the journal_id field.
=> Traceback because line.company_id.currency_id is an empty recordset on which you can't
call the 'round' method.
- In the list views of the invoices, the price must be shown in the company currency.
- When registering the payment if you change the currency in USD the conversion is wrong.

closes odoo/odoo#37050

Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2019-09-18 11:34:51 +00:00
Laurent Smet f4af7cb536 [FIX] account: Fix forward-port of 133f46c5e7d7ab569c599b216874fd3f412e904a
closes odoo/odoo#37065

Signed-off-by: Christophe Simonis <chs@odoo.com>
2019-09-18 12:44:13 +00:00
Goffin Simon 88889b6aa8 [FIX] mrp: operation type defined on a BOM not chosen
Steps to reproduce the bug:
- Create two operation types OP1, OP2 with code = mrp_manufacture
- Create a BOM B with operation type = OP2
- Create a MO with B

Bug:

The operation type set on the MO was OP1 instead of OP2

Technically:

The default value was always taken from function _get_default_picking_type

opw:2070370

closes odoo/odoo#37029

X-original-commit: 3c5338dce8db7606ac2ac0101473bcafe3bd4f76
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-09-18 10:03:14 +00:00
jev-odoo 5dc389db6b [FIX] point_of_sale: use currency precision to test if orders are paid
The test was made with an epsilon of 0.00001, which is precise enough to avoid
false positives, but allowing false negatives.
As a results, some orders can be incorrectly determined unpaid.
No (non-digital) currency has a precision higher than 0.00001,
but many currencies have a precision much lower (e.g the unit for ¥).
Also, we prepare for the future where all orders will be paid in Bitcoin.

opw 2059997

closes odoo/odoo#37112

X-original-commit: 73c2d46f4a443885fbf67879141ac892efebe3c7
Signed-off-by: Nans Lefebvre (len) <len@odoo.com>
2019-09-19 08:16:19 +00:00
Sebastien LANGE ebda1101e3 [FIX] stock: slow downs in stock move line creation
— Create a new product, it's tracking must be set to 'By Unique Serial
    Number';
— Create a new purchase order, with 500 lines. Each line with 10 units
    of quantity of the previously created product;
— Confirm the purchase.

Before this commit, the creation of the stock piking take a quite some
time, and becomes difficult to use this functionality.

Now, the creation of the stock piking time was significantly improved.

opw-2070738

closes odoo/odoo#37107

X-original-commit: a434b087c86888903e320532b5e75856fa32bd13
Signed-off-by: Jorge Pinna Puissant (jpp) <jpp@odoo.com>
2019-09-19 07:09:04 +00:00
Jorge Pinna Puissant f629cd9672 [FIX] web: write date without separator
Since fbbfa6d it's not longer possible
to write a date without separator (e.g., 0102 for 01/02/2019; 121298 for
12/12/1998;  02042018 for 02/04/2018), or a date without year (e.g.,
01/02 for 01/02/2019) in the datepicker widget.

In this commit we have decided to be as permissive as tempus dominus
that call moment.js with strict false. This allows moment.js to deduct a
date from a string in a more versatile way. This also allows a more
versatile autocomplete in the search views.

opw-2070464
opw-2070931

closes odoo/odoo#37095

Forward-port-of: odoo/odoo#36821
Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-09-19 07:07:03 +00:00
Lucas Perais (lpe) d786d7d250 [FIX] account: cash basis base account not required
Before this commit, the field cash_basis_base_account_id, used
to keep track of the base on which a tax a computed for cash basis entries
was required in the tax form view

Since this account can be absent, and will be most of the time, and that
an account is retrieved anyway in the move creation process it is safe
to remove the required attribute in the view

After this commit, the field is not required in view anymore

OPW 2072750

closes odoo/odoo#37060

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-09-19 07:19:21 +00:00
Victor Feyens 0a76e75b96 [DOC] cmdline/odoo-bin : add --without-demo, shell + reorganize
closes odoo/odoo#36809

Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2019-09-18 08:55:01 +00:00
Victor Feyens ffc69127f8 [DOC] Data files : noupdate information + examples
Solves #26818
2019-09-18 08:54:51 +00:00
Victor Feyens ef5251c0d7 [DOC] cmdline scaffold example 2019-09-18 08:54:40 +00:00
Victor Feyens 65093459e9 [DOC] ir actions report minor fixes 2019-09-18 08:54:29 +00:00
Victor Feyens 29ce2cab28 [DOC] Base : ir.actions.server : fix wrong docstrings.
Wrong since 8fa9f7d6d4 refactoring 
ir.actions.server.
2019-09-18 08:54:18 +00:00
Victor Feyens 96e208c191 [DOC] Ir Actions Server documentation
Since commit 8fa9f7d6d4 refactoring the
actions server, the documentation was outdated.

This commit removes and fixes the documentation on ir.actions.server.
Also adds the display of the docstring of the IrActionsServer class from
odoo.addons.base.models.ir_actions.

Solves #31044
2019-09-18 08:54:07 +00:00
Victor Feyens 240e2d51ea [REM] unused odoo/doc/reference/test-report.txt 2019-09-18 08:53:57 +00:00
Victor Feyens b94b08e579 [DOC] ir.actions.act_window.view 2019-09-18 08:53:48 +00:00
Victor Feyens dc350c503a [DOC] sphinx warning removal 2019-09-18 08:53:38 +00:00
Victor Feyens da01e44bb7 [DOC] fix module.rst 2019-09-18 08:53:27 +00:00
Victor Feyens 004f9e09da [DOC] https links for sites supporting https 2019-09-18 08:52:50 +00:00
Victor Feyens 87003e214e [DOC] batch of UI, Https, linter corrections 2019-09-18 08:52:34 +00:00
Victor Feyens 0ddeb22095 [DOC] actions : add ir.cron documentation 2019-09-18 08:48:28 +00:00
Christophe Simonis 5c89830885 [FIX] digest: do not reset config parameters on update
The `forcecreate=0` is required because the ICP will be deleted when set
to `False` (which is quite frequent for a boolean).

closes odoo/odoo#37103

X-original-commit: 255a12931d2a22dfadb1455a5dfc0a5e2f37b730
Signed-off-by: Christophe Simonis <chs@odoo.com>
2019-09-18 18:41:01 +00:00
Nicolas Lempereur af163d5a9e [FIX] website: boxed title style for splitting
When a title with boxed style (border arround title) is split (by doing
normal ENTER (and not shift ENTER which work as expected)) the title
being in inline-block for styling purpose, this give odd results (of
several title boxes on the same line).

With this commit style is changed so split title are on different lines.

opw-2070611
closes #37084

Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2019-09-18 13:17:18 +00:00
Jigar Vaghela 1ad8c88eb3 [IMP] l10n_in: use a tax group insted of repartition line for SGST and CGST
need seperate lines with different labels(SGST and CGST) on the invoice report and pos receipt
so use a tax group instead of repartition line

closes odoo/odoo#37080

Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2019-09-18 12:46:16 +00:00
Alexandre Kühn 9a66619db3 [FIX] mail: no wait init_messaging before loading webclient
Before this commit, discuss widgets had to wait for the route
`mail/init_messaging`. This behaviour slowed down the loading of the
web client.

This commit solves the issue by rendering discuss widgets even when
`mail/init_messaging` hasn't been resolved. For instance, the
messaging menu displays a spinner until messaging becomes ready.

Task-Id 2072835

closes odoo/odoo#37031

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2019-09-18 10:07:20 +00:00
Lucas Perais (lpe) 3dd2e7c2ef [FIX] website_event_questions: filter hiding cancelled registration
Before this commit, there was no way in the event question report
to filter out cancelled registration

After this commit, we introduce a filter for it

OPW 2072973

closes odoo/odoo#37032

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2019-09-18 07:10:48 +00:00
Julien Mougenot 31ec900bb0 [FIX] web: list selectors synchronisation
Changed the way the header selector behave when the selection changes.

Before this commit, the header selector was only checked when clicked and
was unchecked as soon as any other record was unchecked.

Now, the header selector reflects the current visible selection:
if all of the other visible selectors are checked, it will be checked.

Folded records are not considered visible, thus only records from active groups
and from the current pager will be taken into account.

closes odoo/odoo#36522

Signed-off-by: VincentSchippefilt <VincentSchippefilt@users.noreply.github.com>
2019-09-18 08:24:32 +00:00
Julien Mougenot ca4e158a8e [FIX] web: handling of invalid formats in list views
Added handling of invalid format types in multiple edition in list views.

Before this commit, in multiple edition, a field that was edited with an invalid value format
(e.g. a numeric field receiving a string value) didn't trigger a field_changed and no prompt
was shown; the record was simply idle with an dirty value.

Now, the list controller also listents for set_dirty events and automatically triggers
an error modal + discards all changes when receiving one.
2019-09-18 08:24:32 +00:00
Vincent Schippefilt 28e52c605d [FIX] snailmail: support write with multiple records 2019-09-18 08:24:32 +00:00
Julien Mougenot d261d42d9b [FIX] web: list: m2o doesn't trigger fieldChange when empty
Gives time to the user to enter an actual value in m2o in list views.

Before this commit, emptying a many2one field (selecting all > BACKSPACE or DELETE)
triggered instantly a field_change. This was an issue in multi edition as a field
changed triggered instantly a save on selected records without giving time to the
user to enter a new value.

Now, many2ones only trigger a fieldChange when selecting a new valid value.
2019-09-18 08:24:28 +00:00
Aaron Bohy bb85f963b5 [FIX] web: list: multi edit boolean with ENTER
This rev. solves the similar issue as 801c603218, but with boolean
fields.

Scenario: select several records, select a boolean cell, press
enter to change the boolean value.

Task 2068280
2019-09-18 08:24:13 +00:00
Aaron Bohy 3b4cc84c1c [FIX] web: list: multi edition: disable onchanges
Onchanges make no sense in multi edition as they would be computed
on the 'reference' record (the one use to edit), but applied on all
selected records. This rev. simply disables them in that case.

Task 2068280
2019-09-18 08:24:13 +00:00