Commit Graph
140385 Commits
Author SHA1 Message Date
jvm-odoo 0ef9289238 [FIX] web: fix IE/Edge dropdown clear
Issue

	- Have IE 11 or not chromium-based Edge
	- Install Contacts
	- Add a salesperson on any contact
	- Save
	- Try to remove the salesperson with
	  the cross icon on the input
	- Save

	The value comes back

Cause

	We do not handle this feature in dropdowns

Solution

	Remove the dropdown cross icon

OPW-2262749

closes odoo/odoo#52083

X-original-commit: cdb072372bfaa3cdc85e7b6d79ad848e8d071e00
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Signed-off-by: Jason Van Malder (jvm) <jvm@odoo.com>
2020-05-28 11:34:36 +00:00
Josse Colpaert 468f1b60d0 [FIX] l10n_nl: BTW af te dragen verlegd has wrong sign for 5b line
Original fix pr 50432.  It forgot the BTW verlegd itself.

closes odoo/odoo#52067

Task-id: 2230389
X-original-commit: 4f06fe0d364c84226d3b57b82681b76eb8aaa5fb
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
Signed-off-by: Josse Colpaert <jco@openerp.com>
2020-05-28 09:55:30 +00:00
Josse Colpaert 567b2ecb7e [IMP] l10n_it_edi: install it by default
As without configuration of mail servers,
the only thing it does, is making sure we
can export/import FatturaPA invoices.

closes odoo/odoo#52066

X-original-commit: 19072db87e20ac13221b7a39ac9e8ca25a87b172
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
Signed-off-by: Josse Colpaert <jco@openerp.com>
2020-05-28 09:54:01 +00:00
fw-bot 3349940157 [FIX] l10n_ch: make QR-bill and ISR generation disjoint
QR-bills could only be generated for ISR-compliant invoices, which is wrong and would have caused issues in the future, as ISR will slowly disappear.

Furthermore, doing it this way avoids raising an error after commit 719f087 , when trying to print an ISR-compliant invoice if the module hadn't been updated (it used to raise because the QR-bill report didn't exist, and it tried generating it).

closes odoo/odoo#51858

Forward-port-of: #51340
Forward-port-of: #50744
Signed-off-by: Laurent Smet <smetl@users.noreply.github.com>
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
2020-05-28 11:43:30 +00:00
Lucas Lefèvre be7773353e [FIX] sale_timesheet: Consider NULL as a False value
A NULL value in the database column is considered as
a False value for boolean fields in Odoo.
Hence the sql constraint should reflect this semantic.
Otherwise, the constraint might not be applicable when
installing the sale_timesheet module.

Task 2192763
2020-05-26 12:09:51 +02:00
Lucas Lefèvre a96e167169 [REF] sale_timesheet: Remove unused method
This compute method is not used by any field.
2020-05-26 12:09:51 +02:00
Lucas Lefèvre 0f01bb70fe [FIX] project: Allow sub-tasks configuration per project
Enabling sub tasks is done through the general settings
but it should be possible to disable/enable it on specific projects.
The current implementation does not allow that since the field
enabling the feature is a readonly, user dependent field.

Task 2192763
2020-05-26 12:09:51 +02:00
Martin Trigaux 4dbab5a70b [IMP] account: use singular description
The description of the model is used in sentences like
This <model> has been created from: <link>
All model descriptions should be singular

Courtesy of Erwin van der Ploeg for raising the issue

closes odoo/odoo#51837

X-original-commit: e0acef778272abb748dacfe4460b3536b3c30a82
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-05-26 07:34:17 +00:00
Martin Trigaux 6394c628fa [IMP] mail: make the template easier to translate
Don't try to save bytes, make longer sentences, easier to translate
instead of splitting it into small blocks of one word.

https://www.odoo.com/documentation/13.0/reference/translations.html#blocks

Courtesy of Erwin van der Ploeg for raising the issue

X-original-commit: 737ee6393cd99b0c41272f6cfa9a0acb68276744
2020-05-26 07:34:16 +00:00
Nicolas Martinelli 95bc27b1cb [FIX] point_of_sale: access to rounding
- Create a user with only Point of Sale / User rights
- Open a POS session

An AccessError is raised on `account.cash.rounding`.

We add he access right: the user should be able to read the cash
rounding configuration.

opw-2258719

closes odoo/odoo#51816

X-original-commit: 61915c33e4e0e7979d10dee01fa80a6511498f33
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-25 13:31:03 +00:00
Anh Thao Pham (pta) 12d77d271c [FIX] payment_stripe: fix "lower()" applied to bool with stripe payment
- Go to Website > Configuration > eCommerce > Payment Acquirers
- Activate Stripe
- Configure Stripe
- Go to Sales
- Create a quotation
- Send quotation by email
- Click on "Customer Preview" smart button
- On Website, click on "Sign & Pay" or "Pay Now" if already signed
- Sign it and confirm on "Accept & Sign"
- On payment wizard, select "Credit Card (powered by Stripe)"
- Validate with "Pay & Confirm" button
An error message appears.

opw-2262990

closes odoo/odoo#51815

X-original-commit: 3c5117eaac96604a3306c90480d106e0e36fed2f
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-25 13:24:11 +00:00
Christophe Simonis 97d439ae9c [FIX] purchase: use fully qualified column named to avoid ambiguities
closes odoo/odoo#51819

X-original-commit: c79dc7b24c5892c714ccb78cec808edbe0574ce6
Signed-off-by: Christophe Simonis <chs@odoo.com>
2020-05-25 13:55:21 +00:00
Yannick Tivisse 12b526432f [IMP] hr: Display chat icons on employee kanban/form views
Purpose
=======

On the Employees App, we dont have a smart way to start a discuss
with a colleague or an employee.

Specification
=============

Style for each button :
- use fa-comments
- use primary color/action color (green)

On private/public employees form/kanban views, add a button to
start a chat with the user

closes odoo/odoo#51484

Taskid: 2252207
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-05-25 14:50:19 +00:00
Jigar Vaghela 8b9d236777 [FIX] l10n_in_purchase: remove undefined method call
onchange_l10n_in_gst_treatment method is not define but call from here so traceback is occurred

closes odoo/odoo#51656

Signed-off-by: Josse Colpaert <jco@openerp.com>
2020-05-22 05:32:21 +00:00
Xavier Morel 7a7b5b5d9d [FIX] core: searching through o2m with auto_join
Replaces the auto_join scheme which is pretty fast but doesn't quite
work (it's *completely* broken for read_group) by a subquery which is
slower but has the same semantics as the ORM version.

Ideally we'd use `EXISTS (select 1 from ...)` but that has no support
inside the SQL compiler right now, so use `id in (select inverse_field
from ...)`.

Here are some measures of a `read_group` on a simple object with lines
filtered on line values, similar to

    read_group([('order_line.product_uom', '=', xxx)],
               fields=['total_amount'], groupby=['user_id'])

    +-------+-------+-------+--------+
    |       |   ORM |  join |subquery|
    +-------+-------+-------+--------+
    | large |   160 |    10 |     20 |
    +-------+-------+-------+--------+
    |  many | 36000 |    50 |    180 |
    +-------+-------+-------+--------+

* values of data fields (filtering, grouping and aggregating) randomly
picked between 10 different values
* "large" is 1000 objects with 1000~15000 lines each
* "many" is 1000000 objects with 1~40 lines each

closes odoo/odoo#48494

Signed-off-by: Raphael Collet (rco) <rco@openerp.com>
2020-05-20 12:51:43 +00:00
Raphael Collet e950c395b7 [IMP] test_read_group: read_group with one2many auto-joined fields 2020-05-20 12:44:38 +00:00
Romeo Fragomeli 2adaeb589b [FIX] web: deadlines are not visible in day/week calendar views
Due to commit odoo/odoo@0150141756
when the widget calendar is initialized with date type record for
date_start and without all_day mapping events aren't shown on day/week
views. This is because all day zone isn't visible when all_day mapping
is not set.

After this commit, we show the all day zone also when the date_start is
a date type.

Steps to reproduce:
* Go to Project App
* Select/Create a project
* Select/Add a task with a deadline
* Return to project
* Select calendar view
* Select week view (of the deadline) => BUG

closes odoo/odoo#51818

X-original-commit: 1d83f4184e1b82db4dd4db54d98e509432340996
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
Signed-off-by: rfr-odoo <rfr-odoo@users.noreply.github.com>
2020-05-25 13:54:55 +00:00
Goffin Simon e03a87ae08 [FIX] repair: Unable to end repair
Steps to reproduce the bug:

- Create a repair order RO for a product P1
- Create a part for a product P2 that needs a lot L
- Specify a source location for P2
- Process RO
- Click on 'END REPAIR'

Bug:

A UserError was raised saying: You need to supply a Lot/Serial number for product P2
even if a lot L was set to P2

opw:2251047

closes odoo/odoo#51797

X-original-commit: 1e3ed56332efd3f58ccd05f23c6af9cb23f1052f
Signed-off-by: Simon Goffin (sig) <sig@openerp.com>
2020-05-25 11:12:17 +00:00
Yannick Tivisse 45f3659305 [IMP] project,...: Improve list views with new widgets
Purpose
=======

Task 2195254 introduced many wonderful widgets to pimp the list view.
This task aims at implemeting them into the Services apps: project,
timesheets, helpdesk, expense, planning and field service.

Remaining days: https://drive.google.com/file/d/1o4Wn47445GxLqBkw-ifH9MgtFU_437xz/view
Avatar: https://drive.google.com/file/d/1yDwJWP0MZCUKZbqCa8hte1ziVTYRMMtb/view
Activities: https://drive.google.com/file/d/1e_rXH50eZq4zY2HOzw7_pfgiD39SoRIl/view
Field-specific decorations: https://drive.google.com/file/d/1WFnqJ-jkyDFftRHxWW4bgomoWrOpOuaY/view
More control on buttons

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

You will find below a list of which widgets to apply to which fields by
model. Some changes have to be done in the form/kanban views as well.

1) project.task

remaining days -> date_deadline -> list + kanban + form views
hide this field if is_closed is true
avatar -> user_id -> list view
activities -> 'next activity' field to be added -> list view
field-specific decorations
https://nimb.ws/ACewrY remove the current orange/red decorations we have
if planned_hours > 0, display the remaining_hours field in (list view):
red if progress is > 100%
orange if progress is between 80% and 100%
green if progress is <80%
display unit_amount in red if > 24:00 -> form view

2) rating.rating

display the rating in:
green = satisfied
orange = not_satisfied
red = highly_dissatisfied
list + form views

3) project.project

avatar -> user_id -> list + form views

4) account.analytic.line

avatar -> employee_id -> list view
display unit_amount in red if > 24:00 -> list + kanban + form view
https://nimb.ws/eIWa7E merge the timer and duration fields together

5) helpdesk.ticket

avatar
user_id -> list view
employee_id under timesheet_ids -> form view
remaining hours -> sla_deadline
activities -> 'next activity' field to be added -> list view
field specific decoration -> display unit_amount in red if > 24:00 -> form view

6) hr.expense

avatar -> employee_id -> list view
activities -> 'next activity' field to be added -> list view
badge -> state -> list view
draft = blue
reported = green
approved = green
done = green
refused = red
combine the unit_amount and the currency_id fields (see the total_amount field for reference) -> list view (idem for the expense_line_ids one2many on hr.expense.sheet)
display the total_amount in bold
move 'company_id' before 'amount'

7) hr.expense.sheet

avatar
employee_id -> list view
user_id -> list view
activities -> 'next activity' field to be added -> list view
badge -> state -> list view
draft = blue
submit = green
approve = green
post = green
done = green
cancel = red
display the total_amount in bold
move 'company_id' before 'amount'

8) planning.slot

avatar -> employee_id -> list view
decoration
display the allocated_percentage field in red if > 100% -> list + form view
display the forecast_hours field in red if > planned hours and if planned_hours > 0 -> form view
display the effective_hours field in red if > forecast_hours and if forecast_hours > 0 -> form view

9) misc

calendar.event -> avatar -> user_id -> form view
mail.activity.type -> combine the delay_count and delay_unit fields together -> list view
note.note -> 'next activity' field to be added -> list view
crm.lead.mining.request
combine the lead_number and lead_type fields together -> list view
display the name in bold
badge -> state
draft = blue
done = green
error = red
planning.slot.template -> display the duration field in red if it is = 0

closes odoo/odoo#51271

Taskid: 2248351
Related: odoo/enterprise#10605
Related: odoo/upgrade#1252
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-05-25 12:44:14 +00:00
Yannick Tivisse f27baf0c94 [FIX] crm: Fix singleton error 2020-05-25 12:44:14 +00:00
svs-odoo 46b70e8ef3 [IMP] purchase: hide date_planned if empty
Also, makes `date_planned` readonly when PO in "Purchase Order" state.

task-2181611

closes odoo/odoo#49835

Related: odoo/enterprise#10073
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2020-05-25 11:08:04 +00:00
svs-odoo 3e984aac75 [IMP] stock: log message instead of activity
When rescheduling a stock document, logs a note about the new scheduled
date instead of create a new planned activity.

task-2181611
2020-05-25 11:08:04 +00:00
svs-odoo 6b15eab7e1 [IMP] stock: don't auto. assign backorder
Before this commit, when a backorder is created, it was automatically
reserved. It is no more the case. Now user have to reserve it manually.

The reason is, when a user doesn't delivery all expected quantities, it
could be because there is no enough quantity in stock, or the user
doesn't want to delivery all. In these cases, it doesn't make sense to
reserved it directly.

task-2181611
2020-05-25 11:08:04 +00:00
svs-odoo 6501713d9a [IMP] maintenance,mrp,repair,sale: text changes
task-2181611
2020-05-25 11:08:04 +00:00
svs-odoo 4b588cf9f2 [IMP] stock: domain on orderpoint product_id
When user creates a new order point, if he/she comes from a template or
variant product page, adds the product id or the product template id in
the `product_id` field domain in the `stock.warehouse.orderpoint` model.

task-2181611
2020-05-25 11:08:04 +00:00
Thanh Dodeur 681306d4e7 [FIX] web: add access group to the pdf js template.
This commit adds the `base.group_user` access group to the `pdf_js_lib`
template so it can be lazy loaded in the JS.

closes odoo/odoo#51804

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2020-05-25 12:14:57 +00:00
Arnold Moyaux c71bf6991f [FIX] stock: remove useless today in replenish popover
The virtual record have their date and forecast at date recompute
after creation. It means that the popover saying today is False since
it took the date with lead days.

closes odoo/odoo#51507

Signed-off-by: Arnold Moyaux <amoyaux@users.noreply.github.com>
2020-05-19 08:01:53 +00:00
Xavier Morel 6b2dfcc8b0 [IMP] core: batching during import
By default importing is batched (or at least attempted to), however
because the import is functionally sequential it's possible for a
record to refer to a previously imported record of the same batch.

When records are referenced by xid this is easy, we can just keep
track of all the xids we *should* have created so far and when trying
to look up a xid if it's one of those flush all pending
creations (otherwise assume it's some other unrelated xid which
already exists in the system).

For "name_search" lookups however this is more complicated, so we'd
just flush the entire thing.

This, then, is an issue when importing records with an m2o which
is *generally* looked up by "name" rather than xid e.g. when importing
partners it's more likely the "state" will be specified by
name (e.g. AZ or Arizona) than xid (base.state_us_3 lol), because it
means more or less every line will be flushed, defeating all batching
and slowing down the import.

To fix this, allow passing *model names* to flush (not just xids), and
try to collate all the models we could be creating (or updating)
records for in the process of importing. If we see a name_search on
one of these models flush, otherwise don't because we couldn't have
impacted the search.

Task 1951307

While at it, f2a1618758 removed all
usage of model_load_save, but left the creation of the savepoint
itself.

The InternalError check should be left in place to catch things like
conversion issues which put the tnx in an invalid state (only invalid
states should trigger an InternalError according to psycopg's errors
documentation).

closes odoo/odoo#49289

Signed-off-by: Xavier Morel (xmo) <xmo@odoo.com>
2020-05-28 11:40:35 +00:00
lejeune quentin ff23dec4be [FIX] hw_drivers: Fix renewal of certificate for IoT Box
There is a CRON task to check the validity of the daily certificate.
However this is not executed correctly because the command line is incorrect.

This commit fixes this command line

closes odoo/odoo#52057

X-original-commit: 19a9859985a4576943dad1312b1808c6c3690645
Signed-off-by: Quentin Lejeune (qle) <qle@odoo.com>
2020-05-28 09:10:11 +00:00
Josse Colpaert a03719f012 [FIX] l10n_id_efaktur: fw-port
We forgot to update the type to move_type,
tag_ids to tax_tag_ids and remove the country_code
as we put it in the account module.

closes odoo/odoo#52052

X-original-commit: 437c2457c73d66a9f7b82397e4dd95d41da4a72a
Signed-off-by: oco-odoo <oco-odoo@users.noreply.github.com>
Signed-off-by: Josse Colpaert <jco@openerp.com>
2020-05-28 08:51:10 +00:00
Andrea Grazioso (agr-odoo) 75c624e211 [FIX] account: disable Amount Matching when invisible
Go to Reconciliation Models > Invoices Matching Rule
Set the parameter 'Amount Matching'
Set 'Partner Is Set & Matches'
Save
Edit
Unset 'Partner Is Set & Matches'

'Amount Matching' will switch to invisible but is not disabled

opw-2261134

closes odoo/odoo#52048

X-original-commit: 61f1ca63e5dc27e06c855bb09b18bf4897e8ab1f
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-28 08:22:38 +00:00
Yannick Tivisse b6235bb93e [FIX] project: Open tasks when clicking on kanban record
Purpose
=======

Reintroduce the horrible bidouille that was removed by mistake.

closes odoo/odoo#52041

Note: Should be cleaned though.
Taskid: 2266510
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-05-28 07:58:08 +00:00
Rémy Voet (ryv) 8414e6b9fd [IMP] stock: handle multi-warehouse with the same logic of multi-company
Activate the multi-warehouse automatically when there is more than 1 in
a company. Then remove the multi-warehouse setting in the config, and
allow to create warehouse. Because create a warehouse can change
groups of the user, we reload the page when there is any modification.
Update warehouse demo data accordingly (remove the second warehouse
of the second company).

task-2196687

closes odoo/odoo#49625

Related: odoo/upgrade#1253
Related: odoo/enterprise#9934
Signed-off-by: Simon Lejeune (sle) <sle@openerp.com>
2020-05-25 08:50:02 +00:00
Rémy Voet (ryv) 82ca6b92c8 [IMP] stock_barcode_picking_batch: improve barcode usuability
Add the name in a barcode form into the printed
batch transfer to use the enterprise feature. The
barcode is now in the printed batch transfer and
there is a new print action in the batch transfer model.

task-2196687
2020-05-25 08:48:15 +00:00
Rémy Voet (ryv) 54cbedeaf7 [IMP] mrp: convert note field of operation into text work instruction.
The field note of mrp.routing.workcenter was not very usefull, and not
appear in the workorder related to this operation. Sometime, we need to
have a small description of the work to do for a opeartion in the WO,
instead of a complet pdf or google slide.
-> Convert the note field as a description of the job to do and add a
"text" worksheet_type to select it, in the mrp.routing.workcenter and
add the related field in the WO. Update the view of accordingly.
-> (migration): The 'note' content remain the same, then migration is
not needed. If the user change the worksheet_type into text, the
"note" will be the previous "description".

task-2196687
2020-05-25 08:48:11 +00:00
Rémy Voet (ryv) 4890a9fdab [IMP] stock,mrp(_account): do small usuability change
- Rename "Master Data" menu into "Products" in both stock and mrp.
And move not producte reclated menu to configuration menu.
- In the stock setting move all shipping connector in a dedicated
section.
- Improve helper of MO
- Merge filter "Late" and Planning Issue
- Remove badge of duration field in WO.

task-2196687
2020-05-25 08:47:23 +00:00
qsm-odoo e3693c4b9c [REM] theme_bootswatch: remove the theme entirely
Since 12.0, the theme was still supported but did not receive any of the
new features, like choosing its own colors.

This commit removes the theme entirely so that all users use the new
shiny features and also because it will become impossible to support
with the new color system.

task-2207192

closes odoo/odoo#51508

Related: odoo/design-themes#279
Related: odoo/upgrade#1225
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-27 17:05:29 +00:00
Nasreddin (bon) 2de51f899f [FIX] mrp: duplicate bom lines in mobile
Issue

	Step to do on mobile or chrome debugger in mobile mode
	- Install "Manufacturing" app
	- Go to "Manufacturing"
	- Click on "Create"
	- Select a product with already default bom lines
	- Alter quantity

	BOM lines are duplicated.

Cause

	Missing "bom_line_id" field in kanban view,
	who is required for onchange "_onchange_move_raw".

Solution

	Create inherited kanban view with "bom_line_id" in
	mrp module.

opw-2257732

closes odoo/odoo#52002

X-original-commit: 2905d05fc3d30562c5e7510217a6e97e26e87a37
Signed-off-by: Nicolas Martinelli (nim) <nim@odoo.com>
2020-05-27 14:28:27 +00:00
Yannick Tivisse f1e2fde734 [IMP] hr: Improve settings layout
closes odoo/odoo#51334

Taskid: 2241726
Related: odoo/upgrade#1202
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-05-26 07:13:59 +00:00
Odoo's Mergebot 41bf013e04 [MERGE] base: make ir.property private
Only system users can access ir.property records.

This PR is part of the long-term task id 8203 that plans to remove all access to
 ir.* models

"Official" methods to interact with `ir.property`:
- `_set_default(name, model, value, company=False)`
- `_set_multi(name, model, values, default_value=None)`
- `_get(name, model, res_id=False)`
- `_get_multi(name, model, ids)`

Done in this PR:
- remove ACL on ir.property (only system users can access directly)
- make all getter/setters private with sudo
- use these methods everywhere instead of CRUD calls
- add sudo where needed

closes odoo/odoo#51658

Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2020-05-28 07:13:56 +02:00
Denis Ledoux 7b8d12e6dc "[REVERT] website_theme_install: do not mark theme views as arch_updated when loaded from data files"
This reverts commit fdd4a143f2148ec5f4aeea80fecd3138fea95dc6.

See discussion in #51969

closes odoo/odoo#52028

X-original-commit: 0e602cc0ac295621864b50509f78bd5de1e61718
Signed-off-by: Denis Ledoux (dle) <dle@odoo.com>
2020-05-27 19:59:30 +00:00
Anh Thao Pham (pta) aca52baee3 [FIX] web_editor: fix focus for some tools in Summernote
- Go to Project
- Open a project to display Tasks
- Switch to list view
- Click on create button
- On task form page, click nowhere. (It is important to not click on anything)
- On the taskbar of the WYSIWYG editor used for Description, click on one of the following actions:
    * Unordered list
    * Ordered list
    * Checklist
    * Table
    * Style
- The action will be applied to the "name" field (Task Title) and
  an error will prompt for Unordered list, Ordered list and Checklist actions
- If not, discard the form and retry by opening the form with create button

In this case, the WYSIWYG editor does not have the focus and try to execute
the tool action on the current focused element.

opw-2256835

closes odoo/odoo#52023

X-original-commit: eaa55ce3e806ad0d9609394309ff9d48b32bb73f
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2020-05-27 18:13:00 +00:00
Nicolas Lempereur 9d40ec7d15 [FIX] web: resquencing stop at first controller
When a resequencing is done inside an object hierarchy of two
controllers, since 9b90d8727d we would call resquencing code one time
per controller.

So if for example we are in a list view inside a form view (eg. a
"Search More" modal in a form view) the resequencing would work for the
list view, but then cause traceback when it is handled by form view.

With this changeset, the first controller that get the event
`resequence_records` even gobbles it up.

Without change, added test fails because of original traceback:

  Cannot read property 'res_id' of undefined@ 202 ms
  Source:
   TypeError: Cannot read property 'res_id' of undefined
    at /web/static/src/js/views/basic/basic_controller.js:744:67
   ...

opw-2256818
closes #51827

closes odoo/odoo#52018

X-original-commit: eef4b99fdb9469c040af80d055933eda367b7b3d
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
2020-05-27 16:56:19 +00:00
SEINLET Nicolas ba20e42cc3 [FIX] sale_timesheet: ensure proper view inheritance
inherit the view which contains the items you're relying on.

closes odoo/odoo#52017

X-original-commit: 03dacc25ef46718a00fa7a1e0440813132600bfe
Signed-off-by: Christophe Simonis <chs@odoo.com>
2020-05-27 16:32:17 +00:00
Yannick Tivisse edad9aacd6 [FIX] calendar: Fix traceback when calling change_attendee_status
Coming from the calendar refactoring at
https://github.com/odoo/odoo/commit/39aef65f37a8ae969527b31a680eb27fddbc5710

closes odoo/odoo#52005

Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2020-05-27 14:34:55 +00:00
qsm-odoo b76af0758e [FIX] website: remove footer top border
The footer of Odoo is composed of 3 main elements: a <footer/> with a
.oe_structure and the footer copyright inside. The footer had a
transparent top border which was there for technical reason: making sure
the .oe_structure content was "1px" below the end-of-page content so
that dropping a snippet at the end of page but also in the footer was
possible (otherwise the dropzones would be at the exact same position).

This border which was invisible at the time may now become visible in
more cases so we have to remove it. Another hacky solution is made to
replace the old one, while remembering the footer usability is being
reviewed anyway.

Related to task-2197038

closes odoo/odoo#51997

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2020-05-27 14:07:06 +00:00
Olivier Dony 9a0d951ccc [ADD] server: allow env variable to control HTTP socket timeout
As indicated in the comment, it's much preferred to perform response
buffering at the reverse proxy level than to increase the socket
timeout. It will free up HTTP workers for other requests faster, while
the proxy does the work of buffering the stream on disk as needed.

/!\ The timeout is also used to protect from accidental DoS effects
in situations of low worker availability, due to idle connections
caused e.g. by wkhtmltopdf's connection pooling.
Setting a high timeout will make the protection less effective, so
ensuring you have enough free HTTP workers at all times becomes critical.

In our tests with nginx's defaut buffering on a typical hardware with
SSD storage, buffering up to 1GB responses did not require any change
of the socket timeout on the Odoo side, though your mileage may vary.
See also nginx's `proxy_buffering` and `proxy_max_temp_file_size` config
directives.

OPW-2247730
See also: #20158

closes odoo/odoo#51982

X-original-commit: d78ea126b8d2a72ae626880b0ec64bb7a39a07ac
Signed-off-by: Olivier Dony (odo) <odo@openerp.com>
2020-05-27 12:38:43 +00:00
Odoo's Mergebot c90a1ae353 [MERGE][IMP] mail_bot: improve OdooBot workflow
PURPOSE

This merge attempts to improve the workflow of the OdooBot onboarding
tutorial, as well as the answer given by the bot while idle.

SPECIFICATIONS

These changes come from watching how users interact with OdooBot. To
improve the user's experience, the following changes have been made:

1. Move the attachment to the end of the tour, as it is where most
   people just close the bot.
2. Remove the quotation marks around commands that OdooBot tells the
   user to type, like "/" or ":)", as some users try to actually type
   the quotation marks too. Instead, use a light grey background around
   the command that the user should type.
3. Some users ask OdooBot questions, but the responses they get are
   useless. To solve this, use a message linking to the documentation or the
   videos when:
    - The user gives wrong answers twice for the same stage of the tour
    - The user talks again when the tour is completed
    - There's a question mark in the answer

Other issues have been attended to:
1. The first message from OdooBot when starting the onboarding tour will now only appear as a notification instead of opening a new chat window. The user can open the chat window from the notification when they actually want to start the tour, as it can be otherwise distracting for the user to have the chat window pop up all of a sudden.
2. A bug has been corrected where OdooBot would open a new channel every time the admin user logged in, to remind them about changing the default password. Now, it will use an existing channel if it exists.

Task ID: 2233014
Upgrade PR odoo/upgrade#1251

closes odoo/odoo#49661

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2020-05-27 16:55:00 +02:00
Thibault Delavallée 2598061be8 [IMP] mail_bot: remove required on odoobot_state
Purpose is to avoid having strong requirements on fields where it is not
really necessary. In this commit we consider now that a void odoobot_state
is the same as ``not_initialized`` key. It allows to remove both the default
and required parameters on the field.

Task ID 2233014
PR #49661
2020-05-27 12:48:21 +00:00
dmonzonis 936d206559 [IMP] mail_bot: improve OdooBot workflow
This commit attempts to improve the workflow of the OdooBot onboarding
tutorial, as well as the answer given by the bot while idle.

These changes come from watching how users interact with OdooBot. To
improve the user's experience, the following changes have been made:

1. Move the attachment to the end of the tour, as it is where most
   people just close the bot.
2. Remove the quotation marks around commands that OdooBot tells the
   user to type, like "/" or ":)", as some users try to actually type
   the quotation marks too. Instead, use a light grey background around
   the command that the user should type.
3. Some users ask OdooBot questions, but the responses they get are
   useless. To solve this, use a message linking to the documentation or the
   videos when:
    - The user gives wrong answers twice for the same stage of the tour
    - The user talks again when the tour is completed
    - There's a question mark in the answer

To achieve this a "failed" state field is added on user model, allowing to
distinguish state in the bot workflow from state of answers (failed / not
failed).

Task ID: 2233014
PR #49661
2020-05-27 12:47:16 +00:00