The bills upload widget uses a custom attr "linkText". translate.py will only generate terms that are in the TRANSLATED_ATTRS constant, thereby not including these in the po template file.
To fix this, the attribute is changed to a recognised attr "title".
The JS widget will still recognize linkText, for databases that have not updated the module.
Task-3335585
closesodoo/odoo#125516
X-original-commit: 8569ceb101f6dfe5882c33c120b9ed6d76ccf5be
Related: odoo/enterprise#42755
Signed-off-by: Habib Ayob (ayh) <ayh@odoo.com>
Signed-off-by: Brice Bartoletti (bib) <bib@odoo.com>
With Jquery.data, you can set everything as value (array, object,
string, etc) wich is confusing. This commit fix the function that check
if the button is ready. It didn't work because the data declared
in this.$submitButton is not a boolean but an object.
Bug was introduced in PR 118012
commit : a6b46fdfdb855
closesodoo/odoo#124795
X-original-commit: 04059d09dfd7dc57a5c86c842d6fea300e1441aa
Signed-off-by: Géry Debongnie <ged@odoo.com>
Before: when using the quick encoding feature on an invoice or bill with payment term containing an early payment discount and the epd computation is set to "Always (upon invoice)", the calculation was done incorrectly.
Example: if you invoice a 100€ product with a 21% tax with a 2% cash discount, the total of the invoice will be 120.58 (the 21% is calculated on 98€ (100€*2%) which is 20.28€).
In our case, if you tried to calculate suggestions from a quick encoding value of 120.58, the calculation would calculate the untaxed amount from the 120.58 based on the 21% tax without applying the 2% discount.
After: when calculating the suggestions check if an early discount is set on the payment term and the epd computation is set to "mixed" ("Always (upon invoice)") and if so, apply the discount to the tax before calculating the untaxed amount from the total.
task-3339223
closesodoo/odoo#125505
X-original-commit: 162443f1ad913a0388bea60f04ff140e75fdb0ed
Signed-off-by: Laurent Smet <las@odoo.com>
The bank recon custom view relies on the noContentHelper. (When there are no records, a custom noContentHelper is displayed including buttons to clear filters)
When the view is activated from a RedirectWarning, the action's help text is not marked up
therefore displaying raw html in the UI.
With this fix, the actions help key is marked up (very similar to the doActionButton)
To reproduce:
- On a DB with demo data
- Accounting -> Actions -> Lock Dates
- Set a lock date for all users (after the last unreconciled date, ensure there are no unposted moved before this date)
- You will be presented with a Redirect Warning Dialog
- Click Show Unreconiled Bank Statement Lines
- If there are lines, use the filter to search for "SomethingThatWontReturnRecords"
- You will see raw html
Task-3366470
closesodoo/odoo#125493
X-original-commit: 0086841addfc5b0e3293d205bdfe8dde67b32ce4
Related: odoo/enterprise#42740
Signed-off-by: Laurent Smet <las@odoo.com>
This results in parent message being displayed as text when it is part
of the result of a load around call.
closesodoo/odoo#125439
X-original-commit: 783a5186cf7529161d95c34c9290dc57a32b8200
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Forgot to properly sort messages, resulting in returning messages not
actually around but the most recent instead.
X-original-commit: 803f1ad7e3bceaa8f03fca06f920447ce9d8eb69
Part-of: odoo/odoo#125439
Double assignation does not chain, resulting in the non proxified
message being returned, which can potentially cause issues either when
comparing messages by reference or if a reactive version is expected.
X-original-commit: 30a77cb2778ec0fce5892cfd3903aa1982825626
Part-of: odoo/odoo#125439
Currently, we call the web service before the PDF is rendered. This is often required for some localizations, for example Mexico.
However, in some other cases, we need to embed the pdf document in the xml file, like in Peppol. In this case, we need to call the proxy after the pdf has been rendered.
This commit adds an additional hook that is being called in the end of `_generate_invoice_documents`, after all the documents have been generated and postprocessed. `account_peppol` will use the new hook instead of the old one.
closesodoo/odoo#125438
X-original-commit: dd56297e8b462539c913803eeb23a224fc9e93ac
Signed-off-by: Laurent Smet <las@odoo.com>
This commit fixes small bugs:
- Sometimes we don't receive the attachments' file name from the proxy. Instead of saving the attachment with `False` as the filename, we should default to something.
- If for some reason the participant's status is changed on the proxy server after documents have been sent, retrieving the message status will traceback. This commit adds a condition to catch this case.
- Currently, the participant status is only updated if their application is pending. But it can happen that they are approved but not registered to the SMP. Participant status should be checked for approved edi users too.
closesodoo/odoo#125437
X-original-commit: a70a388cc6cba1f0f440ca7b9dafe9b6ef6593f4
Signed-off-by: Laurent Smet <las@odoo.com>
Since d88409e8e5ce77ff3ec3b24fcdc108d8df380994, taxes from different companies
are forbidden on sale.order.line records (which is the expected behavior).
Nonetheless, this highlighted some flows where the taxes were not properly
set/recomputed, especially re-invoicing, which is fixed by the current commit.
Fixes#123675closesodoo/odoo#125434
X-original-commit: 6ce4019968bd0a1a11475910d35aa2ccfc2c6a9a
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
Prior to this commit, the buttons in `binary_field` didn't have space
between them.
This commit fixes this issue.
task-3334887
Part of task-3326263
closesodoo/odoo#125261
X-original-commit: 998f8cc8d096df9e2099df59bb35148f56c88533
Signed-off-by: Pierre Paridans (app) <app@odoo.com>
Before this commit, `o_grid_item_image` was not handling videos but image-only.
This commit adds support for `.media_iframe_video` in addition to `img` to
ensure consistent styling across both images and videos within the grid items.
task-3103775
closesodoo/odoo#125075
X-original-commit: b54b34e6c34f435b2923e7b571b2bb2e4e9e0f08
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
*: web_editor, website
Steps to reproduce the bug:
- Add a Cover snippet on the website.
- Put a "Blur" filter on the background image.
- Save.
- Change the parallax from "Fixed" to "None".
- Save and edit.
=> The "Filter" option displays "None" but should display "Blur".
When changing the parallax, `setTarget()` is called. The goal of this
function is to transfer the `background-image` from the old target to
the new one. The commit modifies this function by adding the transfer of
the dataset information relative to the background image from the old
target to the new one. It also transfers the `o_modified_image_to_save`
class from the old target to the new one if needed.
Upgrade PR: https://github.com/odoo/upgrade/pull/4767
task-3287330
closesodoo/odoo#123873
X-original-commit: c82d01f7532b5b120bedfbc40bf8f2f07d750ed6
Related: odoo/upgrade#4767
Signed-off-by: Benoit Socias (bso) <bso@odoo.com>
Signed-off-by: Colin Louis (loco) <loco@odoo.com>
For background images, modifying options such as "Filter" does not
directly lead to the modification of their corresponding data attributes
in the DOM as those modifications are done at the save request. This
should not be the case. The goal of this commit is to, as for regular
images, modify their corresponding DOM data attributes at the option
update.
Steps to reproduce the bug:
- Add a Cover snippet on the website.
- Replace the background image by one of your own.
- Add a filter to the background image.
- Inspect the Cover snippet.
=> The `data-gl-filter` attribute has not been added in the DOM and you
have to click on "Save" for it to be actually added.
task-3287330
X-original-commit: ed19a1e91a2706b157532778b15d4a581a4da0e2
Part-of: odoo/odoo#123873
Steps to reproduce the bug:
- Add a cover snippet on the website.
- Change the background image with one of your own.
- Save and edit again.
=> Options such as "Filter", "Width" and "Quality" do not appear
anymore.
The problem is that the `src` attribute of the background image is not
correctly updated when initializing the image. This is because the
target used to recover the URL of the background image is the snippet
and not the image itself. This problem is resolved by ensuring that the
argument of the function `getBgImageURL` is the background image. Now
that the `src` attribute is correctly updated, the `computeVisibility`
function of the the `BackgroundOptimize` option works properly and the
options "Filter", "Width" and "Quality" are displayed as wanted.
Note that now, the dataset of the target is filtered with a "white list"
(BACKGROUND_IMAGE_ATTRIBUTES) before being copied in the dataset of
`this.img`. Indeed, if the parallax is set to "None" for example, we do
not want data attributes such as `data-snippet` to be copied in the
dataset of `this.img`.
task-3287330
X-original-commit: 4356917d0d5cfa560794e4a0464c6ebc9a5ff3e7
Part-of: odoo/odoo#123873
Currently, all background shapes of snippets are hidden on mobile,
because most of them don't look great on small screens. This commit
adds a button in the website editor to toggle the shape on mobile.
It remains hidden by default if added on desktop, but displayed by
default if added on mobile.
task-3096132
closesodoo/odoo#116958
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Process has been refactor on 16.2:
955091e707
Steps to reproduce on fresh SaaS~16.2:
Connected as Admin:
1. Install localization module LUX `l10n_lu`,
Switch to the `LU company`
2. Modify a `res.partner`, on the tab "Invoicing":
Handle his electronic invoicing to use the format `ubl_bis3`
described as `Peppol BIS Billing 3.0`
Select any value in the field `Peppol e-address (EAS)`
And put any value in the field `Peppol Endpoint`(I used `1234567890`)
3. On the tab "Sales&Purchaes", inner group "MISC",
Add anything in the `reference` field (required for Peppol)
4. Create an invoice, selection the partner modified,
add a product and a recipient bank
5. Confirm & Send&Print button, save the document layout.
On the Send Wizard: uncheck all except "Peppol BIS Billing 3.0",
hit Save&Print button.
If you create a new Invoice for the same customer as Marc Demo,
You should also see that the icon on the attached xml is of
mimetype "application/xml". Which is displayed on the icon
as "</>".
Prior to this fix:
If you do the same steps with a user that does not have
the write access right to the model ir_ui_view
(see _check_contents in base), the attachment will be
of type text/plain.
The issue that this trigger, is that the email going out
will have the wrong Content-Type for the attachments.
Which will lead to incorrect management on other provider.
We can bypass the security here as the XML is generated
by Odoo.
opw-3263542
X-original-commit: 04c2bb022b0f9263e2682bf8cc75fed19fd443a8
Forward-port of https://github.com/odoo/odoo/pull/124507 (15.0)
closesodoo/odoo#125258
X-original-commit: 9dc60e69110dac949e04ff8288b25fb0d0f65178
Signed-off-by: William André (wan) <wan@odoo.com>
Purpose
=======
Improve the behavior of the collapse/expand categories
in front-end for large courses.
Specifications
==============
In channel content view and channel fullscreen view:
- When following the course, expand the ongoing section and
collapse the other ones.
- When the section is completed, open the next one and
keep the previous one(s) opened.
- If an attendee leaves and comes back, only open the ongoing one.
Task-3284195
closesodoo/odoo#121003
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
When a scrollbar appears in the sidebar, the toolbar could end up being
to wide, making a horizontal scrollbar appear. This commit makes the
toolbar buttons smaller (smaller padding) to avoid this.
closesodoo/odoo#119972
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
With this commit, when a user clicks on the font size number in the
editor's toolbar, two things happen:
1. Same as before: the list of recommended sizes opens.
2. The current font size is selected, and the user can type any value
they want. They need to confirm with "Enter" or blur the input to use
a custom value.
task-3167041
Part-of: odoo/odoo#119972
When clicking on an input in the toolbar, the selection was lost and
the commands could not be executed. This restores the latest selection
in the editable in these cases.
Part-of: odoo/odoo#119972
Small mistake during forward-port of [1],
`btn-link` was moved from `t-att-class` to `class`.
The `btn-link` visual is specific to non-chatter, therefore
it should be in `t-att-class`.
[1] https://github.com/odoo/odoo/pull/124905closesodoo/odoo#125395
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
When user changes the default_account_id on a journal and tries to open a
statement line, they will get the traceback.
Note: This is reproduceable by using account_accountant only.
Steps to reproduce:
1) open configuration of bank journal
2) change default_account_id (bank account) from bank to cash
3) open bank statement
4) open any statement line
5) by following these steps, traceback occurs.
This commit will prevent the above traceback.
sentry - 4059226840
closesodoo/odoo#125375
X-original-commit: 12410133d548f3c9ff44fd548bbf664f008a3ae3
Related: odoo/enterprise#42685
Signed-off-by: Laurent Smet <las@odoo.com>
Signed-off-by: habh-odoo <habh@odoo.com>
General refactoring of the codebase. Inline of certain components
that had no logic in the JS side, the XML of these components was
directly added to the place where they were called.
Simplification of the python controller, inline of many functions and
separation of the logic. There is now one function that manages new
orders and another that manages and updates existing orders if we are
in "pay after meal" mode. In "pay after each" mode, orders cannot be
edited.
Addition of different models, product, order and orderlines in order to
facilitate the use of these objects between the backend and the
frontend.
Added price calculation on the serverside because we can't trust the
data coming from the customer in the self since no identification
is required.
Management of last change sent added. Thanks to this, users will no
longer be able to click on the order button if no changes have been
made to the order.
closesodoo/odoo#122901
Signed-off-by: Heinz Robin (rhe) <rhe@odoo.com>
Before this commit, when viewing the content of an html field in
readonly mode, internal links (same origin or relative links) that did
not have the target attribute set to "_blank" would be opened in the
same browser tab. This is undesired, and particularly disturbing when
the content is inside an iframe.
This commit ensures that, in readonly mode, all links are opened
in a new tab.
task-3323602
closesodoo/odoo#125382
X-original-commit: cb84f993bbf38130482c1f50e550bfdf94a60845
Signed-off-by: David Monjoie (dmo) <dmo@odoo.com>
Steps to reproduce
==================
- Switch to arabic
- Open a datepicker
- Select the month
The month are displayed twice in two different arabic namings.
Cause of the issue
==================
There is an issue in the moment locale files since [0]. It has been made
apparent since [1].
Solution
========
Cherry pick a fix from the moment repo [2].
Revert the ar.js locale from before [0]
[0]: 11f3e7351a899848ec4df0107c3f6e2a627807ba
[1]: 6a1183f4c93ad068524a3242cd7b4e37f68fbf95
[2]: https://github.com/moment/moment/commit/251fba65cca5d5b2cf79f1f51a9d413c5e0cb161
opw-3349560
closesodoo/odoo#125381
X-original-commit: bfdf5baf4017058d7aff7c93fd504e684ed6783a
Signed-off-by: Julien Mougenot (jum) <jum@odoo.com>
Signed-off-by: Hubert Van De Walle <huvw@odoo.com>
Issue:
------
When a cart is created via ecommerce, an email is sent to the salesperson
(defined in Settings/Website/Assignment).
This email contains a subtitle with the amount of the sale order.
This price is always 0.00.
Cause:
------
The email is sent during the creation of the sale order
and not after it has been updated with the product information.
Solution:
---------
Use a key in the context to prevent sending the price of a sale order.
Remark:
The email sent in this case is an assignment email only.
Mentioning the price in this case would not be relevant
if the customer subsequently updates their cart.
opw-3329722
closesodoo/odoo#125378
X-original-commit: ea883e75343e50a1603b37c5f82f8e620418c883
Signed-off-by: Lefebvre Thomas (thle) <thle@odoo.com>
Co-authored-by: Feyensv <vfe@odoo.com>
Fix a reference to an account that is not defined in
Common tests of accounting.
closesodoo/odoo#125345
X-original-commit: 13c97c3272be237381d1680116424a46e5e7cb03
Related: odoo/enterprise#42677
Signed-off-by: Laurent Smet <las@odoo.com>
Signed-off-by: Claire Bretton (clbr) <clbr@odoo.com>
This commit reinforces the dependency tree: as delivery is needed with
website_sale, stock_delivery is expected to be installed when
website_sale_stock is installed. This also prevent the deletion of a
dependency.
closesodoo/odoo#123854
Signed-off-by: Vallaeys Valentin (vava) <vava@odoo.com>
The dependency to sale_management is required to handle sale orders. But
sale orders can be handled in the ecommerce backend.
With this commit, installing stock_delivery will install `sale_management`
only if `website_sale` is not installed.
Part-of: odoo/odoo#123854
* l10n_in_purchase_stock, l10n_in_sale_stock
before this commit, if sale_stock or purchase_stock
module was uninstalled from db manually, exception
will be shown for the users.
* create a db with selecting country as india
for l10n_in_sale_stock:
* install sale and stock module in the db
* sale_stock and l10_in_sale_stock will get installed
in the db
* now uninstall sale_stock module, user will receive
500 internal server error as the l10_in_sale_stock
didn't get uninstalled and depends on warehouse_id
field from sale_stock module
* in l10n_in_sale_stock module, _compute_l10n_in_journal_id function is depending on the field warehouse_id
which is added from the sale_stock module
Exception: ValueError: Wrong @Depends on _compute_l10n_in_journal_id (compute method of field sale.order.l10n_in_journal_id). Dependency field warehouse_id not found in model sale.order.
for l10n_in_purchase_stock:
* in fresh db, install purchase and stock module
* purchase_stock, l10n_in_purchase_stock will get installed
automatically
* now uninstall purchase_stock module and try to open
the purchase order form,user will get exception
* l10_in_purchase_stock module is still installed and
depending on a field picking_type_id from purchase_stock
module
* onchange function l10n_in_onchange_company_id isdepending and using field picking_type_id which is added from
purchase_stock module
Exception:AttributeError: purchase.order object has no attribute picking_type_id
after this commit, on uninstalling sale_stock or
purchase_stock module from the db will uninstall
l10_in_sale_stock, l10_in_purchase_stock
modules respectively.
closesodoo/odoo#123197
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Before this commit, push notificiation content
was not displayed correct.
When receiving message `<`, it shows `<`.
This commit fixes the issue by not unescaping the content.
closesodoo/odoo#125314
X-original-commit: 4f8ba016e63cb9817d61705ce262d392f7704ef5
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Steps:
- Install timesheet.
- Give user a `user: own timesheets` access.
- Open timesheet app.
Issue:
- `My Timesheet` menu is not visible and `Reporting` is visible
but timesheet user should be able to see `My Timesheet` menu not
`Reporting` menu.
Cause:
- Both `My Timesheet` menus are under that `Timesheets` menu which
has appover group set on it but one of then should be outside of
that menu and missing group on `Reporting` menu.
Fix:
- Move one of `My Timesheet` menu outside to display it for timesheet
user and add approver group on `Reporting` menu.
task-3369534
closesodoo/odoo#125303
X-original-commit: 065227b05a9666798b918fe26ae9c4828ba53a8f
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
Have a product with internal reference
Open POS session
Create an order with the product
Invoice
Issue: Internal reference is shown twice on the invoice line
opw-3343170
closesodoo/odoo#125293
X-original-commit: 4fbcbd2bb04b35635db7903648ba7c39c41c2dad
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Signed-off-by: Grazioso Andrea (agr) <agr@odoo.com>
Have an Egyptian company setup
Go to Currencies > USD
Add a new entry with Unit per EGP 0.03232062055591467
Issue: Warning will raise
"Please make sure that the EGP per unit is within 5 decimal accuracy.
Higher decimal accuracy might lead to inconsistency with the ETA
invoicing portal!"
Even if the shown EGP per Unit is 30.940000000000 it is actually
30.940000000000005 and it will fail the equal-to-rounding test
opw-3333395
closesodoo/odoo#125292
X-original-commit: 2867a68534212efd8549764a03c26e86c5109381
Signed-off-by: Josse Colpaert <jco@odoo.com>
Signed-off-by: Grazioso Andrea (agr) <agr@odoo.com>
For a `pos.payment.method`, it is possible to define an outstanding
account, but if this account is not defined as an outstanding account in
the company settings nor in the journal, the payment will not be
considered in the bank reconciliation, nor in the bank reconciliation
report.
Steps to reproduce (demo-data with POS and Accounting installed):
-go to 'Point of Sale/Configuration/Payment Methods'.
-click on the "Bank" payment method.
-add an 'Outstanding Account' which is not the default outstanding
account of the company, nor an outstanding account of an
`account.payment.method.line`. So for example "Liquidity Transfer".
-then open a POS session, sell smth, pay with the Bank method, validate,
then close the session.
-If you go to 'Accounting/Customers/Payments', you can see that an
`account.payment` has been created, with the outstanding account being
"Liquidity Transfer".
->It is not possible to reconcile that payment with a
`account.bank.statement.line`. If you go to the accounting dashboard,
then click the reconcile button of the journal "Bank", then on a
statement line with no partner, you will not see the outstanding line
of that payment.
->If you open the 'Reconciliation Report' of the journal "Bank"
(accessible from the journal dashboard, by clicking the options of the
journal), the line will not show in the 'Outstanding Receipts'
category.
FIX:
Override the `_get_journal_inbound_outstanding_payment_accounts`
method of `account.journal`, to add the accounts from each
`pos.payment.method` linked to the journal. Using the field
`pos_payment_method_ids` from `account.journal`.
opw-3271090
closesodoo/odoo#125238
X-original-commit: c002e6bfbb194b0d609956b36f23a5dbf7acffd4
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Signed-off-by: Arnaud-Sibille (arsi) <arsi@odoo.com>
In this commit, we renamed the calendar filter in task from
'Undefined' to 'Private' to be consistent with the terminology
used in the other views task.
task-3214107
closesodoo/odoo#115621
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
Purpose of this commit by making the popover look less cluttered by
hiding fields when they don't have any value and moving fields around
in task calendar popover.
task-3214107
Part-of: odoo/odoo#115621
This commit fixes the object reference issue which was linked to the
TaxTotals Component computations. The issue was that discarding changes
on the tax field of a vendor bill wouldn't roll back the field's value
visually while the record would still have correctly updated values.
This issue originates from the fact that operations were made to compute
the taxes in the component but these would affect the server data as
well since the object reference between the local data and the server
data was the same. This means that the discard operation would bring
the displayed value back to the server data's one which has been
modified by the computations so it would not work. The reference to the
server data is now separated from the local one so that the bug won't
appear anymore.
opw-3285209
closesodoo/odoo#125304
X-original-commit: 9178c96f5788989c38fbb335ea79fc6ea8698131
Signed-off-by: Mathieu Duckerts-Antoine <dam@odoo.com>
Signed-off-by: Julien Carion (juca) <juca@odoo.com>
Before this fix, the tour pointer is always repositioned and the animation is
behaving very poorly. Like it's suffering from epilepsy. This is because
`reposition` method relies on dom mutation to calculate the correct position
which is detected by the tour runner and the tour runner thinks that it needs to
check the current step which eventually calls the `reposition` method again,
being stuck in a loop.
In this commit, we introduce and additional check before calling `reposition`.
If the last x and y of the anchor (current step's element) changed by less than
a pixel, we consider it as static, and we don't call the `reposition` function.
Task-id: 3369617
X-original-commit: cf42ed86220a397f24fca497bf5a77e2b72ba4e2
Part-of: odoo/odoo#125262
There were two issues with the `getNormalizedCursorPosition`:
1. If the selection was in a non-editable element, the function called
`rightPos` only once, without ensuring that the new position was editable.
-> The current implementation fixes that by making it loop while in a
non-editable element, and also allows the normalized position to use `leftPos`
if the offset of a position is 0.
2. When searching for the deepest leaf to the right, the `DOMPathGenerator` was
allowed to traverse non-editable elements, which is not correct since the result
should always be editable for a normalized position.
-> This is fixed, and the name of the `DOMPathGenerator` utils is updated for
clarity.
task-3280704
closesodoo/odoo#125204
X-original-commit: 3d44028a7722f61900b8669489ff929244b1a4b8
Related: odoo/enterprise#42615
Signed-off-by: David Beguin (dbe) <dbe@odoo.com>
Signed-off-by: Damien Abeloos (abd) <abd@odoo.com>
The previous iteration (394e4fe) prevented the editor to fix selections in
`contenteditable="false"` elements if they had a `data-oe-protected="true"`
parent. This caused undesirable side-effects such as being able to click in an
embedded view in Knowledge, then type `Backspace` and remove view elements.
The solution implemented in this commit allows the editor to fix such a
selection, only if it is not currently targetting a `<input>` or `<textarea>`
tag, as they are supposedly the only `isContentEditable === false` elements that
are editable by a user in an Odoo view.
task-3280704
X-original-commit: 98767b805fe26883cf851bac4f8d5382a3303eb4
Part-of: odoo/odoo#125204
Prevent custom editor selection of protected tables. The previous iteration
(394e4fe) did not take into account non-collapsed selections.
This iteration does not handle `data-oe-protected="true"` on `table` elements
below the `<table>` tag (i.e. `<tbody>, <tr>, <td>`...), because there is no
need for that currently and it would add further complexity to the code.
task-3280704
X-original-commit: 885d52c9b814d908438e8e424d17c4e4b6e9e731
Part-of: odoo/odoo#125204
Some commands of the editor are able to modify non editable nodes in the editor,
notably those that use the `formatSelection` util. This commit intent is to
prevent such commands to have an effect on `contenteditable="false"` nodes.
Here is the list of impacted methods:
- setTag
- switchDirection
- unlink
- indentList
- toggleList
- applyColor
- every function using `formatSelection`:
- bold
- italic
- underline
- strikeThrough
- setFontSize
In knowledge, `Behaviors` are OWL components that are used in the editor, and
they all have `contenteditable="false"` parts that are managed by OWL. Those
functions could modify those managed nodes and make OWL crash.
task-3280704
X-original-commit: 6d90274e0a21848d704cfd86d7a1d0c5860a9b18
Part-of: odoo/odoo#125204
When a `pos` is configured as `self order`, the dashboard buttons become misaligned.
This PR brings back the buttons into alignment.
Task 3357989
closesodoo/odoo#124255
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
The link to the `Floor Plans` configuration is only visible in debug mode.
This makes for a bad user experience.
This PR makes it so the link is always visible to `pos users`, regardless of whether
or not the user is in debug mode.
Task: 3357989
Part-of: odoo/odoo#124255