Steps to reproduce the bug:
- Open the Menu Editor.
- Add a menu item.
- Type a URL (which will trigger the autocomplete).
- Bug: You can't select the last URLs in the autocomplete dropdown
because it goes off screen and can't be scrolled.
This bug was introduced by the commit [1]. Since this commit, all modal
dialogs are vertically centered, which is why the bug fixed in this
commit occurred.
[1]: https://github.com/odoo/odoo/commit/dd141a22f44ea88af18448c4a6089252daeba8cc
task-3580373
closesodoo/odoo#140846
X-original-commit: 23272e38d822c734d1ea2fdb404ba2b1d6890cb3
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
Signed-off-by: Benjamin Vray (bvr) <bvr@odoo.com>
Task Adhoc: 32844
Task Latam: 1053
Description of the issue/feature this PR addresses:
1. If the date is changed in the payment wizard don't update the check amount.
2. Payment currency should be the same as the check currency.
3. Warning in the payment register for example if the currency of the check is different than the currency of the payment.
4. Check on companies without country. Company without country should not use checks.
5. Not possible pay with a check with a date that is prior to the check creation date (vendor bill payment date should be after the Customer Invoice payment date when the check was created).
6. If the payment amount is changed and it does not match the check amount then a warning pops up.
Current behavior before PR:
1. If the date is changed in the payment wizard is updated the check amount.
2. Payment currency can be different than the check currency.
3. No warning in the payment register for example if the currency of the check is different than the currency of the payment.
4. Check on companies without country. Company without country can use checks.
5. Possible to pay with a check with a date that is prior to the check creation date (vendor bill payment date should be after the Customer Invoice payment date when the check was created).
6. If the payment amount is changed and it does not match the check amount then a warning not pops up.
Desired behavior after PR is merged:
1. If the date is changed in the payment wizard the check amount is not updated.
2. Payment currency should be the same as the check currency.
3. Warning in the payment register for example if the currency of the check is different than the currency of the payment.
4. Check on companies without country. Company with country can`t use checks.
5. Not possible to pay with a check with a date that is prior to the check creation date (vendor bill payment date should be after the Customer Invoice payment date when the check was created).
6. If the payment amount is changed and it does not match the check amount then a warning pops up.
closesodoo/odoo#140832
X-original-commit: 0c62f78759ee1a6447c7cacf857a9f45a702c3fb
Signed-off-by: William André (wan) <wan@odoo.com>
Whenever calling `_adapt` in `autoHideMenu`, whenever the odooEditor
is active, some mutations could trigger the unbreakable rollback of
the odoo editor. We should not check for unbreakable in `_adapt` as
the unbreakable mechanism is not meant to be used in that context.
task-3439226
closesodoo/odoo#139209
Related: odoo/enterprise#49220
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
Previously, we attempted to debounce in what appeared to be an override
of the onWillStart method, but this method doesn't actually exist on the
parent classes and as such is never registered with the onWillStart
hook. This commit fixes that by registering it in an override of the
setup method instead.
task-3439226
Part-of: odoo/odoo#139209
*: mrp_subcontracting, project, test_website, web, web_editor,
website_slides
This commit removes jQueryUI autocomplete that was the last usage of
jQueryUI.
No longer usage of these features inside the codebase
task-3439226
Part-of: odoo/odoo#139209
Adapt the website industry selection autocomplete inside the
configurator to use the autocomplete owl component instead of jquery
autocomplete
task-3439226
Part-of: odoo/odoo#139209
*: web, website, website_form_project
Remove the jQuery UI Widget `urlautocomplete` by using made some
refactor to allow usage of the owl component.
task-3439226
Part-of: odoo/odoo#139209
When creating a sub company with l10n_ar, we
get a ValidationError due to the check on
existing accounting entries on root company.
Steps:
- Create a new company with l10n_ar, and
create some moves
- Create a branch for the company and save
-> ValidationError: "Could not change the AFIP
Responsibility of this company because there
are already accounting entries."
In `account.res_company._existing_accounting`,
we check if there are existing move lines in
both parent and child companies, while we would
like to check only new company when it is calling
from `l10n_ar.res_company._check_accounting_info`.
With this commit, we change just change the domain
and use `self.id` instead of `self.root_id.id` and
we call `_existing_accounting` with `root_id` where
needed.
opw-3572926
closesodoo/odoo#140795
X-original-commit: 575971458d454d546d967ec4141d8c47fc28e666
Signed-off-by: William André (wan) <wan@odoo.com>
Signed-off-by: Guillaume Vanleynseele (guva) <guva@odoo.com>
Before this commit:
The logic used to count the number of RTC Sessions was incorrect. Which led to
multiple sounds being played sometimes. Etc, on start a meeting
After this commit:
Corrected the RTC Sessions counting logic.
closesodoo/odoo#140628
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
1. `searchPartnerSuggestions` uses`authorizedGroupFullName` to see
if the channel is public or not
2. `filteredThreads` and `getThreads` uses `hasSelfAsMember`
and `is_pinned` along with the channel type
3. search should use `displayName` otherwise the search on group
with default empty name will fail
4. fix tests.
closesodoo/odoo#140495
X-original-commit: b358c410988686610638e7ffbee1fbbbeff5f0ba
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Problem
---------
When creating and editing a bank account, a creation model pops-up to
edit the bank account information. The previously entered bank account
must be entered again which isn't user-friendly.
Objective
---------
The data entered on the bank account bank account should pre-fill
acc_number on partner bank pop-up.
Solution
---------
When create & edit, `name` could be used to pass (in the context) the
value input by the user. However, we want to set the default value of
`acc_number` variable instead. By overriding the default_get method,
we can get modify the context to do just that.
task-3557753
closesodoo/odoo#140725
X-original-commit: aa28b0fbba97b1528ad6a6ad27813c44125e8d48
Signed-off-by: Wala Gauthier (gawa) <gawa@odoo.com>
Signed-off-by: Antoine Boonen (aboo) <aboo@odoo.com>
This commit sets `s_text_cover` default color preset to `o_cc4` to make
it look more like the header of "Anelusia theme" that was the initial
reference for the design of this snippet.
It also fixes a typo in `o_ccx` class introduced in commit [1] at the
same time actually.
[1]: https://github.com/odoo/odoo/commit/5ac340b1b27c9527463e2eed65fe2e7768b36702
task-3568868
closesodoo/odoo#140721
X-original-commit: 66f63ab23159fae86ba81369287e1cf8aac66d87
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
This commit fixes the issues related to the category selector. The issues are
very obvious when switching browser (e.g. Firefox or Safari). The width of the
container containing the category image thinks that its width should be the
original width of the contained image. This is a quick fix which sets a
max-width of 100px on the container (which is approximately 75% of the image
width matching the 75% height set on the image).
Additionally, we hide the image when the category panel becomes to thin.
Check the PR for screenshots of before and after the fix.
Original PR: https://github.com/odoo/odoo/pull/140720closesodoo/odoo#140720
Signed-off-by: Vlad Stroia (vlst) <vlst@odoo.com>
Since #104741, `Field.states` is no longer supported, remove the
documentation associated. We cannot remove the attribute
from Field because it is used in the migration script.
closesodoo/odoo#140694
Signed-off-by: Raphael Collet <rco@odoo.com>
Before this commit, the install prompt was half shifted out of screen.
After this commit, the install prompt is not shifted anymore.
closesodoo/odoo#140659
Signed-off-by: Luca Vitali (luvi) <luvi@odoo.com>
In this commit, we solve the issue that the tracking_number was not
showed on the ticket_screen when the order was in an other state than
paid. This is solved by computing the tracking number in the frontend
as we have all the informations needed for that.
closesodoo/odoo#140650
Related: odoo/enterprise#49997
Signed-off-by: Robin Heinz (rhe) <rhe@odoo.com>
pos*: point_of_sale, pos_discount, pos_restaurant, pos_sale
In this commit, we add the special product list to pos_config. This
is done so that we can see if the db has any product other than the
special ones to display the message to the user to create product or
not in the PoS.
Part-of: odoo/odoo#140650
When validating a draft transfer. Currently it says that we don't
have quantity. So when validating a draft, set the quantity to
initial demand and validate
Also, if a move is created through RPC with a quantity, auto-confirm the
move, regardless of its initial demand.
closesodoo/odoo#140578
Signed-off-by: Arnold Moyaux (arm) <arm@odoo.com>
We now have the possbility to publish modules that only contains XML on
apps.odoo.com and we want to display in the apps of the database to ease
the installation.
TASK-3186716
closesodoo/odoo#140245
Signed-off-by: Pierre Masereel (pim) <pim@odoo.com>
This rearranges the non-floating toolbar buttons so that the AI, animate
and highlight buttons are grouped together at the bottom and take up the
full width of the toolbar, and so that the options appear below them.
task-3572337
closesodoo/odoo#139857
Signed-off-by: Geelen Sébastien (sge) <sge@odoo.com>
When selecting an alternative in the AI Copywriter dialog, what we store
in the state is the index of the message. But that targets a different
message every time we add each new message at the start of the list.
This pushes new messages at the end of the list and only displays them
in reverse order, but also adds an ID to each message so they can be
targeted more robustly.
Part-of: odoo/odoo#139857
When inserting generated content in the editor, a frame is added around
the content to highlight it for a moment. This frame was not properly
positioned in the website builder. This also restyles it to match the
style of the "DRAG BUILDING BLOCKS HERE" frame.
task-3572397
Part-of: odoo/odoo#139857
With this commit, opening the ChatGPT alternatives dialog still
generates three alternatives, but whenever the user clicks on one of the
buttons:
1. one new version is generated (rather than three)
2. this new version is added at the top of the list (rather than
replacing everything)
3. older versions are showed in grey so as to differenciate them from
the new one
4. a badge next to each version shows which instruction was used to
generate it (shorten, lengthen, etc.)
Since we add new versions from bottom to top, the spinner is now shown
above the existing versions.
Since a badge is added, it's not necessary to keep the last used button
green anymore so once the AI is done generating the new version, the
button returns to its blue state.
task-3572397
Part-of: odoo/odoo#139857
This implements a way to abort the generation of a batch of alternatives
by the AI Copywriter. This is needed because if a batch was being
generated when the user clicked one of the buttons to select a mode, it
continued to be generated and to update the state while the new batch
was in the making, resulting in a potential total of more alternatives
than requested.
task-3572397
Part-of: odoo/odoo#139857
Sometimes, ChatGPT includes a little intro text (eg, "Sure, here are
some alternatives:") to its answer. This avoids this as much as possible
by improving the system prompt and asking to wrap the answer in tags
that we then remove.
task-3572397
Part-of: odoo/odoo#139857
Scenario:
- go to a model in technical
- create a new field and set "Related Field" to id
=> error "Unknown field name 'id' in related field 'id'" because we
get the field in self.model which is not present in the form view.
Fix:
Fallback to self.model_id.model as was the case before 16.0 commit:
76f699ca0b
Note: without the change, the added tests fails with:
Warning Unknown field name 'id' in related field 'id'
AssertionError: False != 'integer
opw-3138440
closes#112495closesodoo/odoo#140583
X-original-commit: aa406352541abd8bbf188da84fc4e370029ffc12
Signed-off-by: Rémy Voet (ryv) <ryv@odoo.com>
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
To reproduce
========
- having eCommerce installed
- let's take a product with price 1 000$
- for simplicity let's say 1$ = 0.5€
- make two orders for the product in € and $
- first order will be 1 000$
- second one will be 500€
- send the digest email
- the email shows total eCom sales = 1 500$
Problem
=======
- the total amount is a sum between $ and € which gives a wrong value
Solution
========
use `price_subtotal` from `sale.report` that has the convertead value instead
opw-3518064
closesodoo/odoo#140549
X-original-commit: d3b4203287f0fafd359913dedfaf130190751b92
Signed-off-by: Antoine Vandevenne (anv) <anv@odoo.com>
Signed-off-by: Abdelouahab Laaroussi (abla) <abla@odoo.com>
We need to filter out records without `request_date_from` and
`request_date_to` to avoid the error:
```
File "/tmp/tmpiaelju95/odoo/17.0/addons/hr_work_entry_holidays/models/hr_leave.py", line 180, in write
stop = datetime.combine(max(stop_dates) + relativedelta(days=1), time.max)
TypeError: '>' not supported between instances of 'datetime.date' and 'bool'
```
Issue observed in test upgrades of `l10n_hk_hr_payroll`
closesodoo/odoo#140286
Signed-off-by: Sofie Gvaladze (sgv) <sgv@odoo.com>
This commit fixes an accessibility issue about a link which does not
provide any visual feedback to the user who would hover it.
Prior to this commit, this link did not provide any visual feedback,
due to the lack of `cursor-pointer` BS class or `btn-link` styling.
The easiest way to fix this is to add a `cursor-pointer` class to the
link. We could have turned the link into a button with `btn btn-link`
classes but this would requires more layout and design adjustments.
task-3573737
closesodoo/odoo#140148
Signed-off-by: Sofie Gvaladze (sgv) <sgv@odoo.com>
This commit reduces the size of the icons used for the employee presence
status.
Prior to this commit, these icons were using a rule to define if they
should be diplayed in large or not, by checking the html tag of the
element they are in.
These icons were also styled with custom CSS to adjust their size, while
classes like `fa-lg` could eventually provide a workaround.
This approach was causing issues especially in kanban cards, were these
icons would appear massive and cause visual cluttering.
To improve the render of these inside cards, we simply remove the
custom styling applied to these icons.
task-3573702
closesodoo/odoo#140139
Signed-off-by: Sofie Gvaladze (sgv) <sgv@odoo.com>
When decreasing the qty of a subcontracted POL, it can create an
unexpected receipt
To reproduce the issue:
1. Create a BoM for a subcontracted product P
2. Create and confirm a PO with 5 x P
3. Process the receipt
4. Return one
5. Update the POL qty to 4
Error: a new receipt is created for 3 x P. When updating the POL,
nothing should happen with the receipts
Updating the POL qty leads to the create/update of the related picking:
https://github.com/odoo/odoo/blob/1495b54aa452498c79f4178c2e38426b1b423e66/addons/purchase_stock/models/purchase.py#L426
And this will lead to `_prepare_stock_moves`:
https://github.com/odoo/odoo/blob/1495b54aa452498c79f4178c2e38426b1b423e66/addons/purchase_stock/models/purchase.py#L447-L450
Where we will define the values of the new SM (for the new qty).
However, there are two similar issues: to get the current qty, we
sum the quantities of the incoming/outgoing stock moves. But, the
condition is incorrect and we therefore consider the subcontracting
return as an incoming qty. So, this current qty is incorrect. Then,
we get the dest moves to compute some quantities to push/attach.
Here is the second issue, the filter condition to exclude the return
SM is incorrect: again, we don't exclude the subcontracting return
OPW-3515275
closesodoo/odoo#139957
X-original-commit: 7767c9e14230902826da3f17c94797b9698e11fa
Signed-off-by: Tiffany Chang (tic) <tic@odoo.com>
Signed-off-by: Adrien Widart (awt) <awt@odoo.com>
This commit resolves the issue that arises when a widget contains a
reload attribute but lacks a no-preview attribute. That config leads to
an "Uncaught Promise" error. With this update, when a reload attribute
is detected, the no-preview attribute is now automatically added,
preventing the error from occurring. The problem occurs since [1].
Steps to reproduce:
- Go to website
- Edit
- Click on the header
- In the navbar options, change the Mobile Alignment option.
=> Works but traceback anyway.
[1]: https://github.com/odoo/odoo/commit/fcb16a3b1bd373726ffb54f0fbe41fb6d1784769
task-3572334
closesodoo/odoo#139909
Signed-off-by: Quentin Smetz (qsm) <qsm@odoo.com>
Purpose
=======
This task answers two use cases making text filters more useful and easier to
use:
Always using the same few values
--------------------------------
The text filter allows to type any arbitrary text. However, some users will
always use the same few values. They will always again and again type the
same values, every time they want to set or change the filter value. That's
cumbersome. There's also a risk of making a typo while typing.
Parametric dashboards
---------------------
Some dashboards are built to be parametric (our business analysts do that a
lot). e.g. They put the measure field in a cell, then reference that cell in
PIVOT functions. If you want to have the same dashboard, but with another
measure: just update the cell with the new measure and that's it.
In read-only mode however, you can't update that cell :(
But you can mimic a variable parameter with a text filter. Create the text
filter, then get the filter value in a cell with the function
=ODOO.FILTER.VALUE("..."). Now you can update the cell value by setting
different values in the filter input.
However, you need to know exactly what value would be correct/valid for the
parameter. Typing any arbitrary text would lead to errors or unexpected
results. Business analysts can know that kind of technical stuff, but
lambda users don't. The solution is currently to duplicate the dashboard and
change the cell value with the exact parameter value you want.
Specification
=============
In the filter config side panel, allow the user to restrict the set of
possible values to values in a range of cells in the spreadsheet. Let's say
A1, A2, A3 contains Paris, Brussels, Berlin. If the user chooses A1:A3 in the
side panel, the text filter input is no longer a free text input, but becomes
a select with the 3 cities.
If a value from the range is selected, then the cell with this value is
changed to another value: keep the previous selected value selected.
display the values with their cell format but use their raw format for the
logic behind it (using the value as a cell value from ODOO.FILTER.VALUE)
closesodoo/odoo#139191
Task: 3554062
Related: odoo/enterprise#49204
Signed-off-by: Rémi Rahir (rar) <rar@odoo.com>
[IMP] mail: add/modify activity client tests
We add a test that checks the rendering of the activity view and the activity
popover with activities done.
We also add a test that marks as done an activity and verify that the activity
view is updated accordingly.
And we do a correction in the test "activity menu widget: activity menu with 2
models" (assert.ok(selectContaining... was always true as an array is always
returned and [] is true in javascript).
[FIX] mail: fix invalid date done in the activity list popover
Date done field was in camel case instead of snake case leading to undefined
value and "Invalid date" in the interface.
Task-3558929
closesodoo/odoo#139373
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
We add a test that checks the rendering of the activity view and the activity
popover with activities done.
We also add a test that marks as done an activity and verify that the activity
view is updated accordingly.
And we do a correction in the test "activity menu widget: activity menu with 2
models" (assert.ok(selectContaining... was always true as an array is always
returned and [] is true in javascript).
Task-3558929
Part-of: odoo/odoo#139373
Date done field was in camel case instead of snake case leading to undefined
value and "Invalid date" in the interface.
Task-3558929
Part-of: odoo/odoo#139373
Since 40f0482b680a7872d338fa8fd10eec4663637b46, pricelist is no longer required.
Because of that, pos no longer needs to implicitly load a default pricelist when
"Flexible Pricelists" (use_pricelist) flag is active. Therefore, when
deactivating the option, we clear the value of pos.config.pricelist_id.
We also make sure that during loading of data when opening a session,
default_pricelist is not set if use_pricelist is false.
Also note that we are not clearing available_pricelist_ids because of some
limitation in the synchronization between res.config.settings and pos.config. It
should okay to keep the links because they won't be loaded when use_pricelist is
false. Also, it's nice to see the field filled when reactivating the flag.
closesodoo/odoo#140599
X-original-commit: 54a6f1688fb8d15b662848b03cecbe8236292d07
Signed-off-by: Robin Heinz (rhe) <rhe@odoo.com>
Signed-off-by: Joseph Caburnay (jcb) <jcb@odoo.com>
Steps:
- Open Project
- Create New Project
- Select the blank new project and click on see examples below the stage.
- This also appears in the existing project where you want to add more stages.
- A Kanban Examples popup view will open.
Issue:
- A scrollbar appears on the bottom left due to the long name of the example.
Cause:
- Due to the overflow property, when the name is long, it will automatically
create a scrollbar, making it look weird.
Fix:
- Add overflow-x visible in notebook It will counterbalance the overflow-x: auto;
rule used in the general (aka. horizontal) use case, and force the overflowing
element to take the space it needs, adjusting the headers column's width accordingly.
closesodoo/odoo#140590
Task: 3422009
X-original-commit: 4fff4fbb308bf411603cfc239e9f651598d0de78
Signed-off-by: Pierre Paridans (app) <app@odoo.com>
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
When we add a smart button on a contact tag related to contacts, the
button adds a default search filter that hides the related records
Steps to reproduce:
1. Install Contacts and Studio
2. Go to Contacts > Configuration > Contact Tags
3. Open tag "Vendor / Desk Manufacturers"
4. Toggle Studio
5. Add a button (at the top right of the form) related to field "Tags
(Contact)"
6. Close Studio
7. Click on the button
8. A list view of the related contacts opens but there is a filter that
hides the records
Solution:
Remove the `filter_domain` attribute on the field category_id and
replace it by the `operator` attribute in order to use the raw value in
the domain
Problem:
In `_getFieldDomain`, we replace the `self` in the domain by the
stringified id which essentially checks for a category that has a name
containing the id
opw-3471959
closesodoo/odoo#140564
X-original-commit: 18640a2ddddcf2ef90948295a41b0d7d30ec09e3
Signed-off-by: Rémy Voet (ryv) <ryv@odoo.com>
Signed-off-by: Guillaume Merlin (megu) <megu@odoo.com>
Steps to reproduce:
1- Install Sales and Events modules
2- Create a new Event and event registeration
3- Create a sale order for this event
4- Check the sales smart button in the event's form
5- Cancel the sale order and check the smart button
Current behavior before PR:
When you create a sale order for an event and then cancel it the value of this sale order will not be deducted from the sum of the sale values at the sale smart button in the event form.
Desired behavior after PR is merged:
When you cancel a sale order related to an event the sale smart button value will be updated
opw-3543943
closesodoo/odoo#140547
X-original-commit: b5554f6f7597b44adfa318655bab1eab19158303
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Signed-off-by: Youssef Bashandy (yoba) <yoba@odoo.com>