Commit Graph
165193 Commits
Author SHA1 Message Date
can-odoo 402bf48fb5 [FIX] website: remove ToC snippet on removing last content
The user has the option to remove the last block from the Table of
Content snippet prior to this commit, but doing so breaks the Add Item
feature because there is no reference to adding a new item in the
snippet area, and doing so is also not a good idea.

If the block is the final one in the Table of Content after this commit,
removing the last Content will remove the ToC snippet.

task-3081442

closes odoo/odoo#135733

X-original-commit: 164db4013439042725c94f1690ae0a311be9d554
Signed-off-by: Guillaume Dieleman (gdi) <gdi@odoo.com>
2023-09-17 14:37:09 +00:00
niyasraphy 31f0b21cda [IMP] core: remove wrongly added empty file
added in: https://github.com/odoo/odoo/commit/6cc1c435fd3bb9ed71c4a02796099c6e6f6b5d2b

closes odoo/odoo#135724

Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
2023-09-16 09:42:52 +00:00
Claire Bretton (clbr) c1996e335e [FIX] account: fix self.id.origin in get_last_sequence()
When trying to customize Swiss invoice report with QR-Bill
through Studio an error was thrown because it tries to _compute_name()
on a dummy 'account.move' record with self.id=0.

This is part of a more general task in master around report customization
but it make sense to backport the fix in all stable versions.

task-id:3492033

closes odoo/odoo#135722

X-original-commit: d95aae51a23ff163e959a1f3064f42a89cfaf516
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Signed-off-by: Claire Bretton (clbr) <clbr@odoo.com>
2023-09-15 20:34:33 +00:00
Thomas Lefebvre (thle) 6f77665383 [FIX] website_sale: modify template if fiscal position changes
Steps to reproduce:
-------------------
- Without going to the shop first, login with a user
   who triggers a different fiscal position and pricelist than the public user.
- In another browser tab (incognito or separate tab),
    go to the shop with the public user.
- Select the pricelist previously used
   by the user in the other session.

Issue:
------
We obtain the prices for the other user's fiscal position.

Cause:
------
When we login with a user who triggers a fiscal position mapping
and go to the `/shop` page, `products_prices`  will be frozen with values
calculated with the fiscal position (via `_get_sales_prices`).

If we change our fiscal position, but use a template that contains
the same `t-cache` key, we won't re-evaluate the template.

As a result, it is possible to obtain values calculated
for another fiscal position.

Solution:
---------
As the template values take into account the fiscal position,
we need to add a `t-cache` key to identify this fiscal position.

opw-3316153

closes odoo/odoo#135709

X-original-commit: 45d765c723a8e7bb05f1b79f6234559018660262
Signed-off-by: Thomas Lefebvre (thle) <thle@odoo.com>
2023-09-15 20:34:32 +00:00
dane@odoo.com 7a85ea2eeb [FIX] mass_mailing_themes: fix image path
The image from mass_mailing was moved to mass_mailing_themes
Therefore we should also update its path.

task-3328661

closes odoo/odoo#135692

X-original-commit: fc34e1049c2ad979df611f1aa4b57f66b8cdf5b1
Signed-off-by: Jérémy Hennecart (jeh) <jeh@odoo.com>
2023-09-15 20:34:30 +00:00
Robin Lejeune (role) e3b3bc2978 [FIX] website: fix animations in popups without backdrop
Since the scrollbar was moved from the window to .modal-content at [1],
animations inside popups without backdrops would not be working anymore
because the scroll was not checked against the right element.

This commit fixes this by using the right scroll element's scrollTop.

task-3328419

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

closes odoo/odoo#135404

X-original-commit: 1b618b323424e29b0ddf9eae686e0ef2540b3627
Signed-off-by: Outagant Mehdi (mou) <mou@odoo.com>
2023-09-15 20:34:29 +00:00
Valentin ChevalierandMathieu a9f9316b22 [IMP] website_sale: Show a toast notification when add to cart
This commit introduces an exciting new way to have visual feedback when
a customer adds a product to the cart.

Instead of an animated image moving toward the cart icon, a toast
notification that sums up the product(s) added to the cart is now shown.

Note that a minor change to `notificationService` has been made to allow
more customization. It is now possible to extend it while specifying a
custom `NotificationContainer`.

task-3492346

closes odoo/odoo#133990

Related: odoo/upgrade#5106
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
Co-authored-by: Mathieu (mano) <mano@odoo.com>
2023-09-15 20:34:28 +00:00
Valentin Chevalier 95bb1c906b [FIX] website_sale: improve the speed of /shop/cart/update_json
Before this commit, a lot of `/shop/cart/update_json` wrongly requested
to re-rendender cart templates.

Now, calls to `/shop/cart/update_json` will specify if they needs the
updated cart templates or not.

Part-of: odoo/odoo#133990
2023-09-15 20:34:28 +00:00
FrancoisGe d84e570630 [FIX] web: switching pages doesn't change pager limit
Before this commit, in form view, editing a record then switching page
incremented the pager limit by 1.

closes odoo/odoo#135659

Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2023-09-15 19:14:28 +00:00
Moises Lopez - https://www.vauxoo.com/ 3d3327d5f0 [IMP] point_of_sale: Speed-up queries filtering by 'pos_order.state'
The following method:
 - https://github.com/odoo/odoo/blob/2091994c/addons/pos_restaurant/models/pos_config.py#L40

Gets the following query:

    SELECT min("pos_order".id) AS id,
    count("pos_order".id) AS "table_id_count",
    "pos_order"."table_id" as "table_id"
    FROM "pos_order"
    LEFT JOIN "restaurant_table" AS "pos_order__table_id" ON (
        "pos_order"."table_id" = "pos_order__table_id"."id")
    WHERE (("pos_order"."state" = 'draft')
        AND ("pos_order"."table_id" in (TOO MANY IDS HERE)))  -- for this case 178 restaurant_table records ids
    GROUP BY  "pos_order"."table_id", "pos_order__table_id"."id"
    ORDER BY "pos_order__table_id"."id"

It spends 24ms without index

After creating index it spends 0.57

It is not the unique side filtering by pos_order.state column

Check the following lines of code:
 - https://github.com/odoo/odoo/blob/f5553c550/addons/point_of_sale/models/pos_order.py#L678
 - https://github.com/odoo/odoo/blob/f5553c550/addons/point_of_sale/models/pos_order.py#L690
 - https://github.com/odoo/odoo/blob/f5553c550/addons/website_sale_coupon/models/sale_order.py#L91

closes odoo/odoo#135636

X-original-commit: a658dfcd60032cfe01f2f019f4bf05e140d68339
Signed-off-by: Rémy Voet (ryv) <ryv@odoo.com>
2023-09-15 18:13:47 +00:00
Dylan Kiss (dyki) f31a0ea7a5 [IMP] account: add date options for tax periods
Currently the tax report always opens the previous month by default.
Since tax periods are not always months, it makes much more sense to
open the previous "tax period" (whatever length it has) when opening the
tax report.

In order to allow that, this commit introduces a "This Tax Period" and
"Previous Tax Period" option for reports and sets the default period
for the tax report to "Previous Tax Period". The rest of the
functionality is done in the related enterprise commit.

task-3481913

closes odoo/odoo#133715

Related: odoo/enterprise#46601
Signed-off-by: Olivier Colson (oco) <oco@odoo.com>
2023-09-15 16:45:52 +00:00
Julien Carion (juca) 1a44537095 [IMP] mail: avatar card preview v2
This commit changes the behavior of the avatar card preview so that it
is now triggered on click instead of on hover and the previous behavior
of the click event (open chat) is therefore removed. It also adds the
functionality to the Message and Activity components of discuss so that
clicking on the avatar inside these components will also show the card.
It also makes sure that the id of the user is added to the persona even
if nothing indicates that it should.

task-3442819

closes odoo/odoo#131355

Related: odoo/enterprise#47084
Signed-off-by: Francois Georis (fge) <fge@odoo.com>
2023-09-15 16:45:50 +00:00
Victor Piryns (pivi) 30650af183 [FIX] project: improve tags name_search robustness
Description:
The commit 05855b6bb6d8a22ceb1f8b25332a146eed912660 introduced a
fast-path for the name_search on tags from the form view of tasks.
But the implementation was too complex and wasn't handling correctly
all possible operators (it just had a fallback on the default
parent name_search implementation).
The aim is to simplify the code for better robustness and
maintainability long term.

Fix:
Convert the query to it's equivalent python code. It has a slight
performance regression than the previous implementation (we are
making 3 queries worse-case instead of 1), but the regression is
non-significant and not critical.

Affected versions:
16.0 up to master

Reference:
task-3503721

closes odoo/odoo#135631

X-original-commit: 9d95314aaca7c087d7159e3f603bcea99f69b217
Signed-off-by: Audric Onockx (auon) <auon@odoo.com>
Signed-off-by: Piryns Victor (pivi) <pivi@odoo.com>
2023-09-15 12:15:17 +00:00
Loukas Wets (lowe) 8ee8010cf6 [IMP] pos_self_order: install kitchen display for pay after each
Previously, when ordering with the Self app and paying after each order,
since paid orders aren't displayed on tables in floor plan, and orders
aren't send to kitchen directly. The flow is stuck.

This PR makes sure that the kitchen display is installed if the pay
each order is set. If not it will install it.

Because the kitchen display is only available in Enterprise, the
paying after each order mode is not available in community. When selecting
the mode in community the upgrade to Enterprise popup will be displayed.

task-3429195

closes odoo/odoo#135534

X-original-commit: 6c2dd0a53cb4dd33af01fdc3553ba2b379188265
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Signed-off-by: Loukas Wets (lowe) <lowe@odoo.com>
2023-09-15 12:15:16 +00:00
Mathias Mathy (MAMA) 167c51b1f9 [IMP] stock{_dropshipping},mrp,repair: remove onchange('code') from stock_picking_type
Legacy code still use 'onchange' on the 'stock.picking.type' field code
to compute the different xxx_location_id.
As it is no more viable, this commit replace all these onchange by
compute methods.
These changes also has a side effect as some already existing compute
methods now get a set of 'stock.picking.type' in input, such that these
methods are also updated to handle this case.

closes odoo/odoo#134650

Signed-off-by: Arnold Moyaux (arm) <arm@odoo.com>
2023-09-15 12:15:14 +00:00
sofiagvaladze 597c9fd854 [IMP] hr_recruitment: sanitize applicant's phone/mobile and normalize email
In order to have faster and more reliable search for similar applicants,
1 - we add normalized email and sanitized phone and mobile fields on hr.applicant.
2 - we use those fields for a search of similar applicants.

task - 3282883

closes odoo/odoo#120521

Related: odoo/upgrade#4977
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2023-09-15 12:15:12 +00:00
Sébastien Theys c6df607104 [FIX] mail: fix warning in user_modify_own_profile_tour
Follow up of https://github.com/odoo/odoo/pull/129239

Fixes runbot issue https://runbot.odoo.com/web#id=24581&view_type=form&model=runbot.build.error&menu_id=405&cids=1

closes odoo/odoo#135617

Signed-off-by: Xavier Dollé (xdo) <xdo@odoo.com>
2023-09-15 10:48:32 +00:00
Louis (loco) 597b519c4d [FIX] *: enable to use the backslash character in a field label of form
*website

Steps to reproduce the bug:
- Drop the "Form" snippet on the website.
- Add a new field.
- Replace the field label by "test\".
- Save.
=> Traceback of type "Cannot read properties of null (reading
'dataset')" appears.

In the `start()` function of the `s_website_form` public widget, the
field names of the form are extracted thanks to the `serializeArray()`
function. The field elements are then found by doing a `querySelector()`
on the field names. In our case, the field name of the new field
extracted by `serializeArray()` is `test\\` (there are two backslashes
because the field name is a string so the first backslash has to be
escaped by a second backslash). The problem is that this string has to
be escaped one more time in order to be used in a `querySelector()`. As
it is not the case, the result of the `querySelector()` is `null`
leading to a traceback when the code tries to access its dataset. To
solve the problem, the character `\` is encoded before being stored in
the `name`, `data-name` or `data-visibility-dependency` attribute of the
field element. Thanks to the encoding, the `querySelector()` operation
can perform correctly on those attributes.

opw-3470291

closes odoo/odoo#135587

X-original-commit: 03f230a77c0d38b46944d45b4991f48e45b275dd
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2023-09-15 10:48:31 +00:00
duongnguyen b69200ac46 [IMP] hr_holiday: archived employees not display in time off
closes odoo/odoo#135581

X-original-commit: ba4d3de6673bcc149a813cc40c4e088d8f0367fc
Signed-off-by: Sofie Gvaladze (sgv) <sgv@odoo.com>
2023-09-15 10:48:30 +00:00
Loukas Wets (lowe) 7a37975cfa [FIX] pos_restaurant: concurrent update error
Previously when a table was deleted 2 write calls were sent. This was a
problem because it causes a concurrent update error. One of the write calls
is undesirable and comes from the unWillUnmount from EditableTable component.
This commit removes the unwanted write call.

closes odoo/odoo#135512

X-original-commit: b1c5267845f82e8444d8548cb317d23721c31592
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Signed-off-by: Loukas Wets (lowe) <lowe@odoo.com>
2023-09-15 10:48:29 +00:00
Pierre Paridans 25d0783b59 [IMP] web: reduce jquery-ui lib (remove useless modules)
Includes: widget.js, position.js, data.js, keycode.js, scroll-parent.js,
unique-id.js, widgets/draggable.js, widgets/droppable.js,
widgets/sortable.js, widgets/autocomplete.js, widgets/menu.js,
widgets/mouse.js

task-3439226

closes odoo/odoo#135491

Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
2023-09-15 10:48:28 +00:00
Pierre Paridans 68e78881bf [IMP] website_sale: remove dependency on jQuery UI Effects
This commit replaces the usage of jQuery UI Effects "Expo" by the
default jQuery effect (aka. "swing"), but shorter to keep a similar
"punchy" feeling when adding a product to the shopping cart.

Note: this will allow to remove jQuery UI Effects in a follow-up commit.

task-3439226

Part-of: odoo/odoo#135491
2023-09-15 10:48:28 +00:00
Maruan Aguerdouh (magm) 59b2c10cbf [FIX] website_sale: add to cart modal properly displayed on list view
Made the modal for add to cart to be the same when in Grid view and list
view. We achieve this by modifying the css inside
`#products_grid.o_wsale_layout_list`.

opw-3235969

closes odoo/odoo#134699

X-original-commit: 643141dd284f1da869f540dd7aabbe9753eec3a5
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Maruan Aguerdouh Mohtar (magm) <magm@odoo.com>
2023-09-15 10:48:27 +00:00
Mathieu Duckerts-Antoine 4aa5f00dc9 [IMP] web: sample server: support of array_agg
In SampleServer, we make _mockReadGroup support array_agg (at least for
the field id).

closes odoo/odoo#135020

Related: odoo/enterprise#37757
Signed-off-by: Michaël Mattiello (mcm) <mcm@odoo.com>
2023-09-15 10:48:25 +00:00
Quentin 413c5a878c [FIX] account_edi_ubl_cii: handle 0 basis_qty and None attachement_name
When parsed, if the attachment has a basis quantity of zero,
it creates an error, because it is used in a division.
The condition that checks whether is computed
should be done only if this variable is none.

The code does not handle if `attachement_name.text` is None,
which can be caused by an orphan ID tag (e.i. "<cbc:ID />") ,
in the xml of the pdf.

opw-3470969

closes odoo/odoo#135566

X-original-commit: bfc83df736596a32f6009ad673194db20f18dec8
Signed-off-by: William André (wan) <wan@odoo.com>
Signed-off-by: Laurent Smet (las) <las@odoo.com>
2023-09-15 09:22:09 +00:00
Florent de LabarreandMiquel Raïch eee455e799 [FIX] account: fpo map account is not used
Before this commit, the fiscal position is not used to determine account.

closes odoo/odoo#135559

X-original-commit: 57f71fa2666af591a8d3d28af65fcfab8a7d3785
Signed-off-by: Cedric Snauwaert <csn@odoo.com>
Co-authored-by: Miquel Raïch <miquel.raich@forgeflow.com>
2023-09-15 09:22:08 +00:00
Benjamin Vray b9c0d9f780 [FIX] web_editor: fix oi icons css for editor panel
Since the commit [1], some Font Awesome icons have been replaced by 'oi'
icons in the editor panel. This has resulted in a situation where both
'fa' and 'oi' icons coexist.

These changes have caused two issues in the editor panel:

- The icons in the two buttons used to flip a background shape are no
longer centered within their buttons.

- When a row of buttons contains a mix of 'oi' and 'fa' icons, all these
buttons no longer have the same width. This issue was identified in
Master when new options for flipping/rotating an image shape were
introduced (see this commit [2]). Even though this bug may not be
visible in version 16.3, it is still necessary to address it here since
any potential changes could reveal this bug.

This commit resolves these issues by adjusting certain parts of the CSS
code of the the editor panel to handle 'oi' icons in the same way as
'fa' icons for these two specific cases.

[1]: https://github.com/odoo/odoo/commit/418413e4997a6b65eb7ad9e9ef8aba42805f1c0c
[2]: https://github.com/odoo/odoo/commit/fbb395021da5e8ba115d36dfd683f8576a74bf80

task-3493051

closes odoo/odoo#135330

X-original-commit: 3729cf6ab4261a29431ef05fcb7cc33ba5e3ad5a
Signed-off-by: Outagant Mehdi (mou) <mou@odoo.com>
2023-09-15 09:22:07 +00:00
Ivan Rasputin 1711e91257 [IMP] core: test exporting of translation files
Static qweb files are not tested for syntax errors.
This commits adds a hacky way to do this job: we test exporting of translation files.

Inspired by the following PRs, that were made as a response for errors caught by sentry

* https://github.com/odoo/enterprise/pull/43975
* https://github.com/odoo/odoo/pull/128221

closes odoo/odoo#128445

Related: odoo/enterprise#44074
Signed-off-by: Raphael Collet <rco@odoo.com>
2023-09-15 09:22:04 +00:00
oco-odoo 80b4c4c623 [FIX] account: reports: translate line codes properly in copied aggregation formulas
Example: Copy the Belgian P&L, try to open the copied report => error message saying some aggregation terms cannot be expanded. If you open the its form view, you can see that line BE_PL_14's balance formula has been translated from this

BE_9906.balance + BE_791.balance - BE_691_2.balance + BE_794.balance - BE_694_6.balance

to this on the copy:

BE_9906_COPY.balance + BE_791_COPY.balance - BE_691_2_COPY.balance + BE_794.balance - BE_694_6.balance

This is buggy ; BE_794.balance and BE_694_6.balance should be BE_794_COPY.balance - BE_694_6_COPY.balance, in order for them to match the other lines of the copied report properly.

This bug touches other reports more generally. It was due to the fact we replaced the codes in aggregations while we were copying the lines, and not after copying all the lines. Because of that, lines that were referrenced by an aggregation expression belonging to a line coming before them in sequence were not taken into account, as they were not part of the code_mapping dict yet.

OPW-3505592

closes odoo/odoo#135585

X-original-commit: 43ed3e69291833ca82cd1257ade021862997828c
Signed-off-by: John Laterre (jol) <jol@odoo.com>
2023-09-15 08:08:36 +00:00
Julien Alardot (jual) 87a0b760db [FIX] hr_expense: recompute expense currency
Fix a corner case when the expense currency doesn't update when a cost is added to the product

Steps to reproduce:
- Create an expense in a foreign currency
- Add a cost to the expense product

Before fix:
Unit amount currency stays in foreign currency

After fix:
Forces expense currency to
 company currency

task-3455446

closes odoo/odoo#135570

X-original-commit: 67901a4429c69fbba96c32af5d8f58aff54f0be5
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Signed-off-by: Julien Alardot (jual) <jual@odoo.com>
2023-09-15 08:08:35 +00:00
roen-odoo bea0116aec [FIX] point_of_sale: use correct partner_id for invoiced orders
Current behavior:
When invoicing an order that was made in a closed PoS session, the wrong
partner was used for the invoice. And so the total due was assigned to
the wrong partner if you used the "Customer Account" payment method.

Steps to reproduce:
- Open PoS and make an order for a customer using the Customer Account
  payment method.
- Close the PoS session.
- Open the PoS session again, and invoice the order you made in the
  previous session.

Fix:
Use the commercial_partner_id of the order's partner instead of the
partner_id directly.

opw-3478670

closes odoo/odoo#135558

X-original-commit: a7ebb5151060f9435941b9da50182e4ec5b58db7
Signed-off-by: Vlad Stroia (vlst) <vlst@odoo.com>
Signed-off-by: Robin Engels (roen) <roen@odoo.com>
2023-09-15 08:08:34 +00:00
roen-odoo 6cc1c435fd [FIX] point_of_sale: remove 0€ payment line of orders
Current behavior:
When an order contains a payment line with 0€, and a customer account
payment line. Then you close the PoS and invoice the order from an other
PoS session, you get an error.

Steps to reproduce:
- Open PoS, make a new order with a payment line of 0€ and a customer
  account payment line.
- Close the session and open a new one.
- Go in the paid order, and try to invoice it.
- You get an error.

Fix:
To fix the issue we just remove the useless 0€ payment line.

opw-3477486

closes odoo/odoo#135284

X-original-commit: 24c311670164d5f06dc50d829bb653b06cf86f07
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Signed-off-by: Robin Engels (roen) <roen@odoo.com>
2023-09-15 08:08:32 +00:00
roen-odoo d461fcef5c [FIX] pos_coupon: Make sure loyalty rewards are considered as rewards
Current behavior:
When a loyalty reward was applied with a promotion program, a promotion
reward was added with a -Infinity value.

Steps to reproduce:
- Create a loyalty program with a reward of 5€ fixed amount for 50
  points
- Create a promotion program with a reward of 10% discount
- Open a pos session, select a customer (and add points to the loyalty
  program if needed).
- Add a product to the order, the 10% discount should be applied
- Now click on the reward button to apply the loyalty reward
- The loyalty reward is correctly applied, but a new promotion reward
  is added with a -Infinity value.

opw-3297817

closes odoo/odoo#133550

X-original-commit: ee60da301209c84264d706b9d16e45af541a3bbf
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Signed-off-by: Robin Engels (roen) <roen@odoo.com>
2023-09-15 08:08:31 +00:00
Florian Charlier c983f8a534 [IMP] survey: ensure scored can be passed
Before this commit, it was possible to have users fill-in
a scored survey with no way possible to pass it because no
answer had any positive score obtainable.

We keep here the check on sharing of the survey to avoid
errors while configuring the survey, the same way it is
already done when trying to share a survey without any
question at all.

Note that we are also adding this warning and the "This is a
test survey" notice for survey_user and not only managers
because users can also test their surveys...

Task-3374592

closes odoo/odoo#130553

Signed-off-by: Stéphane Debauche (std) <std@odoo.com>
2023-09-15 08:08:30 +00:00
amdi-odoo fbf7df5e4b [IMP] survey: improve multiple choice checkboxes
Purpose
=======
Make it easy for users to differenciate bewteen
simple choice and multiple choice question types.

Specification
=============
Change the multiple choice question type checkboxes
icon from a circle to a square in the survey result page
and the survey template.

In the question form view, tick 2 checkboxes instead of
one for the multiple choice question type.

Task-3252870

closes odoo/odoo#129882

Signed-off-by: Stéphane Debauche (std) <std@odoo.com>
2023-09-15 07:05:29 +00:00
Arthur Detroux (ard) 26218171a8 [FIX] web_editor: fix images getting absolute URLs in grid mode
[1] introduced the grid mode and with it a util that reloads lazy
images in order to prevent a bug in Chrome which make images disappear.

This util read the .src property of the image element. That property is
the absolute URL.
In order to keep the exact URL that was on the img attribute, one needs
to use "getAttribute".

This commit does exactly that.

Steps to reproduce:
- Drop a Image - Text snippet
- Drag the image to enter grid mode
=> At the same time the image is reloaded with the wrong src

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

closes odoo/odoo#135392

X-original-commit: 3528f2c3f9d3b30266f3421672986d202c724a76
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2023-09-14 20:34:54 +00:00
Pedram (PEBR) c10eae31ae [FIX] pos_loyalty: prevent loading a product twice
Before this commit, if a product was set to be available in the PoS,
and also existed in a reward, it was loaded to the PoS twice. This
caused issues in _loadProductProduct during the assigning of pricelist
items, and could result in missing pricelist information for a product.

opw-3487702

closes odoo/odoo#135494

X-original-commit: b64f9bfeb7782e9665ea60e57f09031b6588f883
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Signed-off-by: Pedram Bi Ria (pebr) <pebr@odoo.com>
2023-09-14 19:20:06 +00:00
Walid HANNICHE (waha) ad9c8e31e1 [FIX] mrp: update MO qty reserves components
Steps to reproduce:
- Create and confirm an MO with extra components in stock
- Update the quantity to produce

Bug:
the reserved qty is not updated (it actually is but to the previous
value if you update MO quantity multiple times)
since this commit[1] moves are now assigned during the write
before the new product_uom_qty is written on them

opw-3489226
[1]:https://github.com/odoo/odoo/pull/93712

closes odoo/odoo#135548

X-original-commit: cc23ebefb4a15d163ec508cd535bf757cf626fa5
Signed-off-by: Adrien Widart (awt) <awt@odoo.com>
Signed-off-by: Walid Hanniche (waha) <waha@odoo.com>
2023-09-14 18:09:52 +00:00
Aaron Bohy 3d9aebdcac [FIX] web: fix randomly failing form tests
We must wait for an additional tick to be sure that the error
dialog is displayed, because the "unhandledrejection" event is
triggered asynchronously.

Runbot issue-24690
Runbot issue-24691
Runbot issue-24744
Runbot issue-24733
Runbot issue-24742

closes odoo/odoo#135500

X-original-commit: e341f592e2a8ebc3c2e479566425df89a29bf2c7
Signed-off-by: Pierre Rousseau (pro) <pro@odoo.com>
2023-09-14 18:09:51 +00:00
Ali Alfie (alal) 1d25e75241 [IMP] hr_expense: add attachments from expense to journal entries
This commit adds a copy of the attachments from the expense report to the created journal entry.

task-3443042

closes odoo/odoo#132955

Signed-off-by: Quentin De Paoli <qdp@odoo.com>
2023-09-14 18:09:50 +00:00
priyanshi patel(prpa) f712299fe4 [IMP] mrp: display Ready to Produce qty in MO Overview Report
Before this commit
==================
Currently, There is no way to know how many qty users can produce with the current stock.

After this commit
=================
With this commit, In the MO Overview report, the following stages are added:
'Ready', 'Not Ready', and '{X} Ready'. the Ready to Produce qty is based on
the component reserved quantity + component free quantity. Furthermore, the
table header in the MO status overview report has been slightly highlighted for
improved visibility.

task-3356499

closes odoo/odoo#124474

Signed-off-by: Tiffany Chang (tic) <tic@odoo.com>
2023-09-14 18:09:49 +00:00
Odoo's Mergebot 824fc94bbc [MERGE][REF] sale,website_sale*: combination info logic
Clean, factorize and optimize the code related to product variants display and price computation, especially the whole `combination_info` logic, which can now be moved to `website_sale` since the new product configurator used for backend doesn't rely on it anymore.

Enterprise PR: https://github.com/odoo/enterprise/pull/41308

closes odoo/odoo#121986

Related: odoo/enterprise#41308
Related: odoo/upgrade#5134
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2023-09-14 18:09:48 +00:00
Victor Feyens a8366a67da [IMP] website_sale: rely on line info instead of combination
Part-of: odoo/odoo#121986
2023-09-14 18:09:48 +00:00
Victor Feyens 63f0d1cb5a [IMP] sale: harmonize fpos & pricelist request cache
Cache the fiscal position by request the same way it was
done for the pricelist, on the current website record.

Also clean and clarify the pricelist cache at the same time,
making sure invalidations are correctly handled, and that the
whole code relies on the unique logic (& field).

Part-of: odoo/odoo#121986
2023-09-14 18:09:48 +00:00
Victor Feyens 07517d79fa [CLN] website_sale: split product_attribute.py
Part-of: odoo/odoo#121986
2023-09-14 18:09:48 +00:00
Victor Feyens f71cd64567 [FIX] website_sale: correctly update prices according to fiscal position
The prices displayed on the /shop page were not refreshed if the fiscal
position computed for the current partner was modified.

Part-of: odoo/odoo#121986
2023-09-14 18:09:48 +00:00
Victor Feyens ab16589d6c [CLN] sale: product_template.py
Remove unused field
Clean code

Part-of: odoo/odoo#121986
2023-09-14 18:09:48 +00:00
Victor Feyens 6c940679c9 [REM] product: unused company fallback logic
This method & logic is not used nor necessary anymore with
the multi-company fixes and improvements done in the recent years.
* All requests coming from website are automatically done in the website
company.
* check_company restrictions forbid the use of records from different companies
* multi-company security rules restrict the access to records from the current
company.

Part-of: odoo/odoo#121986
2023-09-14 18:09:48 +00:00
Victor Feyens ae7d23ef2e [CLN] website_sale,*: unnecessary pricelist context
There is no need to manually add the pricelist context for ecommerce
flows anymore, it is automatically managed in `_get_contextual_pricelist`
override of website_sale.

Part-of: odoo/odoo#121986
2023-09-14 18:09:48 +00:00
Victor Feyens 4069158c96 [REF] sale,*: combination_info logic
Clean all code related to _get_combination_info:

* Move logic to website_sale now that backend configurator doesn't
rely on it anymore. Only frontend configurator uses that logic.
* Make sure the returned information is correct and consistent:
  * request must be given the right context (multi-company)
  * behavior is coherent between modules and overrides (date, company, currency, rounding)
* Performance:
  * Avoid loading unnecessary information
  * Avoid calling _get_combination_info when only part of the data is necessary.
  * Clean/simplify uses and overrides by keeping useful information in the combination_info dict (taxes, currency, ...)
* Code cleanup
  * clean imports
  * clean architecture
  * clean templates
  * move old configurator code to website_sale

Now that the product configurator backend side has been redone
completely, the remaining parts previously shared between backend
and frontend configurators can be moved to website_sale because only
used by the frontend configurator.

Part-of: odoo/odoo#121986
2023-09-14 18:09:48 +00:00