Commit Graph
162594 Commits
Author SHA1 Message Date
clesgow d331fa21e4 [FIX] purchase_requisition: Add missing data on report
On the Blanket Order PDF (as well as other purchase agreements), the
vendor isn't specified on the report while it is a required and
significative field on the purchase agreement.
Added it like in the purchase order PDF.

Also added in the Custom Description field into the PDF as it may
contain useful information as well.

Task-3358385

closes odoo/odoo#126561

X-original-commit: 926c6b4aa34c7df46de3121c97742caccbc39be2
Signed-off-by: Arnold Moyaux (arm) <arm@odoo.com>
Signed-off-by: Quentin Wolfs (quwo) <quwo@odoo.com>
2023-06-28 17:41:53 +02:00
tsm-odoo a4b6e2db7d [IMP] im_livechat: improve livechat channel form view
This PR improves the livechat channel form view:
- managers can remove operators from channel
- operator online name is displayed

part of task-3332872

closes odoo/odoo#125774

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2023-06-28 17:41:45 +02:00
dane@odoo.com fc66f54ed4 [IMP] website_forum: multi forum pending
This change introduces ability for users (who don't have enough karma)
to create one pending post per forum.
Previously users could only do it in all of forums.

ticket-3354435

closes odoo/odoo#124112

Related: odoo/upgrade#4841
Signed-off-by: Stéphane Debauche (std) <std@odoo.com>
2023-06-28 17:41:35 +02:00
Rémy Voet (ryv) c5cb357d90 [IMP] *: add dependencies to display_name field
The previous commit introduced an optimization to reduce the number of
queries and fields fetched when we call `name_search`. But it works much
better when the dependencies of `display_name` contain field names used
in the calculation (on the same record/model).

Then, to improve the performance and the cache coherency, add `depends`
and `depends_context` depending on the custom `_compute_display_name`.
Add only the first level of dependencies (never traverse relational
field) because only these have a positive impact on the previous
optimization and the cost is very low (see `modified`).
About `depends_context`, we don't include `lang` because (when `_` is
used by example) it is unlikely to get the same display_name in the same
request with two different lang.

closes odoo/odoo#122085

Related: odoo/documentation#4639
Related: odoo/enterprise#42599
Related: odoo/upgrade#4780
Signed-off-by: Raphael Collet <rco@odoo.com>
2023-06-28 17:41:19 +02:00
Rémy Voet (ryv) daf7ca521d [IMP] core: fetch display_name during name_search
The `name_search` makes at least 2 SQL requests, one to find the records
and one to read fields needed to compute the `display_name`. With the
default `_compute_display_name`, it only needs to fetch the `_rec_name`
field (if there is one), but the ORM perfetch field mechanism will also
fetch every prefetchable field (see `_fetch_field`).

Then, to avoid running two queries and fetching too many fields, we add
the dependency fields (with `_determine_fields_to_fetch`) to the select
clause of the `Query` returned by `_name_search`.

Part-of: odoo/odoo#122085
2023-06-28 17:41:19 +02:00
Rémy Voet (ryv) 3c62ca1eb9 [REM] core: remove name_get API
Rationale
=========

Since v8, the `display_name` field is present on all models. By default,
`display_name` uses `name_get` which has pretty much the same purpose
(return record name used by the web client). Gradually, many (backend)
developers (and the ORM: https://github.com/odoo/odoo/commit/6da1c3ac4c036eac289597602976538e243cb939)
started using `display_name` (more convenient than
`record.name_get()[0][1]`) but it still had the `name_get` override.
It becomes more complex than necessary and poeple start to misunderstand
the two (and sometimes override both, leading to inconstiencies between
`display_name`/`name_get`).

To simplify the ORM and the API, we decided to keep only one of them,
the `display_name` field:
- It is much more convenient from a backend point of view
(`record.name_get()[0][1]` vs `record.display_name`)
- It is cached during the same transaction (and invalidated if
its dependencies change)
- It can be overridden like any other compute field (override
`_compute_display_name` with any extra dependencies)
- `name_get` is replaced by `read(['display_name'])`
(API perceptive), which can actually be more efficient
(if `display_name`'s depends are correct, the ORM will only fetch the
fields it needs instead of every prefetchable field)

Changes
=======

- Deprecates `name_get` for the v17 and based the method on
`display_name` (the opposite of before)
- Converts all usage of `name_get`
- Overrides of `name_get` are now overrides of `_compute_display_name`
- For `res.partner`, rename the field store `display_name` into
`complete_name` because `display_name` context-dependent and it makes
no sense to have a compute store that is context-dependent.
- Previously, it was possible to return multiple names for the same
record with `name_get`, but it was tricky and most of the usage of
this `name_get` didn't take this into account. The only example of
this is the `name_get` of `product.product`
(now use `", ".join(<names>)`).

Part-of: odoo/odoo#122085
2023-06-28 17:41:19 +02:00
std-odoo 067f9255a6 [IMP] web: make the close props of FileViewer not required
Purpose
=======
In the documents modules, we don't need to give the close props,
and so instead of giving a dummy method, we make it non-required here.

Task-3290796

closes odoo/odoo#126633

Related: odoo/enterprise#40441
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
2023-06-28 17:40:57 +02:00
Zelong Lin d32ba1a55e [FIX] mail: add users from self-chat
Before this commit, when opening self-chat and trying to add users,
self id was duplicated with the chat partner id, leading to a crash.

This commit fixes the issue by removing duplicates in inviting users,
so that there's no longer a crash when inviting users in self-chat.

task-3381895

closes odoo/odoo#126605

X-original-commit: d101a82b97989d5c60c1b6dfbc5fa2143680bd3c
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2023-06-28 16:17:04 +02:00
flvr-odoo 3db0d97a7e [FIX] tools : removing html comments
This commit fixes the malformed comment that would sometimes comment out
the rest of the html resulting in an improper display.

this is due to the new html5 notation --!> not behing understood by
our parser.

this commit replaces any --!> into -->.

this commit also remove  <!--> or <!--->

opw-2812488

closes odoo/odoo#126148

X-original-commit: 4fed0c36fedf271acc3520d8219763964753dabe
Signed-off-by: Vranckx Florian (flvr) <flvr@odoo.com>
2023-06-28 16:17:01 +02:00
tsm-odoo 9dd1bcd80e [IMP] im_livechat: improve session history tree view
This PR improves the livechat session history list view:
- Clicking on a session opens the channel in discuss if the
user is a member of it. Opens the form view otherwise.
- Display duration of the session (last message datetime - first
 message datetime)
- Display country of the visitor

part of task-3332872

closes odoo/odoo#125899

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2023-06-28 12:30:53 +02:00
snd f75779ba3d [IMP] stock: show lot properties on quants
Since stock.quant are directly related to their lot/serial, we want to be able to show the lot properties on the related quants.
We also want to be able to filter quants based on the properties of their lot/serial.

closes odoo/odoo#125197

Signed-off-by: Arnold Moyaux (arm) <arm@odoo.com>
2023-06-28 12:30:50 +02:00
Robin Lejeune (role) 52921dea19 [FIX] website: trigger visibility with prefilled form input
Form fields can be prefilled since [1] and their visibility
conditionally linked to other fields since [2].
1. This commit ensures prepopulated fields trigger the conditional
visibility mechanism (A), including when said field is first hidden,
then conditionally displayed (B).
2. Until [3], with a chain of visibility conditions, when one of them
was "contains", "does not contain" or a date-related condition, a
traceback was raised (C). This commit corrects the fix from [3] to
prevent this behavior now that the reason has been identified.
3. Tests are also set up to enforce these fixes.

Steps to reproduce (A):
- Drop a form
- Make field A depend on field B being set
- Have field B be autopopulated from user mail
- Save and check the form: A won't be shown despite B being set
- Removing one letter or typing anything in the input B will trigger
the visibility of A.
- Expected result: B should immediately appear.

Steps to reproduce (B):
- Drop a form
- Make field A depend on field B being set
- Have field B be autopopulated and depend on field C being set
- Field C is empty by default
- Save: only field C is shown. Type a letter: field B appears, but not
field A.
- Expected result: both should appear.
Note: this bug only occurs when field A is before field B.

Steps to reproduce (C) (until [3]):
- Drop a form
- Field A depends on B containing "abc"
- Field B depends on C being set
- Save and type something in C: there is a traceback.

task-3335536

[1]: https://github.com/odoo/odoo/commit/54873d2
[2]: https://github.com/odoo/odoo/commit/2dcbfec
[3]: https://github.com/odoo/odoo/commit/2714469

closes odoo/odoo#126634

X-original-commit: 074dbb6842de1092af2abe51e6da0433ff38a96e
Signed-off-by: Benoit Socias (bso) <bso@odoo.com>
2023-06-28 10:00:02 +02:00
Kevin Baptiste 7c7b31cc8b [FIX] hr_org_chart: refresh OrgChart on manager change
Setting or changing the manager of an employee would not refresh the
OrgChart.

task-3381781

closes odoo/odoo#126617

X-original-commit: cbd5feed298efece8809d13434409e50326bd79b
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2023-06-28 09:59:59 +02:00
niyasraphy ff26181018 [IMP] stock: removal strategy fields translatable
before this commit, name and method field in the
product.removal model is not translatable and
thus always display values in english

after this commit, the field will be translatable
and values will be shown based on the user
language

closes odoo/odoo#126610

Signed-off-by: Tiffany Chang <tic@odoo.com>
2023-06-28 09:59:57 +02:00
Mohit Beniwal 7e84ec87b1 [FIX] base: prevent error while uploading record of type properties
This error occurs when user import records having value in 'properties' column
which is of datatype, 'properties' and while trying to get attribute from
getattr to get value of converter it is getting default value None. That's why
this error is produced, 'NoneType' object is not callable.

Steps to reproduce:
1) Install 'CRM' module.
2) Open 'CRM' module and in it click on 'List' view.
3) Open any record and add value for field 'Add a property'.
4) Export that records.
5) Now click on 'Favourites' > 'Import records'.
6) Now click on 'UPLOAD FILE' button > upload that exported file.
7) Now click on 'TEST' button, error will be generated.

By applying this, user will be able to import record of datatype
'properties'.

Sentry-4128524668

closes odoo/odoo#126609

X-original-commit: b80d4294a000e748677a3a0c1849140bf46ddbe8
Signed-off-by: Rémy Voet (ryv) <ryv@odoo.com>
2023-06-28 09:59:54 +02:00
Jurgen (jugj) e37420fca3 [IMP] hr_recruitment : Hide create employee on applicant if not hired stage
task-3372999

closes odoo/odoo#126608

X-original-commit: 934a307f30e4bfa82245ce071700f465f536554a
Related: odoo/enterprise#43254
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2023-06-28 09:59:49 +02:00
Didier (did) 15609a9761 [FIX] mail: text-break activity description
Before this PR, long text in the activity description could create a horizontal scrollbar in the chatter.

Task-2721466

closes odoo/odoo#126607

X-original-commit: 0d087cd335bff3dcc04d54889f87f7b143e42b67
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Signed-off-by: Didier Debondt (did) <did@odoo.com>
2023-06-28 09:59:46 +02:00
Moens Alexandre 5bdc37bb8f [FIX] l10n_sa_edi : neutralize
closes odoo/odoo#126595

X-original-commit: 16990ef7b871b923ec81b30a51b17979b961e213
Signed-off-by: Josse Colpaert <jco@odoo.com>
Signed-off-by: Alexandre Moens (mao) <mao@odoo.com>
2023-06-28 09:59:44 +02:00
Hubert Van de Walle (huvw) 954b106757 [FIX] purchase: valid autocomplete for purchase.bill.union
Steps to reproduce
==================

- Go to Accounting > Vendor Bills
- Create a new record
- Click on the Auto-Complete field > Search more
- In the search bar, search for a reference

-> str is not a function

Cause of the issue
==================

The search filter is declared as such:
```xml
<
  field name="name"
  string="Reference"
  filter_domain="['|', ('name','ilike',self), ('reference','=like',str(self)+'%')]"
/>
```

This domain is evaluated in javascript by basic python interpreter.

Going from 15 to 16, it has been rewritten. The str function isn't
present anymore in `py_builtin.js`.

Solution
========

Since this is the last remaining usage of this function and `self` is
already a string, we can simply replace `str(self)` by `self`

opw-3383708

closes odoo/odoo#126593

X-original-commit: 4485d1ca6d1dfe33f4fca6d2cc140296ce4058a5
Signed-off-by: Hubert Van De Walle <huvw@odoo.com>
2023-06-28 09:59:41 +02:00
pedrambiria ae37ccc4bb [FIX] l10n_fr_pos_cert: keep behind close popup
Before this commit, if a session be open more than one day, it's won't
be possible to close the session with a cash difference. The problem
is that when the `ConfirmPopup` be added to the popup the
`ClosePosPopup` will be destroyed, and by confirming the "Payments
Difference" popup you will get this error:
```
Error: Component is destroyed
    at ORM.call (.../web/assets/debug/point_of_sale.pos_assets_backend.js:17590:35) (/web/static/src/core/utils/hooks.js:174)
    at ClosePosPopup.closeSession (.../web/assets/debug/point_of_sale.assets.js:9443:49) (/point_of_sale/static/src/js/Popups/ClosePosPopup.js:124)
    at ClosePosPopup.confirm (.../web/assets/debug/point_of_sale.assets.js:9363:22) (/point_of_sale/static/src/js/Popups/ClosePosPopup.js:44)
```

The solution is to use `keepBehind: true` to prevent closing the close
popup. I tested in other versions and it wasn't an issue in
previous versions.

opw-3368772

closes odoo/odoo#126606

X-original-commit: 8484d3f1a25033bd91414f0ce61f7192874b0bc0
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Signed-off-by: Pedram Bi Ria (pebr) <pebr@odoo.com>
2023-06-28 08:44:58 +02:00
Matheus Leal Viana (malv) 21c4015a77 [FIX] web: ensure every progress bar has space in kanban
The issue happens when we have a really small percentage of tasks with a certain state and it’s very difficult to filter them clicking on the respective color in the progress bar. To fix this issue there was defined a minimum of 5% for each color and make sure that in the end the sum of values is exactly 100%.

To solve this issue, it was necessary to set a minimum of 5% for the width for every non-empty bar, also it was defined a max-width of 100 - (# non-empty bars -1)*5 % because we also have to ensure the sum of 100% at the end.

How to reproduce:
1. Go to Project -> tasks -> create a huge number of tasks in the same project (you can do it using interactive shell)
2. Change one of these tasks to another state (eg: done)

OPW - 3299363

closes odoo/odoo#126569

X-original-commit: bb533d8431d9adeb57539f7730649eb933fec105
Signed-off-by: Matheus Leal Viana (malv) <malv@odoo.com>
Signed-off-by: Jorge Pinna Puissant (jpp) <jpp@odoo.com>
2023-06-27 20:24:39 +02:00
Sylvain LE GAL bddec1b2a4 [FIX] point_of_sale : prevent to unlink pos.order.line related to 'paid' / 'invoiced' order.
closes odoo/odoo#126558

X-original-commit: 52631ac88c1ec8f6f5fd6542d6b38a200f83372c
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
2023-06-27 17:33:07 +02:00
Jurgen (jugj) 94775db37e [IMP] hr_contract: Make redundant first_contract_date invisible from employee view
task-3337932

closes odoo/odoo#126548

X-original-commit: c76659467d40e0884e07d57328a80fb3a088a27f
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2023-06-27 17:33:05 +02:00
sofiagvaladze 3faad0a7a0 [IMP] hr_recruitment(_skills/_survey): grant interviewer more rights
Purpose: In order to increase visibility of the interviewer group,
it is moved from hidden group, to recruitment group.

Moreover, we grant the interviewer additional rights in order to manage
the application process properly and be able to execute following actions
• Send an interview
• Check interview results
• Add/delete/modify skills
• Create a meeting

In order to allow above mentioned actions on skills to the interviewer,
we grant them all the rights to the hr_applicant_skill.

In order to let the interviewer send the survey we grant them access to
the private addresses and now recruitment-interviewer implies
survey-officer group as well.

Additionally, for the security purposes, we make a change, so that
the survey officer is not able to read recruitment interview results
unless they are also an interviewer for a specific applicant.

task - 3179332

closes odoo/odoo#118897

Related: odoo/enterprise#40696
Related: odoo/upgrade#4624
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2023-06-27 17:33:02 +02:00
Mahdi Cheikh Rouhou (macr) 0ecc280e7e [FIX] website_slides : Adjust container to contain the full course name
When we have a long course name or we update the font size to something
big (24 px) for example the course name and the progress bar will overflow
outside its container.

Steps to reproduce the error :
1- go to one of the courses and update it's name to make it a bit long
2- click on one of it's content and got website preview
3- you can see that the progress bar is outside the container
4- if not : click edit -> theme -> change font size to 24 px
5- You can see now clearly that there is overflow from the container

The origin of the problem was because the container has fixed height
equals 80px

opw-3191888

closes odoo/odoo#126460

X-original-commit: 8184374450f8e2b775a29ff05b3128c24579bbba
Signed-off-by: Mahdi Cheikh Rouhou (macr) <macr@odoo.com>
2023-06-27 16:26:59 +02:00
vlst deb015a069 [FIX] pos*: Fix order removal
pos*: point_of_sale, pos_restaurant

When deleting an order, the restaurant override of the deletion function
in `point_of_sale` interferes with the logic in such a way that we end up
writing the order that needs to be deleted 2 times.

This is obviously not the expected bahaviour. In this PR we remove
the `override` from `pos_restaurant`, as it is no longer needed and
we also add a mechanism that ensures that orders cannot be duplicated.

closes odoo/odoo#126442

Task: 3383043
Signed-off-by: Adrien Guilliams (adgu) <adgu@odoo.com>
2023-06-27 16:26:56 +02:00
David Monnom (moda) 2222b6911e [IMP] pos_self_order: add bus notification for self order
Previously, when an order was paid for at the restaurant counter,
the self-orderer received no update that the order had
been paid for.

Now, if the customer self-order page is still open on their phone,
it will receive a notification via websocket that the order has been
paid for from the restaurant counter.The order will no longer be
editable.

In the event that they have already closed the self-order when paying
at the counter, the next time they return to this page. An RPC request
will be made with the access_token of the old order and the
states will be aligned.

closes odoo/odoo#125921

Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
2023-06-27 16:26:53 +02:00
tsm-odoo 3ed674645d [IMP] im_livechat: add last used date to mail shortcodes
This PR make add a last used date to the canned responses
in order to know whether they are still usefull or not.

part of task-3332872

closes odoo/odoo#125909

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2023-06-27 16:26:51 +02:00
vlst bfca1f4e8a [IMP] point_of_sale, pos*: reference env in models
pos*: pos_loyalty, pos_restaurant, pos_sale,
pos_adyen, pos_six, pos_stripe

At the moment, the `pos` models don't have access to the `env` variable.
This makes using `env` inside a model rather awkward.

This PR makes it so all the pos models have access directly to `env`.

closes odoo/odoo#124320

Task: 3358456
Related: odoo/enterprise#42209
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
2023-06-27 16:26:45 +02:00
Guillaume (gdi) 4c0840cac3 [FIX] website: use the domain on the form fields
For each form action, existing fields can be defined. These existing
fields are references to objects in the ORM. It is possible to put a
domain on the field in order to filter the elements you want. For
example, the "Create an opportunity" action has a "Salesperson" field
that refers to users. This field filters the external users of the
company in order to have only the internal users. Unfortunately,
although this domain is present, it was not taken into account when
displaying the values for the field. This commit fixes this problem and
takes into account the defined domain.

Steps to reproduce the bug fixed by this commit:
- Have the website_crm module installed
- Put a form on a page of the website
- Set the form action to "Create an Opportunity"
- Add a new field
- Set the field type to "Salesperson"

=> The list of users displayed contains external users of the company.

task-3095745

closes odoo/odoo#121903

Signed-off-by: Benoit Socias (bso) <bso@odoo.com>
2023-06-27 16:26:43 +02:00
Atul Patel 5c37a45bec [FIX] mrp: fix bom multi-company issue
on this case:
1. Reorderning rule with company 1
and related product and product template is shared mean
no company selected and related product template
contain multiple bom with different company.
so using this line
bom = (product.variant_bom_ids or product.bom_ids)[:1]
from this : `product.bom_ids` as product is inherits
by template, it's tried to read all the bom of different
company and different variant too for same template.
and that will raise multi-company issue.
so I think that should be same company as related
stock rules company.

see : https://github.com/odoo/odoo/commit/6825c440d54e38ebee13a5c184aec1a40586de0d

this was generated during upgrade database.

closes odoo/odoo#125571

X-original-commit: 4edab52bdba2bb53345506a3d83f42bfdccfcd8a
Signed-off-by: Arnold Moyaux (arm) <arm@odoo.com>
2023-06-27 15:00:31 +02:00
Benoit Socias 1ea5eaab8e [IMP] website: test unsplash beacon
This commit ensures that the unsplash beacon calls home when an unsplash
image appears on a page.

To achieve this it patches the RPC call when the test URL contains the
test name as parameter. The patch cancels the actual beacon call to
avoid polluting data during the test, but marks the image as having had
its beacon message sent. The test then simply checks if this marker
appears on the image.

task-3360109

closes odoo/odoo#126522

X-original-commit: 1b0f25130b461e7b531548363c680200c7363e7f
Signed-off-by: Outagant Mehdi (mou) <mou@odoo.com>
Signed-off-by: Benoit Socias (bso) <bso@odoo.com>
2023-06-27 13:44:33 +02:00
paso-odoo d2dc732fbc [FIX] mrp: create production location when type is not production
If the user change a location type of the 'Production' from inventory locations
and installs the 'MRP' module, the traceback will appear.

Steps to produce:
- Install Stock module.
- Inventory > Configuration > Settings > enable the Storage Locations.
- Inventory > Configuration > Locations > Remove the filter 'Internal'.
- Open the 'Production' location and change the Location Type to 'View'.
- Now install the 'Manufacturing' module.
Error: A traceback appears: 'ParseError: while parsing
/home/odoo/src/odoo/saas-16.2/addons/mrp/data/mrp_data.xml:17, somewhere inside'

At the time of installing the MRP module, it will search for the production
location using the location type as the production here - https://github.com/odoo/odoo/blob/f65a9bffe2cbc03b2efc969dc205c9ba01ee9ab5/addons/mrp/models/stock_warehouse.py#L65
If the production location is not found it will raise an userError. In this
commit, the production location is created based on the company if not found. It
will lead to the above traceback.

sentry-4215564628

closes odoo/odoo#126514

X-original-commit: e8ce51dd0b5024820eee6d5e60a3a3017a0e36f6
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Signed-off-by: Parth Solanki (paso) <paso@odoo.com>
2023-06-27 13:44:30 +02:00
Rmi Rahir (rar) 7b5f1df3d1 [FIX] spreadsheet: Fix bad serverData in js tests
The menus added in the server data which are used in mockServer did not
reflect a realistic menu configuration. This was brought to light when
trying to fix the addition of links to ir.ui.menu inside a spreadsheet.
See task 2821480

Related ENT pr: https://github.com/odoo/enterprise/pull/42885

closes odoo/odoo#126497

X-original-commit: 128475e8c29f8493b01710342179a5c468897c61
Related: odoo/enterprise#43209
Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
2023-06-27 13:44:25 +02:00
Mathieu Duckerts-Antoine be005408fb [FIX] web: search bar: background color for comparison facet label
The label of a facet with type "comparison" did not have any
background color. We set it to be the same as for the label of a facet
of type "groupBy".

closes odoo/odoo#126496

X-original-commit: b0527528ee73b503ffbfef491b2389018c119376
Signed-off-by: Michaël Mattiello (mcm) <mcm@odoo.com>
2023-06-27 13:44:23 +02:00
Mathieu Duckerts-Antoine 842aeacb56 [FIX] web: search bar: no button role for comparison facet label
The label of a facet of type "comparison" had the role "button" while
click on it has no effect. That role should be reserved for the label of
a facet that is associated with a domain (e.g. a facet of type "filter").

X-original-commit: 4c649abf491b32c218769b0bb1eba19881dedbb0
Part-of: odoo/odoo#126496
2023-06-27 13:44:22 +02:00
Tejas Modi 791445eedf [FIX] stock: restrict validate button in picking
Steps to reproduce:
===================
- Go to Quality -> Quality Control -> Quality Points.
- Create new Quality point, using `Receipt` operation, control per operation.
- Go to Inventory -> Operations -> Receipt -> New
- Add whatever product with a quantity.

Issue:
======
The validate button is displayed even when the quality checks are not done.

Added back the `show_validate` condition as this field's compute is overridden
in `quality_control` to also check whether there are still quality checks to
perform.

closes odoo/odoo#126385

Task: 3376811
X-original-commit: d52e146da2980e1c144aa7a9d6c8082bf6bf7adb
Signed-off-by: Arnold Moyaux (arm) <arm@odoo.com>
2023-06-27 13:44:19 +02:00
Guillaume (gdi) 2b688b37e7 [FIX] web: prevent traceback in edit mode with embedded video
Since [this other commit], initializing the color picker could trigger a
traceback. The traceback was due to the fact that for users to be able
to drag/move the color picker as they wished across different frames, we
needed access to the document of all the frames on the page.
Unfortunately, if one of these frames was not of the same origin, a
traceback was displayed. This commit corrects how we collect documents
from frames on the page, by only taking those whose document we have the
right to see (which do not raise a cross origin error). I didn't succeed
to reproduce the bug locally, but I got it on the runbot with theme
Nursery / Kiddo by dropping the block banner on the page, the error
appears because the block contains a vimeo video. In fact, you just need
to have embedded content (youtube / vimeo / ... video for example) start
edit mode, click on the block containing the video and the error is
displayed.

[this other commit]: https://github.com/odoo/odoo/commit/63bf363d302fe9f93a824fa6f1ff3bbe21f98088

runbot-22573

closes odoo/odoo#126447

X-original-commit: b22c1d942374014e0d50e5429c3f89cc1ca18173
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Signed-off-by: Guillaume Dieleman (gdi) <gdi@odoo.com>
2023-06-27 11:59:47 +02:00
Günter Bailey 4a8c40f30a [CLA] signature for Brawn1
closes odoo/odoo#126481

X-original-commit: 842f2292bab541b4b9af823b8f4cc13c9f44619b
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-06-27 10:42:56 +02:00
Mathieu Walravens 9163f98f0e [FIX] stock: prevent merging quants during import
Before this commit:
When importing `stock.quant` with two lines with the same product and
different counted quantities, only the last line is taken.

After this commit:
Each line creates a `stock.quant`, even if a similar Quant exists.
The records will be merged at a later time by `_merge_quants`.

Steps to reproduce:
1. Create a storable product
2. Go to Inventory > Operations > Inventory Adjustments
3. Create a file with two lines with the same product,
    and different counted quantities
5. Favourites > Import Records & upload the file

OPW-3340017

closes odoo/odoo#126480

X-original-commit: 45f7368222ead5df600992c66f0da56b3a7e959a
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Signed-off-by: Walravens Mathieu (wama) <wama@odoo.com>
2023-06-27 10:42:52 +02:00
Julien Van Roy ca4ba84d98 [FIX] mail: UTF-8 text/xml attachment and omitted charset
When parsing an email containing an xml attachment, the `email` python
module will decode the base64 attachment using the charset or ascii if
the charset is missing.

In some cases, the payload is in UTF-8 but the charset is omitted. This
results in replacement characters for the non ASCII characters.

The solution is to force the charset to UTF-8, since it is a superset of
ASCII that should not be a problem.

NB1: Omitting the charset for text/xml is not recommended. See the RFC
(section 6.4): https://www.ietf.org/rfc/rfc2376.txt

opw-3144519

closes odoo/odoo#126474

X-original-commit: e3a5b46c7b4f5030e165a6d943ec2275aea5d583
Signed-off-by: Julien Castiaux (juc) <juc@odoo.com>
Signed-off-by: Julien Van Roy (juvr) <juvr@odoo.com>
2023-06-27 10:42:49 +02:00
Julien Van Roy 8722db1991 [FIX] account_edi_ubl_cii: add italian EAS code for peppol Bis 3
Currently, it's not possible to check the 'Peppol Bis 3' option on the
journals of Italian companies, since Italy is not present in our mapping
`COUNTRY_EAS`.

The EAS for Italian companies may be the codice fiscal (code: 0210) or
the VAT number (code: 0211). See
https://peppol.agid.gov.it/en/news/expiration-validity-codes/

Use the VAT number by default, and add it in our mapping such that the
option now appears for Italian companies.

opw-3346572

closes odoo/odoo#126462

X-original-commit: 92784a0a230c7e93e3ed9fb215376cbbf5ba1362
Signed-off-by: Florian Gilbert (flg) <flg@odoo.com>
Signed-off-by: Julien Van Roy (juvr) <juvr@odoo.com>
2023-06-27 10:42:47 +02:00
clotheoryCTO ac583af06f [CLA] ClotheoryCTO CLA
closes odoo/odoo#126459

X-original-commit: 7cd967a2f5dec0c967322d23c286e5323f40641a
Signed-off-by: Martin Trigaux (mat) <mat@odoo.com>
2023-06-27 10:42:41 +02:00
akr 45797e7538 [I18N] Add translation files for l10n_sa_edi
Adding base translation files for l10n_sa_edi as well as arabic translation

closes odoo/odoo#125610

X-original-commit: 52e96a5ca8a051d8a1a57e1606b4b1b9e810ba7f
Signed-off-by: Josse Colpaert <jco@odoo.com>
2023-06-27 10:42:35 +02:00
dasz 12ebca8818 [IMP] hr_recruitment: improve workflow based on heavy usage from India
- kanban view progressbar based on status
- new first column 'New' with the welcome mail template
- create date column renamed to 'applied on' and moved to front

task 3346175

closes odoo/odoo#123293

Related: odoo/enterprise#42098
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2023-06-27 10:42:33 +02:00
althaf shaik 2fdefd0f21 [FIX] hr_attendance: restrict to compute worked hours without employee
This traceback raises when user not selected 'Employee' and only selecting
'Check In' and 'Check Out', while creating a new attendance.

To reproduce the issue:

1) Install hr_attendance
2) Open Attendance and create a new record
3) Give values to only 'Check In' and 'Check Out'

Error:  "AttributeError: 'bool' object has no attribute 'upper'" appears.

On '_compute_worked_hours' method calendar variable is getting value from
employee_id and that calendar timezone is used to get timezone.

https://github.com/odoo/odoo/blob/937d207028ab9bc1d3d332dc6dfe25f0de045026/addons/hr_attendance/models/hr_attendance.py#L50-L60

Therefore in the above use case, when triggering the compute method,
because of 'calendar' is depending on 'employee_id' and when
employee is not selected, it will leads to the above traceback.

Sentry-4274226351

closes odoo/odoo#126465

X-original-commit: 31491e40d2505c03d76e6c802435ad1dafa71c52
Signed-off-by: Kevin Baptiste <kba@odoo.com>
2023-06-27 09:29:30 +02:00
Florian(flg) 100b3b22c1 [FIX] l10n_latam_base/l10n_ar: fix vat field in partner view
Latams need more fields for VAT and Odoo Milk broke
how these fields are displayed.

opw-3382698

closes odoo/odoo#126461

X-original-commit: 960d47ccc9db2ae69836a5f1ed7bff163b051a42
Signed-off-by: Brice Bartoletti (bib) <bib@odoo.com>
Signed-off-by: Florian Gilbert (flg) <flg@odoo.com>
2023-06-27 08:24:11 +02:00
Lucas Lefèvre (lul) fa5bce0f8f [IMP] spreadsheet: update o_spreadsheet to latest version
### Contains the following commits:

https://github.com/odoo/o-spreadsheet/commit/3b0b6f16 [REL] 16.4.0-alpha.5
https://github.com/odoo/o-spreadsheet/commit/b90a1620 [FIX] Filters: fix filter id on sheet duplication Task: 3384840
https://github.com/odoo/o-spreadsheet/commit/d309d391 [REF] ot_tests: use TEST_COMMANDS for ot test files Task: 3383455
https://github.com/odoo/o-spreadsheet/commit/ed0141fd [FIX] sheet: duplicate sheet name problem when renaming
https://github.com/odoo/o-spreadsheet/commit/869050fc [FIX]  registries: inline non-shared registry actions
https://github.com/odoo/o-spreadsheet/commit/2c434b6e [IMP] functions: update XLOOKUP to return array Task: 3184778
https://github.com/odoo/o-spreadsheet/commit/214213eb [IMP] functions: add a bunch or array functions Task: 3184778
https://github.com/odoo/o-spreadsheet/commit/d74d48ae [FIX] autocomplete dropdown: mock functions for snapshot
https://github.com/odoo/o-spreadsheet/commit/3401c874 [FIX] toolbar: missing hover effect on font size editor Task: 3360143
https://github.com/odoo/o-spreadsheet/commit/f60f2ffe [IMP] composer: double click on range will select the whole range
https://github.com/odoo/o-spreadsheet/commit/187d4d2f [FIX] rendering: cache text width
https://github.com/odoo/o-spreadsheet/commit/c1f7d666 [FIX] clipboard: paste - onlyformat behaviour
https://github.com/odoo/o-spreadsheet/commit/9c0b8ff4 [FIX] clipboard: fix behaviour when selection is updated before the paste
https://github.com/odoo/o-spreadsheet/commit/534fc20a [FIX] Composer: Allow to unselect fully selected composer content
https://github.com/odoo/o-spreadsheet/commit/8e647aec [FIX] xlsx: space loss in XML when exporting hyperlink
https://github.com/odoo/o-spreadsheet/commit/8023bd0b [IMP] filter: select/clear all pre-filtered data
https://github.com/odoo/o-spreadsheet/commit/c4c1b165 [FIX] chart panel: title state in chart design panel
https://github.com/odoo/o-spreadsheet/commit/8ba67af4 [FIX] selection_input: add missing test
https://github.com/odoo/o-spreadsheet/commit/84d4eb47 [IMP] dependencies: update owl to 2.1.3
https://github.com/odoo/o-spreadsheet/commit/bb9192d9 [IMP] dependencies: update Typescript to 4.9
https://github.com/odoo/o-spreadsheet/commit/383ab479 [FIX] functions: translate argument description
https://github.com/odoo/o-spreadsheet/commit/4815a8b6 [FIX] filters: export xlsx of empty cells

closes odoo/odoo#126436

Related: odoo/enterprise#43200
Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
2023-06-27 00:31:30 +02:00
Josse Colpaert 53d41e7028 [FIX] account: we need to find back xml_id in existing accounts instead of browsing directly
Before, when instantiating the taxes for France in a Belgian
company through a French fiscal position (multi-vat),
a traceback would be shown because the cash based transition
account would not be retrieved in the correct way.

By checking the existing accounts (which
are created on the fly for multi-vat) instead of browsing the record
and also, by allowing no account at all, we avoid tracebacks and the
taxes get created.

closes odoo/odoo#126473

X-original-commit: 85f45e37c4ad9503dcc96c321d26504bce3de2c0
Signed-off-by: Brice Bartoletti (bib) <bib@odoo.com>
2023-06-26 23:23:06 +02:00
Julien Van Roy 7544af9436 [FIX] account_edi_ubl_cii: mistaken duplicated line of code
A line of code has been duplicated while fixing a failed forward port,
remove it.
(see: https://github.com/odoo/odoo/commit/7f93f72a4f874e7073c0fec8ab0a89ebbd13e029)

closes odoo/odoo#126471

X-original-commit: 2286ab2b21c38dc41e9d949c52efe2d153928cc8
Signed-off-by: William André (wan) <wan@odoo.com>
2023-06-26 23:23:04 +02:00