Commit Graph
136685 Commits
Author SHA1 Message Date
Adrian Torres ce4fcebbbb [FIX] orm: don't log errors on constraint failure unless necessary
Given an scenario in which a field F of model M is defined in module X
as `required=True` and is extended by another module Y as
`required=False` in a database with data not satisfying the original
constraint:

During an upgrade of base the original constraint will be re-applied
on the data (and fail) even though it is no longer necessary because
module Y relaxes the NOT NULL constraint.

This failure in and of itself is non-blocking, the upgrade will go
through but an error and a warning are logged anyway which are not
problematic either except in the case of automated testing
infrastructure (such as runbot), because of this it would be best if
these errors would not be logged at all unless we're 100% sure that the
constraint that was applied is not relaxed downstream.

With this commit, the `finalize_constraints` method will verify that the
constraint is applicable (field is required) before re-applying the NOT
NULL constraint.

opw-2269220

closes odoo/odoo#53529

X-original-commit: f09f4826fbdd1a547503c51a3cfad71285312c49
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2020-06-23 15:33:04 +00:00
Swapnesh Shah 195c7e83fe [FIX] purchase_requisition: add missing attribute/context
Followup on ca707502a6

During replacing `partner_id` field in `purchase_requisition` module, widget and context key `show_vat` was not preserved.

With this commit we add missing attributes of the field.

closes odoo/odoo#52383

Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2020-06-23 14:41:52 +00:00
Raphael Collet ea83473eab [FIX] core: flush() with one2many fields
This ensures that flushing a one2many field automatically flushes its
inverse many2one/integer field.  Without that, a search like:

    model.search([('o2m_ids', 'in', ids)])

can return incorrect results.

closes odoo/odoo#53514

X-original-commit: b91b485a5d9a62acfe44b12c64a46dcca23981ce
Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2020-06-23 14:00:42 +00:00
Nicolas Martinelli 536759644e [FIX] stock: reserved quantity on return of return
1. Activate receipt in 2 steps
2. Make a PO of 10
3. Receive 8 (pick 1), backorder
4. Receive 2 (pick 2)
5. Unreserve the internal transfer (pick 3)
6. Go to pick 2, return 2 (pick 4)
   => product is sent back to the supplier
7. Go to pick 4, return 2 (pick 5)
   => product is received from the supplier
8. Go to pick 3, check availability

Only 8 units are reserved instead of 10.

It happens because pick 5 (return of the return) is not linked to the
pick 3 (internal transfer).

We use a similar approach for `move_dest_to_link` than the one used for
`move_orig_to_link`.

Closes #52459

opw-2271838

closes odoo/odoo#53506

X-original-commit: c96339dd94ffe1e9c5103814062455c79d93a273
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-06-23 12:41:15 +00:00
Nicolas Martinelli 8b49908f8c [FIX] stock: prevent traceback
In case there are several `move_dest_ids`, this piece of code will cause
an error.

X-original-commit: ff17edfd6682ba45397549fb228b37384f634674
2020-06-23 12:41:15 +00:00
oco-odoo 57c74415cb [IMP] account: cash rounding: forbid entering a negative rounding value.
closes odoo/odoo#53501

X-original-commit: 2ecd2130639caad90609ce794df370359ad6e2fb
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-06-23 10:51:41 +00:00
Yannick Vaucher 2e9aac7655 [FIX] l10n_ch - print ISR tests
resolves the following error:

E psycopg2.IntegrityError: null value in column "partner_id" violates not-null constraint
E DETAIL: Failing row contains (193, 010391391, null, null, null, null, 10, null, 1, 1, 2020-05-20 20:05:28.431208, 1, 2020-05-20 20:05:28.431208, null, null, null, null).

To generate an ISR payment slip you need:

  * a type == out_invoice
  * a partner bank account with a ISR issuer number (field l10n_ch_isr_subscription_[chf|eur])
  * a currency either in EUR or CHF

Remarks:

  * l10n_ch_postal is not necessary and must be used for Vendors only.
  * human readable subscription number is xx-yyyyyy-c
        validation of such format is done with the following PR: https://github.com/odoo/odoo/pull/51544/files

It does:

- Removes unexisting field from tests
- Adds required field on partner_id
- Fix test with an actual case that case generate ISR payment slips

closes odoo/odoo#53498

X-original-commit: 776fd59909d12c981585fac82cfa9f3603d96ccf
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-06-23 10:17:26 +00:00
Dhruv Patel 8a1e1c0c4c [FIX] web: daterangepicker not working in firefox
A recent commit [1] made the daterangepicker automatically close
itself on scroll events. However, in firefox, a scroll event is
triggered when the daterangepicker opens. This event is triggered
inside the picker itself. As a consequence, the picker is closed
directly. This commit solves the issue by only closing it on scroll
events occurring outside the picker.

[1] https://github.com/odoo/odoo/commit/e6730c6e928587cd7438340cc101c57fee34220b

closes odoo/odoo#53497

Task: 2282571
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2020-06-23 12:45:10 +00:00
Nicolas Martinelli f1b7a2b147 [FIX] l10n_ca, l10n_us: do not change paper format on upgrade
- Install US localization
- Change the paper format of the main company
- Upgrade `l10n_us`

The paper format is changed back to 'US Letter'.

Note that the current situation is not ideal since it forces the
paper format on the main company, whithout taking into account its actual
country.

opw-2272894

closes odoo/odoo#53494

X-original-commit: 618f0e7f8b411e1930c73f52462e674353c18be9
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-06-23 09:56:32 +00:00
shs-odoo db0de87ead [IMP] sale: improve invoiceable lines decoration
purpose of this task to improve invoiceable lines decoration

in view_order_form
- decoration is removed from the order line tree view
- decoration applied to fields
  -  product_uom_qty
  -  qty_delivered
  -  qty_invoiced

closes odoo/odoo#53402

Taskid: 2282277
Closes: odoo#53402
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-06-22 11:20:26 +00:00
Hardik Prajapati 999507007e [IMP] hr: Sync some data between user and employee
Purpose of the task is to improve the employee image and phone
behaviour while changing the user.

So in this commit, IF there is no pitcure on employee then apply the
image of user while adding the user to employee from cretae, write
and onchage. do not  change the employee image if employee image is
already set while creating employee or changing the user on employee.

Also improve the phone behaviour when changing the company,
  - Never change the mobile_phone when switching the company
on employee
  - Always change the work_phone when switching the company, except
if empty on res.company.

closes odoo/odoo#50115

Taskid: 2240167
Closes: #50115
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-06-23 11:53:45 +00:00
Thibault Francois 3ad85b6f06 [FIX] website_hr_recruitement: Mail not send at creation
When an applicant is created from the website
and the job_id has a first stage with a template to send
the mail is actually not sent.

This is happening because at the creation of
a mail.thread values from computed field don't
appear in the change to track.
so _message_track_post_template don't see the
change on stage_id and thus don't send the email

This is going to be fix on the master
in the meanwhile we can force the value of the stage_id
at the creation of the applicant from the website form

closes odoo/odoo#53462

X-original-commit: bbaf4913382809da0c4d644f914cb3e8191a5d1b
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-06-22 17:15:24 +00:00
Aaron Bohy 61a3a4d52d [FIX] web: list: buttons with attrs column_invisible
Since commit 042b4060bd, attrs 'column_invisible' on button was
ignored. This commit makes this work alongside the adjacent button
grouping feature: if all adjacent buttons have their attrs
column_invisible evaluated to true, no column is rendered for this
group of adjacent buttons.

closes odoo/odoo#53489

X-original-commit: 3110e34ab8e5ec3bf7160655af21f72b4d2179db
Signed-off-by: Julien Mougenot (jum) <jum@odoo.com>
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2020-06-23 09:03:34 +00:00
Nicolas Martinelli 7a4e90de8a [FIX] account_payment, payment: filter providers
- Install 3 payment providers:
  P1: no countries set
  P2: country set to USA
  P3: country set to Canada
- Activate online payment of invoices
- Create an invoice for portal user A (country of user is USA)
- Login with A
- Pay the invoice

All 3 providers are available, while only 1 & 2 should be available.

The providers are filtered in the sale module, but not in the account
module:

https://github.com/odoo/odoo/blob/586ee04a6296c13868011b3afaca61be5c6ff3c6/addons/sale/controllers/portal.py#L190-L193

The same issue occurs with the direct link `/website_payment/pay`.

We apply the same filtering in all modules.

opw-2279710

closes odoo/odoo#53483

X-original-commit: aaac93b551e2a5f331dd14ee5aefbe4ced173691
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-06-23 08:27:29 +00:00
Dhruv Patel 9e60a82680 [FIX] web: crash when multiple occurrences of cids in url
This error occurs for instance when your session expires and you
reload. At this point, the hash part of the url is duplicated and
an error is raised when the webclient tries to parse 'cids' part.

The hash part of the url should not be duplicated, but whatever the
url hash, the client should not crash either.

This commit prevents the hash part from being duplicated, and the
client from crashing when there are several occurrences of 'cids'.

closes odoo/odoo#52599

Task: 2267401
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2020-06-23 09:46:33 +00:00
Yenthe666 fdf381e1b6 [IMP] stock: show location name in warning
Before this commit if you have a quant that has a location linked of the type 'view' you'd get this warning
but you would not know about which location this was and figuring that out is not trivial for most people.
After this commit users get notified about which location is of the type 'view' and can directly correct it if they want to.

closes odoo/odoo#51137

Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2020-06-23 09:52:11 +00:00
Pratima Gupta dd23daec01 [FIX] sale_stock: deley alert is invisible on sales order
Here before this commit, if delivery is late for any sale order,
a warning alert is expected, but was missing on it.

commitment_date_div which contains field json_popover was replaced
by new div without json_popover, was leading the issue.

Fixes#2246833

closes odoo/odoo#50813

Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2020-06-23 09:19:39 +00:00
Yannick Tivisse 721dda2361 [IMP] project_timesheet_holidays: Improve error message
closes odoo/odoo#45818

Related: odoo/enterprise#8602
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-06-23 09:20:32 +00:00
Rémy Baranx (bar) dfdeb34a89 [IMP] sale_timesheet: convert onchanges to stored-editable computed fields.
As now the partner_id field is fully computed and not modified by an onchange method anymore, some tests have been updated.
2020-06-23 08:57:08 +00:00
Rémy Baranx (bar) 972e097dbe [IMP] project: convert onchange to stored-editable computed fields.
The 'stage_id' field is now a stored-editable computed field.

The 'company_id' has been converted to a stored-editable computed field.

The modification of the 'partner_id' field in the onchange method has been
moved and merged into the _compute_partner_id method.

Remove the empty 'onchange' method from the project.task model and also remove
this method call from the sale_timesheet module, which inherits from the project.task model.

Adapt the _compute_partner_id to retrieve exactly the behaviour before the onchange
method deletion.

Update code and tests of the task/subtask partner_id management after discussion with Alexandra to clarify the behavior.

Add the 'multi_edit' attribute to tree views.
2020-06-23 08:57:08 +00:00
Rémy Baranx (bar) cd4e854e41 [IMP] project_timesheet_holidays : convert onchange to stored-editable computed fields.
The 'timesheet_generate' and 'timesheet_task_id' fields have been set as
stored-editable computed fields.

The condition to compute the timesheet_generat field has changed to be
coherent with the _check_timesheet_generate constraint.

Keep the timesheet_generate field without its default value (True) to avoid
raising a ValidationError through the _check_timesheet_generate constraint
before the timesheet_generate field has been computed.
2020-06-23 08:57:08 +00:00
Rémy Baranx (bar) d924d89ab8 [IMP] hr_timesheet: convert onchange to stored-editable computed fields
The fields 'project_id' and 'user_id' have been converted to
stored-editable computed fields.

Convert the 'allow_timesheets' field.

Improvement of the _compute_task_id method to check the task_id field before using it.

Update hr_timesheet tests by removing calls to onchange methods because
now, compute methods are always called.

Get back the onchange on the 'project_id' to compute the task_id field due to a complex
bug found in sale_timesheet tests.
2020-06-23 07:00:10 +00:00
fw-bot 0d327e2d81 [FIX] l10n_ch: don't add an empty page on QR-bill pdf report when a header is displayed
Before that, just one pixel from the bottom of the QR-bill frame passed got out of the page, and end out creating a second, empty page.

Since this error was probably due to some rounding issue in the way A4 dimensions were compared to the layout specified by the scss file, we solve it by rounding the height of this section a little more, removing 0.25mm from it.

[FIX] l10n_ch: qr bill report: display the payment ref under "reference" and the invoice's name as additional information

closes odoo/odoo#53453

X-original-commit: 8a6cc1a572cd04f540e4a5e83362319c13274aea
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-06-22 16:03:59 +00:00
Goffin Simon a220f05f4d [FIX] odoo: Traceback when creating a new contact
Steps to reproduce the bug:

- Let's consider a new instance with default installed language 'en_US'
- Install CRM
- Activate a second language (e.g. en_GB)
- Set that language in all users
- Inactivate default language 'en_US'
- Reset the language of your current user (no value)
- Go to contact and try to create a new one

Bug:

A traceback was raised because the lang en_US did not exist.

PS: Forcing the user to set a language ensures that this fallback
will never occur anymore.

opw:2267711

closes odoo/odoo#53375

Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2020-06-22 14:00:19 +00:00
Arnaud Joset 6b95f0c144 [IMP] project: improve calendar view
Before this commit, the calendar view showcases tasks by deadline. Because it is a simple date field, the day/week modes don't have much value and are even confusing to the users, who expect to be able to define timeframes.

In addition, the quickcreate doesn't allow to select a project. This is problematic because it leads to "ghost" tasks.

closes odoo/odoo#52478

Taskid: 2264594
Related: odoo/enterprise#10976
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-06-23 07:56:16 +00:00
Swapnesh Shah b88c755b35 [IMP] stock: display full product name in warning
Displaying full name with code helps to Identify Products with `default_code` in the warning message. (Especially when variants are activated)

closes odoo/odoo#51720

Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2020-05-22 15:55:48 +00:00
Rémi Rahir 215b168a11 [FIX] crm_reveal: don't create request whitout IP address
In some cases the value of `httprequest.remote_addr` is empty. In that
very case, it is useless to create a reveal_request in that specific
case since it will never be validated.

closes odoo/odoo#53466

X-original-commit: 2acdd795d7db28026968f5312574d7bb68267538
Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
2020-06-22 19:41:29 +00:00
Pratima Gupta d8702a4419 [FIX] product_expiry: changed removal date visibility on inventory report
1) removal_date in inventory report should be readonly if
product tracking is none or use_expiration_date of product
is false.

2) removal_date should be editable in inventory mode.

Fixes-2273732

closes odoo/odoo#52827

Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2020-06-17 09:56:29 +00:00
wan 9071e1c1b9 [IMP] account,l10n_generic_coa: add taxes to demo invoice and remove pdf
Task 2206499

We have to call the onchanges manually in order to compute the taxes
We don't want pdf's because they are not consistent with the data.
* Generated pdf would depend on the company details, set during the
  demo steps
* Generating a pdf would need to be done through a cron because
  wkhtmltopdf needs the web server to be running at install time, which
  is not the case. This has been judged too complicated and not worth.
* Hard coded pdf would also depend on the l10n, the date.

closes odoo/odoo#53279

X-original-commit: c41cedef8f0a75ad795a7bd22f96f990e3f0d483
Signed-off-by: Quentin De Paoli (qdp) <qdp@openerp.com>
2020-06-19 07:11:48 +00:00
Carlos Lopez 5899fb36bb [IMP] point_of_sale: facilite inheritance to create picking from pos
closes odoo/odoo#52946

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-06-23 05:24:14 +00:00
Victor Feyens 000a329f8f [FIX] hr_maintenance: maintenance equipment kanban view
The xpath was wrongly replacing the 'owner_user_id' field before the
kanban templates definition (which isn't displayed in the view).

closes odoo/odoo#53459

X-original-commit: b63043e36702046000aedf3f1f934122d51ef441
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2020-06-22 16:48:12 +00:00
Hardik Prajapati b5806ea355 [IMP] various : Update the demo data of SO/PO/invoice with activities
Purpose of the task is, we have added the activities on various
listviews, the goal of this task is to update SO/PO/invoice demo data
with activities and also set tags on sales orders.

So in this commit, We added the activity on several SO/PO/Invoices and
also added the some tags one sales order and set the user as False
where the user is set as 'Odoobot'.

closes odoo/odoo#51799

Taskid: 2254708
Closes: #51799
Related: odoo/enterprise#10743
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-05-27 10:10:40 +00:00
Julien Castiaux 5d5a3d7fa4 [FIX] base: missing xmlid for mixin fields
We want to create a XMLID for every first exhibition of a field in a
model. That is, we just want one XMLID by field by model and not one
XMLID by field by class. Previous implementation was determining the
"first field exhibition" by making sure the field was created and used
as part of the same module.

This assumption is invalid when we consider mixins. A mixin is an
abstract model that define fields and methods to be included in other
models. As it is abstract, it does not exhibits the field by itself. The
field will only be exhibited when included in a concrete model via
inheritance. When it is included in another module, the XMLID creation
is discarded.

Take a module M1 that defines a model A, take another module M2 that
defines a mixin X with a field X1. In a third module M3, extend A to
inherit from X. While M3.A is the first model module to exhibit the
field X1, the XMLID creation was discarded because `"M2" != "M3"`.

See https://github.com/odoo/odoo/issues/49354#issuecomment-614093767

Task: 2235368
Closes #49354

closes odoo/odoo#53435

Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2020-06-22 16:05:56 +00:00
Didier (did) 8d75b794c4 [FIX] hr_recruitment : avoid duplicate message in the chatter
Before this commit the message "Applicant created" was displayed twice in the chatter.

Task-2278142

closes odoo/odoo#53252

Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-06-18 14:38:23 +00:00
Nicolas Lempereur 94db81d8d2 [FIX] website: load specific view translation
When a view is:

- a specific view (duplicated for a specific website)
- inherited by a new view that is translated

the inheriting view will also be duplicated, but the translation will
only be created for the generic version and not the specific ones.

With this changeset, we duplicate translation of arch_db terms of the
generic view onto matching specific views.

Without the change, added test fails with:

  AssertionError: '<div>hello</div>' != '<div>hi</div>'
  loading module translation copy translation from base to specific view

fixes #51579
opw-2261278
closes #52451

closes odoo/odoo#53012

X-original-commit: 989d58d26f8803b40c1411cb97b0171b05d274d7
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2020-06-16 06:27:19 +00:00
shs-odoo bd8e6edb1d [IMP] hr_expense: Imporve the display of expense banner
currently, the expense banner is displayed on to many menus like:
'expense report > to Pay, to Post'.

so in this commit,the banner should only be visible in the
'My Expenses' and 'My Expense Reports' menus.
and also removed some unused action from hr_expense.

closes odoo/odoo#52241

Taskid: 2267850
Closes: #52241
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-06-03 05:10:23 +00:00
Didier (did) 83af778f3a [IMP] timeoff : reduce font size and avoid scroll bar in the calendar
Before this commit the font-size for the days/hours left was too big. There is
also a useless scroll bar for the calendar. Adjusting the CSS to remove the scroll bar.

Task-2254820

closes odoo/odoo#52178

Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-06-19 11:39:27 +00:00
Nidhi Patel 8438286478 [IMP] account,hr(_expense): Employee private address should be 'private' instead of 'contact'
Purpose of this task is,lots of business flows can be crashed if
the field Private Address(address_home_id) is a private address instead
of a regular contact.

so in this commit,we change the demo data for employee and set the
private type address on employee for private address and also fix
the flows on which errors could occur.

Currently billing administrator does not have right for private address
and while creating payment from expense it was going to set the
customer from the employee's private address on payment so give the
private address right to the billing adminnistrator.
Also chaned admin/demo user's private address as 'private' instead of
regular contact.
and on hr_expense use the Sudo while accessing the home address this
method is used from payslip too.

TaskID:2170016

closes odoo/odoo#46628

Closes: #46628
Related: odoo/enterprise#8924
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-06-11 07:09:48 +00:00
Alexandre Kühn 40793fde23 [FIX] mail: consistent relations between threads, caches and messages
task-2171881

closes odoo/odoo#53440

X-original-commit: 80d13bb828ee75a50d8cea29046a8eb49c71948a
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2020-06-22 14:53:30 +00:00
Samuel Degueldre 5d7901a53b [FIX] web_editor: fix traceback when clicking on website logo in edit
When clicking on an image in edit mode, the web editor attempts to find
an attachment that corresponds to the image's URL. In the case of the
website logo, the URL looks like it's referencing an attachment by id or
xml-id, but it's actually neither. This cause a variable to never be
initialized, which in turns causes a traceback when trying to access it
later.

This commit fixes that by always initializing attachment to None.

closes odoo/odoo#53418

X-original-commit: 790e33de190392b937e21c73905db4d48cfb86aa
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-06-22 13:04:44 +00:00
Xavier Dubuc 7abea54433 [FIX] mail: fix attachment dialog
task-2279222

closes odoo/odoo#53437

X-original-commit: c61094bba21a4af567a68d3fb5d4a44352c667af
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2020-06-22 14:19:00 +00:00
5a99aacda5 [FW][MERGE] *: display sample data in empty views
This PR allows to display sample (fake) data in empty views, in
the hope of easing user onboarding. This can be enabled (in
list and kanban views) with attribute sample="1" on the arch
root element. In this case, if there is no data to display, sample
data will be generated based on heuristics (depending on field
types and names). This can be used in addition to the no
content helper.

This PR also activates it in a bunch of list and kanban views.

Task 2232801

closes odoo/odoo#53417

Forward-port-of: odoo/odoo#52867
Related: odoo/enterprise#11330
Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
Co-authored-by: Aaron Bohy <aab@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
Co-authored-by: Jérémy Hennecart <jeh@odoo.com>
Co-authored-by: Julien Mougenot <jum@odoo.com>
2020-06-22 16:46:29 +02:00
Jérémy Hennecart 9389f7ce2e [IMP] *: enable sample data in several views
This commit sets attribute sample="1" in a bunch of list and
kanban views, to enable the new sample data feature when views are
empty.

Task 2232801

X-original-commit: 5471309b35619f307242c2704c7681ba63d2be42
2020-06-22 13:04:02 +00:00
Aaron Bohy 8abbc5a3b5 [REF] *: adapt code to web changes
Some changes in AbstractModel have been done to ease the
implementation of the sample data feature. This commit reverberates
those changes in other addons.

Part of task 2232801

X-original-commit: dd8069a3c80570e7fa03a80dbb100ab0a182692a
2020-06-22 13:04:02 +00:00
Aaron Bohy c1b4ad7c6d [IMP] purchase: enable sample data in dashboard
For the sample data feature to work, rpcs done by the view need to
be mocked. This commit properly mocks the 'retrieve_dashboard'
function. It also remove custom no content helper style that was
conflicting with the new style in web.

Task 2232801

X-original-commit: 300bc6d9ac2c1bea823bfc80675ffcf8e5dd3e9f
2020-06-22 13:04:02 +00:00
Julien Mougenot 6998452065 [IMP] web: disable keyboard navigation with sample data
Previous commit introduces the sample data feature in list and
kanban views. When sample data is displayed, most parts of the
renderers can't be clicked on, to prevent the user from interacting
with sample records (e.g. to open a sample record in form view from
the list). This commit disables keyboard navigation as well, as
those sample records could still be accessed with the keyboard.

To do so, several refactorings have been done in views:
 - _giveFocus function added on controllers (so that we can hook
   on the moment where we want to focus the renderer, and prevent
   it in sample mode), it kind of replaces giveFocus of ActionMixin
   which wasn't use from the outside
 - updateRendererState -> _updateRendererState as it is private
 - _setState function added on controllers, to have a hook when we
   set a new state (already existed, but only in kanban)
 - _renderView function moved from Basic to AbstractRenderer, so
  that we have a proper hook to deactivate clickable elements in
  sample mode

Task 2232801

X-original-commit: 4482a03fe2f083f4f44fc6eb76d90ae22afbff91
2020-06-22 13:04:01 +00:00
c7964657ec [IMP] web: add support of "sample" attribute in views
With this commit, it is now possible to display sample (fake)
data in empty views, in the hope of easing user onboarding.
This can be enabled (in list and kanban views) with attribute
sample="1" on the arch root element. In this case, if there is
no data to display, sample data will be generated based on
heuristics (depending on field types and names). This can be
used in addition to the no content helper.

Task 2232801

X-original-commit: 7c8e627ff5029cb539d702705e5ce53d658c76ed
Co-authored-by: Aaron Bohy <aab@odoo.com>
Co-authored-by: Mathieu Duckerts-Antoine <dam@odoo.com>
Co-authored-by: Jérémy Hennecart <jeh@odoo.com>
Co-authored-by: Julien Mougenot <jum@odoo.com>
2020-06-22 13:04:01 +00:00
Julien Mougenot 96fcefb6f1 [IMP] web: qunit: remove tooltips after each test
Leftover tooltips may make following tests fail, which isn't what
we want as a test shouldn't impact another one.

X-original-commit: 17a4c72b9a86186c7690bdba5e62ccd64ab2f77a
2020-06-22 13:04:01 +00:00
Julien Mougenot a6cd6d5a89 [IMP] web: utils: add groupBy function
This commit introduces a new utility function: 'groupBy'. It is
similar in API and result as the underscore method of the same
name.

X-original-commit: 834a1967161dc537cb2d5543314a062dbac08f9c
2020-06-22 13:04:00 +00:00
Jeremy Kersten 669bba4694 [FIX] web: update font-display for fa
Partial backport of https://github.com/FortAwesome/Font-Awesome/pull/16353/commits/e446f7e16ba3904a36babba767c739f1da6eae3e
To remove warning in lighthouse

closes odoo/odoo#53416

X-original-commit: 4ac592d4d99de478072a417c479efe97d15952d5
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
2020-06-22 12:55:03 +00:00