Commit Graph
165732 Commits
Author SHA1 Message Date
Adrien Guilliams (adgu) 707d76eec1 [IMP] pos*: Remove info button and add self ordering availability
pos*: point_of_sale, pos_sale_product_configurator, pos_self_order

This commit removes the product info button and put a button on each
product card to open the product info popup.

The commit also adds a new field on the product template model to
track the availability of a product to the self ordering mode. This
field can be changed from the product form view or from the product
info popup directly in the POS. If the field is set to false,
the product will not be shown in the self ordering mode.

The commit also adds new filter and search fields on the product
list view in the backend.

closes odoo/odoo#136467

Task-id: 3515881
Signed-off-by: David Monnom (moda) <moda@odoo.com>
2023-10-03 19:20:08 +00:00
Romain Estievenart adba68440b [IMP] *: remove jQuery.nested_sortable
task-3439226

closes odoo/odoo#136375

Related: odoo/enterprise#47807
Signed-off-by: Pierre Paridans (app) <app@odoo.com>
2023-10-03 19:20:06 +00:00
Romain Estievenart a4b1c26813 [IMP] web_tour, website: use nested_sortable hooks instead of jQuery
Migrate the website usage of jQuery NestedSortable to the hooks
useNestedSortable

task-3439226

Part-of: odoo/odoo#136375
2023-10-03 19:20:06 +00:00
Romain Estievenart 25412e1afa [IMP] web: use the height of the element as the height of placeholder
With this commit we added the ability to use the real height of the
element as the height of the placeholder when we move an item when use
the DnD like jQuery NestedSortable did.

task-3439226

Part-of: odoo/odoo#136375
2023-10-03 19:20:06 +00:00
Romain Estievenart 12821933cb [IMP] web: implement allowed drop on nested_sortable
Like the jQuery NestedSortable, we implement the function `isAllowed`.
When you use the NestedSortable hooks, you can now specify a custom
function to verify if a drop location is allowed. By default, this
function is always true

task-3439226

Part-of: odoo/odoo#136375
2023-10-03 19:20:06 +00:00
Romain Estievenart 1dff3912cb [IMP] web: add a maxLevels params for nest mode on nested_sortable hooks
Add a maxLevels param like the jQuery.nestedSortable has. The goal of
this param is to set the maximum depth of nested items the list can
accept. If set to '0' the levels are unlimited, it's the default value.

task-3439226

Part-of: odoo/odoo#136375
2023-10-03 19:20:06 +00:00
Romain Estievenart 6f63e2349c [REF] web: use bootstrap class instead of css
Small code cleanup with using bootstrap class instead of custom css

task-3439226

Part-of: odoo/odoo#136375
2023-10-03 19:20:06 +00:00
Romain Estievenart 4e1ce46048 [REF] web: nested_sortable code cleanup (remove magic number)
Remove some magic number used by the code with using some browser
constant.

task-3439226

Part-of: odoo/odoo#136375
2023-10-03 19:20:06 +00:00
Joren Van OnderandRubi Navarro a506789f6c [IMP] l10n_br: update manifest description
Update the description of the Brazilian localization to reflect the
most recent changes that happened here. Also fix some wrong formatting
that made some parts render as quoted text.

closes odoo/odoo#135959

Signed-off-by: Josse Colpaert <jco@odoo.com>
Co-authored-by: Rubi Navarro (ren) <ren@odoo.com>
2023-10-03 19:20:02 +00:00
Joren Van Onder ed57fbc1cb [IMP] l10n_br: support LATAM document types
This implements common Brazilian document types and adds a
government-assigned Series field used to identify each journal.

Sequence names in the same journal must have their own, independent
numbering. Because of this _get_last_sequence_domain() was extended.

A non-stored related l10n_br_invoice_serial field was added to
account.move to allow a user in the Bookkeeper access
group (group_account_user) without access to journals to see the
number.

task-3507518

Part-of: odoo/odoo#135959
2023-10-03 19:20:02 +00:00
Josse Colpaert 1485692bb9 [IMP] l10n_latam_invoice_document: add all in the domain
For BR the same document type can be used for credit notes, debit
notes and regular invoices. There was no way to indicate that in the
internal_type field of the document type, so we wanted to add it in
the main module for simplicity.

Part-of: odoo/odoo#135959
2023-10-03 19:20:02 +00:00
Nishit Prajapati 231a59d3c7 [FIX] crm_iap_mine: fix the tour
Before this commit,
When we start the CRM tour it ends up with one step.

Reason:
after this PR https://github.com/odoo/odoo/pull/125716 the `steps` become empty when
splice() method returns an empty array if nothing was removed from the given array
which caused an issue see https://github.com/odoo/odoo/blob/master/addons/crm_iap_mine/static/src/js/tours/crm_iap_lead.js#L16.

After this commit,
The tour will run successfully.

Task:- 3495911

closes odoo/odoo#135433

Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
2023-10-03 19:20:01 +00:00
nikj-odoo bc953225dc [IMP] project_todo: improve todo title color and eliminate hover flicker
Before this commit, in the form view of todo the title was light grey and there
was a small flicker when hovering the title.

In this commit, the color of the title is changed to dark grey and flicker is
eliminated.

Task-347920

closes odoo/odoo#135247

Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
2023-10-03 19:20:00 +00:00
Antoine Boonen 2ae8f8ca61 [IMP] l10n_xx: Fiscal country codes XML code cleanup
Problem
---------
In master, XML attributes have been modifed from attrs={'invisible':...}
to invisible=. During the conversion, the condition where not properly
cleaned up.

Objective
---------
Clean up the XML attributes.

Solution
---------
Reduce conditions by removing unecessary elements:
    - `fiscal_country_codes` always returns at least an empty string.
    - All country codes are in capital letters, no need to `lower` them.

task-3493124

closes odoo/odoo#134329

Related: odoo/enterprise#46920
Signed-off-by: Josse Colpaert <jco@odoo.com>
2023-10-03 19:19:58 +00:00
Victor FeyensandMorgane Demesmaeker 6d1a78286a [ADD] sale_pdf_quote_builder:
When enable, this new feature adds the possibility to set a PDF header, footer and some product
documents to the quotation report.

These PDF can contains forms that'll then be filled using Odoo database.

This replace the previous sale quotation builder feature.

task-3249142

closes odoo/odoo#133773

Related: odoo/upgrade#5168
Related: odoo/documentation#5863
Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
Co-authored-by: Victor Feyens <vfe@odoo.com>
Co-authored-by: Morgane Demesmaeker <edm@odoo.com>
2023-10-03 19:19:57 +00:00
Victor FeyensandMorgane Demesmaeker 693b62f38e [REM] sale_quotation_builder
The value provided by the sale quotation builder feature is small due to many problems, and the
technical debt behind is high. For instance:

- The feature is nice but hidden: not visible on quotation, the most visible part is the button
"Design Template" on the quotation template (if you did activate the feature), it requires to have
eCommerce installed...

- The feature  relies on fields that are shared with eCommerce which leads to unwanted behavior:
e.g. updating the bottom of the product page in eCommerce will impact quotation html description on
the portal

- The feature works as template but it is unclear for users: updating the HTML description on a
specific quotation will only impact that quotation. Updating the HTML page of a quotation only
update this quotation

- The feature is technically complex

As we want to keep most of the value of the feature but reduce its complexity, we remove the
quotation builder feature that'll get replace with the PDF quote builder feature.

task-3249142

Part-of: odoo/odoo#133773
Co-authored-by: Victor Feyens <vfe@odoo.com>
Co-authored-by: Morgane Demesmaeker <edm@odoo.com>
2023-10-03 19:19:57 +00:00
luvi 5124feae97 [IMP] web, *: improve UX of custom group by menu
*: board, website

This commit simplifies the UX of the 'Custom Group by' menu. Before this
commit, many clicks were needed to apply another filter, from an accordion
menu.

Now, a select element is used instead, allowing a better user experience, by
enabling such group by directly, when an option is selected.

Some tests have been adapted to the new selectors and behaviors, and the
applyGroup and toggleAddCustomGroup has been removed, since groups are applied
when selected, and the value can be modified directly with selectGroup.

task-3458519

closes odoo/odoo#132006

Signed-off-by: Mathieu Duckerts-Antoine (dam) <dam@odoo.com>
2023-10-03 19:19:53 +00:00
Aditya Sharma 35bb9ffd52 [IMP] various: add minor UI improvements
PURPOSE

Slightly modify various apps to improve the user experience. Changes include
notably labels and views fine tuning, roundings, and small css fixes.

SPECIFICATIONS

- Remove the decorator from the event list view as it's a bit confusing
- Ensure mailing KPIs are now shown with 2 decimal places
- Re-order the mailing stat buttons
- Improve the background / font colors of the cover block
- Improve the labels of:
  - Title and confirm button of the /button and /link modals
  - Confirm button when archiving a record

Task-3204554

closes odoo/odoo#128108

Related: odoo/enterprise#43937
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
2023-10-03 19:19:52 +00:00
Didier (did) 8fa2a6fe11 [IMP] mail: search a discuss thread
See https://github.com/odoo/enterprise/pull/43980

task-2359037

closes odoo/odoo#118794

Related: odoo/enterprise#43980
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2023-10-03 19:19:50 +00:00
Didier (did) 7c4a8f6118 [IMP] web: improve like operators capabilities in the mock server
Before this PR, the `like` operators from the mock server could not handle
request using the `%`.
This PR introduce it.

Part-of: odoo/odoo#118794
2023-10-03 19:19:50 +00:00
Valeriya(vchu) 2114ad3a03 [IMP] website_sale: auto publish products
users who create products from the website are intended to make it visible immediately for customers
task-3234684

closes odoo/odoo#117884

Signed-off-by: Victor Feyens (vfe) <vfe@odoo.com>
2023-10-03 19:19:48 +00:00
Sahil Patel 854083f70a [IMP] survey: improve mcq design
Currently, in the survey for single/multiple choice questions, the layout is
not consistent. For example, if there are four choices available, the
layout is 3-1 (3 small options in the first row, 1 full-width option in the last
row). Apart from that, if the string for options is long, the radio/check
box comes at the bottom right corner, which should always be at the
top right corner.

This commit does the following improvements:

1/ Improve the choices layout to make it beautiful. now there will be only one
   answer per row similar to the 'One Page Per Question' layout.
2/ The radio / check-box icon will be displayed in the top right corner
   regardless of the length of the option strings.
3/ If there is one or more image(s) in the answers then we will follow 2x2
   layout instead of one row per answer.

TaskID-2712296

closes odoo/odoo#99229

Signed-off-by: Florian Charlier (flch) <flch@odoo.com>
2023-10-03 19:19:47 +00:00
nikj-odoo 4a1fed52db [ADD] project_todo: Add default 'reminder' action for 'todo' category type
Before this commit, when we set the activity type to 'todo' in our project, the
default action was set to 'none.' This configuration made the 'todo' category
type less intuitive and less useful.

In this commit, we have improved the default behavior. Now, when you select the
'todo' category type, it will automatically have the 'reminder' action assigned
by default. This change enhances user experience and ensures that 'todo' items
have a meaningful default action.

task-3500700

closes odoo/odoo#135767

Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
2023-10-03 17:53:17 +00:00
Saurabh Mishra 75a1e2a2d3 [FIX] stock: filter invalid input from domain
When the user tries to find the 'qty_available' of a product but gives
a string value instead of a float value in domain then the user will face error.

Steps to produce:
- Install `stocks`.
- Create a record rule for model `product.template`. In the domain of record
  rule keep [('qty_available', '<', '10')] as a domain,
  you can give any integral value in the domain but that value should be
  enterred as strings (with quotes).
- Inventory > Products > Products

Error: `TypeError: '<' not supported between instances of 'str' and 'float' `

After applying our commit, if the domain is Invalid then the user will face
`UserError`. There is a function named `_search_product_quantity`  which
initially checks if the domain is valid or not :
https://github.com/odoo/odoo/blob/5f1ad0c1e4c1e8ed41337ccd4c12e70c9c760c85/addons/stock/models/product.py#L342-L350
It will filter out all the invalid domain and clear search methods.
So now whenever `_search_qty_available` is called first the validity of domain
and operands of the expression will be checked.

sentry-4399815131

closes odoo/odoo#137367

X-original-commit: 92c232cca15517bd9a33a5100e7cdc42c3c25397
Signed-off-by: Tiffany Chang (tic) <tic@odoo.com>
2023-10-03 16:55:47 +00:00
aliya c23ab615d8 [FIX] account_peppol: fix settings text, search
The text should be update, since we do not review applications anymore.
Also, currently if a user types a random text in the settings' search bar,
Peppol setting appears. Peppol settings should be enclosed in `block` tags as all other settings.

task-3525510

closes odoo/odoo#137355

X-original-commit: 156b0c94c2c9cf26b1168864c723e2ad2d720311
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Signed-off-by: Aliya Tastemirova (alta) <alta@odoo.com>
2023-10-03 16:55:45 +00:00
Louis Baudoux 24b3d9799c [FIX] partner_autocomplete: fix res_partner_manyone widget
The `partner_gid` key isn't part of the response of the Autocomplete API
of Clearbit anymore, so we can't rely on its presence to know if the
suggestion comes from Clearbit or not.

Ticket #3321391

closes odoo/odoo#137354

X-original-commit: 63b8aa6b69d917c5c1cc83e11c530cd2fd665f25
Signed-off-by: Francois Georis (fge) <fge@odoo.com>
Signed-off-by: Louis Baudoux (lba) <lba@odoo.com>
2023-10-03 16:55:44 +00:00
Josse Colpaert 73de649796 [FIX] l10n_es_edi_sii: export regimen key should depend on taxes
We made it depend on the partner country, but it is better to
identify it through the tax being used.  E.g. it is only the
exportation of goods that is needed to change the regimen
and not the services.

We also needed to change the test, because we used E2 with
a Belgian partner.

opw-3514270

closes odoo/odoo#137184

X-original-commit: 14d5be171e238d7aa12f513659929b5b940eea78
Signed-off-by: William André (wan) <wan@odoo.com>
Signed-off-by: Josse Colpaert <jco@odoo.com>
2023-10-03 15:37:33 +00:00
Josse Colpaert ccd9dd7ca9 [FIX] l10n_es_edi_sii: intracom should be identified by tags, not country
We use the casilla 10 and 11 of the modelo 303 to identify intra-community
instead.

This way, the tax defines the regime that should be used.

opw-3514270

X-original-commit: eb287e911afc652c122b44c39af4b6d6b11bf618
Part-of: odoo/odoo#137184
2023-10-03 15:37:33 +00:00
Bruno Boi 00875e2654 [IMP] web: remove useless recompute position hook
This commit brings a simple improvement.
There is no need to reposition an element while
you are scrolling inside of it.

closes odoo/odoo#137139

Signed-off-by: Michaël Mattiello (mcm) <mcm@odoo.com>
2023-10-03 15:37:32 +00:00
Bruno Boi 2c7afe7fe2 [REF] web_tour: use OverlayContainer for pointers
**Before this commit**
The tour_service make use of a custom
main component TourPointerContainer.
But there is really no good reason it does.

**After this commit**
The tour_service now make use of the overlay service.
Advangates:
- same place in DOM for all piece of UI that overlays
  the other elements.
- should avoid potential stacking context issues
- removal of a useless component, less code to maintain

Part-of: odoo/odoo#137139
2023-10-03 15:37:32 +00:00
David Monnom (moda) 41713c5cce [IMP] pos_self_order: attributes choice in single page
Previously, attributes had to be selected one by one on different pages.
For each choice, you had to click on the next button.

Now, all product attributes are on the same page, simplifying selection.

closes odoo/odoo#137107

Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
2023-10-03 15:37:31 +00:00
Brieuc-brd 12031dd6b0 [IMP] website: adapt style of editable fields
This commit adapts the hover style of the editable fields elements to
match the new overlay style.

task-3368793

closes odoo/odoo#132653

Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
2023-10-03 12:52:33 +00:00
Brieuc-brd 3d1974543f [FIX] mass_mailing: adapt first/last drop zone position
Prior to this commit, the first drop zone at the top and the last one at
the bottom were half hidden.
This commit adapts their position in order to be fully visible.

task-3368793

Part-of: odoo/odoo#132653
2023-10-03 12:52:33 +00:00
Brieuc-brd 388c88eaf2 [FIX] web_editor: remove handle area's overlapping
Prior to this commit, the area of top and bottom handles overlapped the
content according to the size of the overlay border.

This commit changes the way height is calculated to remove this overlap.

task-3368793

Part-of: odoo/odoo#132653
2023-10-03 12:52:33 +00:00
Brieuc-brd 3af727c183 [IMP] web_editor: update overlay buttons
This commit adapts the draggable icon in the overlay button to improve
the readability.

This commit also adapts the "danger" background color of
`oe_snippet_remove` button to maintain consistency with the web editor.

task-3368793

Part-of: odoo/odoo#132653
2023-10-03 12:52:33 +00:00
Brieuc-brd 8ca644252e [IMP] website, web_editor: redesign the drop zone
This commit adapts the drop zone to maintain consistency with the style
of web editor.

task-3368793

Part-of: odoo/odoo#132653
2023-10-03 12:52:33 +00:00
Brieuc-brd 70f723a9f7 [IMP] web_editor: redesign the handle elements
This commit improves the design of handles, making them more user
friendly.

task-3368793

Part-of: odoo/odoo#132653
2023-10-03 12:52:33 +00:00
Brieuc-brd 8204d15822 [IMP] web_editor: redesign the grid layout
This commit improves the design of the grid layout to make it easier to
read.

task-3368793

Part-of: odoo/odoo#132653
2023-10-03 12:52:33 +00:00
Yosua Nicolaus 23b0d6f5a6 [IMP] account: improve invoicing tour
improve the flow of invoicing tour by:
- moving some bubble to a more clear position
- rewrite some text content
- delete some and add new tour step

closes odoo/odoo#132382

Task-id: 3468585
Signed-off-by: Quentin De Paoli <qdp@odoo.com>
2023-10-03 12:52:31 +00:00
Yosua Nicolaus 6db8079d7b [REM] account: remove useless fixme & extra_trigger
remove unrelevant FIXME from 1 year ago as it was not relevant anymore

Task-id: 2632645
Part-of: odoo/odoo#132382
2023-10-03 12:52:31 +00:00
Bruno Boi c4fb9c92d7 [FIX] web: remove popover unused style
The style was introduced with commit [1]
but then its only usage was removed in [2].

[1]: af89b46c5b
[2]: 59f4d112abf1eb175214614f9a84fc0c7a4af932

closes odoo/odoo#137309

X-original-commit: 22ccb0e795637864706a9933a23f605590a1f36e
Signed-off-by: Michaël Mattiello (mcm) <mcm@odoo.com>
Signed-off-by: Bruno Boi (boi) <boi@odoo.com>
2023-10-03 08:42:22 +00:00
Claire Bretton (clbr) 43b3abd3e2 [FIX] account: fix traceback on payment info button
Steps to reproduce:
1. Accounting > Invoices > click any unpaid invoice
2. Register Payment (doesn't matter if it's full or not)
3. Click the info (i) button next to the "Paid on" below invoice lines
-> Traceback
Before the traceback the unreconciliation button available was not
refreshing the view, which still appeared with "Paid on".
We fix both problems at the same time.

task-id:3516681

closes odoo/odoo#136383

Signed-off-by: Habib Ayob (ayh) <ayh@odoo.com>
2023-10-03 08:42:20 +00:00
std-odoo b56e6dfdcc [IMP] web: show properties sum in list view
Purpose
=======
Always show the sum of a property column if its type is integer or float.

When we group records we don't show the sum, because it will require
to be able to aggregate properties (`properties.xxxxx:sum`) and the
technical cost is too big for the feature it gives.

Task-3468750

closes odoo/odoo#133700

Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
2023-10-03 08:42:19 +00:00
Carmen Bianca BAKKER c466b4751d [FIX] base: Prevent singleton ValueError on res.partner's barcode
Fixed the string en passant.

closes odoo/odoo#137356

X-original-commit: 56e44e157f316e7cb0edac7bd0976bea3cbf895c
Signed-off-by: Carmen Bianca BAKKER <carmen@coopiteasy.be>
Signed-off-by: Rémy Voet (ryv) <ryv@odoo.com>
2023-10-03 07:19:03 +00:00
Ali Alfie (alal) d58e0c43c7 [FIX] l10n_es_edi_facturae: change signature template
This commit fixes the signature in the export by:
- Changing the signature template to remove unnecessary transforms.
- Replacing SigningCertificateV2 with the correct tag. According to https://www.facturae.gob.es/formato/Paginas/politicas-firma-electronica.aspx the signature follows the XAdES ETSI TS 101 903 format which contains the tag SigningCertificate instead.
- Correcting the way the signature node was removed in the _get_uri_function.

closes odoo/odoo#137321

X-original-commit: e4d92f37da41e7e5efaeb82b4adfff669083fb23
Signed-off-by: William André (wan) <wan@odoo.com>
2023-10-03 07:19:01 +00:00
Ali Alfie (alal) ca797bb960 [IMP] l10n_es_edi_facturae: import facturae
Allows for importing FACe XML files.

task-3387230

X-original-commit: 6b970d73b8feac1903e271770f7df77fc2d96b71
Part-of: odoo/odoo#137321
2023-10-03 07:19:01 +00:00
Xavier-Do de13b9030b [FIX] lunch: remove freezetime class decorator
Using freezetime to decorate a TestCase can have strange effects.

It looks like an override but monkeypatching the
setUpClass/tearDownClass. It started breaking between python 3.10.6 and
3.10.12. See pr message for more details.

closes odoo/odoo#137215

Signed-off-by: Christophe Monniez (moc) <moc@odoo.com>
2023-10-03 07:19:00 +00:00
Xavier-Do b67f50a57a [IMP] tests: improve logging of active patcher
Part-of: odoo/odoo#137215
2023-10-03 07:19:00 +00:00
FrancoisGe 22f31a5d0c [FIX] web: external button in many2one field
The goal of this commit is to fix two problems in the Many2one field:
1. At setup, the field is considered to be isFloating when its value is false.
2. When "xxx" is encoded and "Create xxx" is selected, the field is still
   considered to be isFloating even the selection.

isFloating should only be true when the user is performing a search, when
they have made their choice isFloating should be set to false.

These problems should result in the external button not being displayed
in these two cases. Currently, the button is displayed correctly due to
a bug in owl. The bug in owl causes all Components that have executed
evaluateExpr with record.evalContext will be render each time record.update
is called. For example, for Many2oneField, it is the call to dynamic.context
in extractProps that will cause the rendering of the Component Field
containing Many2oneField. This will trigger a call to onWillUpdateProps
each time record.update is called, and will modify isFloating to make it correct.
In order to fix OWL without introducing any bugs, we're going to fix these problems.

How to reproduce after OWL is fixed:
====================================

Case 1:
------
- Go to a form view with an field "x" (with an onchange) and a many2one field
- Create a new record (the many2one field is empty)
- Edit field "x"
- The onChange returns a value for the many2one

Before this commit:
    The external button is not displayed

After this commit
    The external button is displayed.

Case 2:
------
- Go to a form view with a many2one field
- Insert "blabla" in the many2one
- Click on "Create blabla".

Before this commit:
    The external button is not displayed

After this commit
    The external button is displayed.

closes odoo/odoo#137212

Signed-off-by: Aaron Bohy (aab) <aab@odoo.com>
2023-10-03 07:18:59 +00:00
rupa-odoo 206cf98a8a [FIX] hr_timesheet: fix access rights of planned_hours
Before this commit, Even if the user doesn't have access to the timesheet still
user was able to see the "Allocated Hours" in Project tasks. which is part of
the timesheet.

After this commit, if the user doesn't have access to the timesheet then
the user won't be able to see the "Allocated Hours" in Project tasks.

task:3472646

closes odoo/odoo#137135

Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
2023-10-03 07:18:57 +00:00