This commit removes some code that would allow one to define multiple
templates with the same name, and would cause the the last template with
a given name to override the previous one. This doesn't happen in
practice, nor should it, and the code that is used to allow it
repeatedly queries the document for a selector that is difficult to
process (selecting for elements with a specific attribute value,
especially when many elements in the document have that attribute).
A simple profile, with the crm and project apps installed, brings the
time that it takes to load the owl templates from ~200ms to ~35ms
closesodoo/odoo#132044
Signed-off-by: Francois Georis (fge) <fge@odoo.com>
When processing a batch without backorder, if a picking is not fully
done, it will be removed from the batch
To reproduce the issue:
1. Create two delivery pickings P1 et P2 with demands = 5
2. Have the quantity in the stock
3. Add both to a batch and confirm it
4. Set the done quantity on P1
5. On P2, set a done quantity to 4
6. Process the batch without backorder
Error: Both pickings are done, and so does the batch, but P2 is not
linked to that batch anymore
When processing the batch, we will call `button_validate` on the
pickings recordset
https://github.com/odoo/odoo/blob/213b74be16cecc50e6e99c00f47786a9cbf327a8/addons/stock_picking_batch/models/stock_picking_batch.py#L252-L258
Later on, there is an override of `StockPicking._action_done` in the
batch module. In this override, once we have called `super`, we then
ensure that all pickings of the batch are done, else we detach some
of them:
https://github.com/odoo/odoo/blob/213b74be16cecc50e6e99c00f47786a9cbf327a8/addons/stock_picking_batch/models/stock_picking_batch.py#L252-L258
But here is the issue: as mentionned above, we first call
`button_validate` on pickings recordset. In this method, we will
call `StockPicking._action_done` two times:
https://github.com/odoo/odoo/blob/ca168f7fbcbb8a300a8fa0b46f79a6c116b5aa93/addons/stock/models/stock_picking.py#L1088-L1089
The first time, for the pickings without the backorder option (P2 in
the above use case), and the second time, for the pickings with the
backorder option (P1 in the above use case). As a result, during the
first call, we reach the override in batch module, and of course, P1 is
not yet processed (it will be done during the second call of
`_action_done`). Therefore, we think there is an inconsistency, and we
detach P2.
OPW-3346255
closesodoo/odoo#132037
X-original-commit: c2817285adf9dd44ad7155963f08d324995ba072
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Signed-off-by: Adrien Widart (awt) <awt@odoo.com>
When the partner is missing, the error message is not clear enough.
This commit adds a new error message to clarify the issue.
Task ID: 3438559
closesodoo/odoo#132029
X-original-commit: 5be853ebb6da19a4f0a147944995583e234bf1b9
Related: odoo/enterprise#45779
Signed-off-by: Laurent Smet (las) <las@odoo.com>
Signed-off-by: Naceur Amine Saddem (sana) <sana@odoo.com>
This commit fixes the layout of the BOM control panel.
task-3419079
Part of task-3326263
closesodoo/odoo#132025
X-original-commit: c0fac4b7b8b66315a553337956999d8eb602ac13
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
The call to super was wrong, it was called in the old way this._super().
This has now been corrected with the new method
super().`function name`()
closesodoo/odoo#132022
Signed-off-by: Adrien Guilliams (adgu) <adgu@odoo.com>
PR #106911 added the new picking.type for repair and hide the
`show_operations` field from its form view. Unfortunately this writes
over the existing invisible attr for mrp_operation (depending on the
order of module installation, otherwise mrp will do the same to repair).
Therefore we update the attribute logic to only include the picking
types that should have the field visible (incoming, outgoing, internal,
and dropship).
closesodoo/odoo#132012
X-original-commit: 1688a8d82ce7aec32f17fc8c35295cccbb682dd6
Signed-off-by: Steve Van Essche <svs@odoo.com>
Signed-off-by: Tiffany Chang (tic) <tic@odoo.com>
This commit adds alias table to be sure the `analytic_distribution`
column will not be ambiguous because another table could have the
same column name.
closes#121611closes#110291closesodoo/odoo#131991
X-original-commit: 253479633b32383e141fe2ca2ca7395f22651485
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
before this commit, if the user profile is opened
from a particular forum, the votes tab is displaying
the votes from all the forums for this user.
where us, the questions and answers tab is filtering
the data based on the selected forum.
after this commit, the data displayed in the votes
tab will also be filtered based on selected forum,
similar to questions and answers tab.
closesodoo/odoo#131487
X-original-commit: ae33d2e3832cc2ce5597a6727fd44c9d745d36c5
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
before this commit, _rec_name was not added for
slide.channel.partner
after this commit, _rec_name is added
closesodoo/odoo#123800
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
This fixes a bug when you change currency on an already saved expense
due to the fact that the unit_amount is never recomputed but used to
generate the move line balance
Step to reproduce:
- Duplicate an existing expense paid by an employee
- Change currency + save
- create -> post expense report
- The total amount and remaining amount do not match
closesodoo/odoo#131709closesodoo/odoo#131818
X-original-commit: e0bceb37ee7656c37ab99a4a4bb3b71d85199e1b
Signed-off-by: Josse Colpaert <jco@odoo.com>
Signed-off-by: Julien Alardot (jual) <jual@odoo.com>
Before this commit
==================
COA for CGST-SGST, IGST, CESS & RC Tax was not properly set in the distribution
for refunds.
After this commit
=================
COA for CGST-SGST, IGST, CESS & RC Tax in the distribution for refunds has been
updated according to the attached spreadsheet.
task - 3284312
closesodoo/odoo#131595
X-original-commit: 6a67b7055c2c53fae2462c70cb5899f372365661
Signed-off-by: Laurent Smet (las) <las@odoo.com>
before this commit, on expense report kanban view
after adding group by status, it allows the
to quick create expense report in approved
status.
after this commit, quick create is disabled
closesodoo/odoo#131579
X-original-commit: 6848d8e37d1bce0cb767ba9328b38038b6056e77
Signed-off-by: Laurent Smet (las) <las@odoo.com>
before this commit, on posting journal entry from
the expense it shows a warning in the log.
*warning in the log*
Action {6: account.move(49,), 'type': 'ir.actions.act_window_close'} contains custom properties 6. Passing them via the params or context properties is recommended instead
after this commit, on posting journal entry
warning wont be displayed in the log
closesodoo/odoo#131444
X-original-commit: 00b09c548b0a01191bea20584193da6a02681a36
Signed-off-by: Laurent Smet (las) <las@odoo.com>
__Current behavior before commit:__
If there is no link in one of the hamburger menu element,
`el.querySelector` will return `null` and an error will be thrown when
it tries to access `classList`.
__Description of the fix:__
Add a check on `itemLink` and `navLink` before accessing `classList`.
__To reproduce:__
1. Add 2 pages with long names to the website, make sure they are
included in the navbar
1. Open Website Editor
1. Click on the navbar
1. In the **CUSTOMIZE** tab, inside the **Navbar** section, change
**Mobile Menu** to `Off-Canvas`
1. Set **Mobile Menu > Off-Canvas Logo** to `Text`
1. Reduce the width of the page *just enough* so that the hamburger menu
appears instead of the navbar menus only when the web editor is on
1. Click on the hamburger menu, and remove the link of the "My Website"
text at the bottom
1. Exit the Web Editor
([Video](https://watch.screencastify.com/v/dWI3g6NnT5uRcp2KmBOO))
opw-3443200
closesodoo/odoo#131373
X-original-commit: 5b9eb3a1d016a16d395e9888ccd1606543eb99e2
Signed-off-by: Luca Vitali (luvi) <luvi@odoo.com>
The goal of this commit is to convert a bunch of legacy dialogs into owl dialogs.
closesodoo/odoo#131278
Task-id: 3453920
Related: odoo/enterprise#45484
Signed-off-by: Samuel Degueldre (sad) <sad@odoo.com>
This traceback raises when user tries to 'Send & Print' the invoice of sale
order having a discount of 100%.
Steps to reproduce:
1) Install "l10n_es_edi_facturae" & "sale_management" and switch to "ES Company".
2) Open "Sales" > "Configuration" > "Settings" and click on
"Discounts" checkbox > "Save" button to activate it.
3) Now click on "Orders" > "Quotations" button and then "New" button .
4) Select any "Customer" and in "Order Lines" select a "product" with
"Invoicing Policy" as 'Ordered quantities' (ex. 'Chair floor protection').
5) Now, in that 'Sale order line' enter the value of 'Disc.%' as '100' .
6) Click on "Confirm" button and then "Create Invoice" button.
7) In "Create Invoice" Wizard, select "Regular Invoice" if not >
"Create Draft Invoice" button.
8) In "Customer Invoice", click on "Confirm" button > "Send & Print" button.
9) In "Configure your document layout" wizard, click on "Save" > "Send & Print".
Error: ZeroDivisionError: float division by zero, is generated from
"_l10n_es_edi_facturae_inv_lines_to_items" method.
See: https://github.com/odoo/odoo/blob/b5c19d368339f9d2b7af6e61e88a918d6ba318ee/addons/l10n_es_edi_facturae/models/account_move.py#L195
It gets the value of "line.discount" as 100, so the overall value of
"(1 - line.discount / 100.0)" becomes Zero and it tries to divide
"line.price_subtotal" by 'Zero', that's why this error is coming.
sentry-4325625223
closesodoo/odoo#131029
X-original-commit: 363e679601920f1a5a1fd6e1021521dae2a76714
Signed-off-by: de Wouters de Bouchout Jean-Benoît (jbw) <jbw@odoo.com>
Signed-off-by: Mohit Beniwal (mobe) <mobe@odoo.com>
This commit removes the 'none' figure_type from the account_tax_report
because it is redundant since other figure_types have been added.
Especially 'string' which practically does the same thing.
task ID: 3434197
closesodoo/odoo#130166
Related: odoo/enterprise#44833
Related: odoo/upgrade#5010
Signed-off-by: Josse Colpaert <jco@odoo.com>
This patch aims to fix multiple issues with the removal of table
constraints at module uninstall.
1. We cannot remove `ir.model.constraint` records before calling
`_module_data_uninstall` on them. Otherwise we either won't find them
when performing the search
`self.env['ir.model.constraint'].search([('module', 'in',
modules.ids)]` or, if we somehow keep the ids and use `browse`
instead, would get an error because `_module_data_uninstall` tries to
access field values of records already removed. Note, although not an
issue, the removal is redundant for non FK constraints since
`_model_data_uninstall` already unlinks the record.
2. When a constraint has a name longer than 63 characters (Postgres
default) we would fail the check for the existence of the constraint
since the names are truncated.
3. When checking for the presence of a constraint we assumed its type
would be `u` in `pg_constraint` because for us that means non FK
(i.e. not `f` type). That's incorrect since there are many more
types. Here we propose to handle `c,u,x` types.
For bullet 2 we use `tools.make_identifier` that hashes the name and
ensures it fits in the 63 chars limit.
Revert "[IMP] models: warn if constraint key len exceed 63"
The check from commit 823d9e10dc is no
longer needed since the name is ensured to fit length limit.
[IMP] code: improve uninstall tests
Perform extra checks for removal of SQL constraints. Note the test is
commented out in `__init__.py`. It can be uncommented locally for
testing. It's kept commented out to avoid random errors in runbot.
closesodoo/odoo#129084
X-original-commit: af288b7178c25261329dd85a2e64b9dd635cd9e1
Signed-off-by: Raphael Collet <rco@odoo.com>
Purpose of this commit to remove `attendee_status` field
which was only usefull in one place where it can be easily
replacable and also this field contains some heavy
computation and added in calendar view which might be
cause some perfomance issues.
So, in this commit remove `attendee_status` field and its
related code and replace it be alternative which gives
desire output as before.
task-3390334
Part-of: odoo/odoo#126768
The purpose of this PR is to improve the generic usage of the project app.
So in this PR done following changes:
- In reporting > tasks analysis measures:
- removed the # of tasks and average rating measures
- Changed rating value (/5) to rating (/5)
- In task analysis reporting formatted overtime as hh: mm
- In the project burndown chart added tip to action helper
- In project.task search view > quick searches:
- changed sale order to sales order
- under the SO one, a 'sales order item' has been added to the quick search
- Added many2one_avatar_employee widget in project sharing-> timesheets notebook
- In project.project form view > share editable added text in muted
- Added tip in the project.project form view > invoicing notebook under
employee/SOL o2m
- A placeholder has been added to the rating email template field in the project
task stages: 'Task: Rating Request'
- now rating submission page is editable
- In task stages list view :
- moved the project field on the right of the name
- switched the 'SMS template' and 'email template' fields from the place
- In project.task > recurrence notebook:
- moved the 'next tasks' list to the right of the recurrence
configuration fields
- In project.task > sub-tasks notebook > optional fields >
renamed 'initially planned hours' into 'allocated hours'
- In project.task portal form view: renamed
'history' into 'Message and communication history'
- Added 'open' filter in my tasks menu search view
- Added 'schedule an activity' status in the kanban activity widget
task-2903637
closesodoo/odoo#95971
Related: odoo/enterprise#29467
Related: odoo/upgrade#4095
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
The purpose of the commit is to improve the share template
messaging and ui.
so in this commit did the following changes:
- In invitation email template made some changes as follows:
- You have been invited -> Mitchell Admin has invited
- following document -> following project(record description)
task-2903637
Part-of: odoo/odoo#95971
This commit's purpose is to allow the overwrite of a condition inside
the action_launch_stock_rule in order to ensure the data to be corretly
updated in the flow of the industry_fsm_stock
task:2720328
closesodoo/odoo#114757
Related: odoo/upgrade#3607
Related: odoo/enterprise#23000
Signed-off-by: Xavier Bol (xbo) <xbo@odoo.com>
Steps to reproduce
==================
- Go to Payroll > Payslips > All Payslips
- Click on any line
- Click on the cog > Edit Payslip Lines
- Change an amount
- Press Tab
```
Cannot read properties of null (reading 'value')
at commitChanges (/web/static/src/views/fields/input_field_hook.js:163)
...
```
Cause of the issue
==================
A custom Field is used: PayslipLineField.
It is used to override the record.update to trigger an action.
https://github.com/odoo/enterprise/blob/f8c027685a49fca519fd6ac2f41dd5f30b243934/hr_payroll/static/src/js/payslip_line_one2many.js#L63-L80
This causes the view to be destroyed -> `inputRef.el` becomes undefined.
Solution
========
Use the field value before the update.
opw-3434835
closesodoo/odoo#131971
X-original-commit: 546978c70f5bee59b9985246977585ef59d761cd
Signed-off-by: Francois Georis (fge) <fge@odoo.com>
Signed-off-by: Hubert Van De Walle <huvw@odoo.com>
Steps to reproduce (on Chrome with browser cache enabled):
- Go to website > Create a new blog post.
- Switch to edit mode > Add an image to the blog cover from unsplash.
- After save, switch to a secondary language > Unsplash images disappear
and you need to refresh the page to get them to appear.
This behaviour is a "very specific" Chrome related issue: when switching
language, Chrome cannot load inline background images correctly right
after the redirect... and unlike other image URLs, background images
don't have the language code prefix (The `url_for()` will add the
language code before the image "src" E.g. `<img src="/unsplash/...."/>`
=> `<img src="/fr_BE/unsplash/...."/>` when switching to `fr_BE`...).
The goal of this commit is to prevent this behaviour by adapting the
"background-image" URLs in the same way as image "src".
opw-3412961
closesodoo/odoo#131891
X-original-commit: 5f20f50f9a9fd4bc5145d380609cdca80a8d7511
Signed-off-by: Romain Derie (rde) <rde@odoo.com>
before this commit, vendor product name and
vendor product code was not added in
vendor pricelists search view
after this commit, vendor product name
and vendor product code is added
closesodoo/odoo#129301
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Change version of Chart.js from V2.9.3 to V4.3.0
You can find changelog on
https://www.chartjs.org/docs/latest/migration/v4-migration.html
Version 4.3.0 of chart.js no longer uses moment.js. This task is a
prerequisite to completely remove the use of moment.js (task 3391739)
Why add aspectRatio : 2 ? => Canvas aspect ratio (i.e. width / height,
a value of 1 representing a square canvas). Note that this option
is ignored if the height is explicitly defined either as attribute
or via the style. The default value varies by chart type; Radial charts
(doughnut, pie, polarArea, radar) default to 1 and others default to 2.
Why no more Chart.animationService.advance(); ?
There is no longer an equivalent in this version.
However, we have verified that the problem is no longer present in this
version.
Why use now getElementsAtEventForMode ?
It's clearly noted in the changelog. follow the link above.
task-3392075
closesodoo/odoo#127259
Related: odoo/enterprise#45679
Signed-off-by: Lucas Lefèvre (lul) <lul@odoo.com>
Change version of Chart.js from V2.9.3 to V4.3.0
You can find changelog on
https://www.chartjs.org/docs/latest/migration/v4-migration.html
Version 4.3.0 of chart.js no longer uses moment.js. This task is a
prerequisite to completely remove the use of moment.js (task 3391739)
Why add aspectRatio : 2 ? => Canvas aspect ratio (i.e. width / height,
a value of 1 representing a square canvas). Note that this option
is ignored if the height is explicitly defined either as attribute
or via the style. The default value varies by chart type; Radial charts
(doughnut, pie, polarArea, radar) default to 1 and others default to 2.
Why no more Chart.animationService.advance(); ?
There is no longer an equivalent in this version.
However, we have verified that the problem is no longer present in this
version.
Why use now getElementsAtEventForMode ?
It's clearly noted in the changelog. follow the link above.
task-3392075
Part-of: odoo/odoo#127259
The `quant_id` field on stock move line is a technical one to show
available quants to pick in the detailled operation view. It's not a
real field in database thus is not intended to create quant from it.
This commit adds the `{'no_create': True}` option in the view
Task : 3430500
closesodoo/odoo#131789
X-original-commit: 24041891811bb9805246115f99908a51ffa3697a
Signed-off-by: Tiffany Chang (tic) <tic@odoo.com>
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Since the new Relational Model (PR 114024), it was no longer possible to
remove a product from the Product Catalog view. This commit adapts the
ProductCatalogModel to the new model.
closesodoo/odoo#131734
Signed-off-by: Samuel Degueldre (sad) <sad@odoo.com>
This commit removes the legacy service classes:
- AbstractService
- AjaxService
- AbstractStorageService
- LocalStorageService,
- SessionStorageService
Only AjaxService was still used as a service so it is moves in the
"common_env" file.
task 3439226
closesodoo/odoo#131683
Signed-off-by: Samuel Degueldre (sad) <sad@odoo.com>
This commit fixes an issue in the demo data leading
to a crash when consulting the ratings on the website.
Steps to reproduce:
- Go to livechat channel form
- Click on "Go to website"
- Error 500
closesodoo/odoo#131640
X-original-commit: 04b6831816425592b9ab9077c6d0caf20b95c93e
Signed-off-by: Didier Debondt (did) <did@odoo.com>
Signed-off-by: Matthieu Stockbauer (tsm) <tsm@odoo.com>
remove the condition where a many2one field can't be opened when the field is using the many2one_avatar (and its descendant) widget
closesodoo/odoo#131337
Task-id: 3454944
Signed-off-by: Francois Georis (fge) <fge@odoo.com>
A cron `Base: Auto-vacuum internal data` is running, which is performing
`auto_vacuum`. When the time limit exceeds 10 secs, we face the above issue.
Error: LockNotAvailable: canceling statement due to lock timeout
This commit solves the above issue by rollback the statement if the
`auto_vacuum` time limit exceeds 10 secs.
sentry-3938940519
closesodoo/odoo#131193
X-original-commit: f3dc0e12ba22968697d75c011352c0df99d5b5ed
Signed-off-by: Fabien Pinckaers (fp) <fp@odoo.com>
Signed-off-by: Archana Vaghasiya (arva) <arva@odoo.com>
before this commit, warehouse and
location type was not added in
location search view
after this commit, warehouse and
location type is added
closesodoo/odoo#128236
Signed-off-by: William Henrotin (whe) <whe@odoo.com>
Formerly, using sudo() on a record had the effect of replacing the
current user with the superuser. But sometimes, knowing who the "real
user" was was necessary, so we needed to store it somewhere. This is
basically why the key `binary_field_real_user` was introduced in the
context: to keep track of who the user was before switching to sudo
mode.
Since 1e6c3bec2c, however, switching to
sudo mode no longer changes the current user; meaning that the
`binary_field_real_user` is no longer necessary.
This commit removes the remaining occurrences of the now useless
`binary_field_real_user` from the code.
* = hr, portal, web_editor
closesodoo/odoo#92032
Enterprise: https://github.com/odoo/enterprise/pull/27649
Related: odoo/enterprise#27649
Signed-off-by: Louis Wicket (wil) <wil@odoo.com>
Before this commit, when the user group calendar.event by private fields,
a bus notification is sent to exlain that private fields can't be displayed
and the private events are hidden from the result.
It was an issue in some views where group by private fields was used
by default and multiple notifications were displayed.
closesodoo/odoo#131970
Taskid: 3328718
X-original-commit: e3df5d96fc9ca6d7f400c2e0167ef53ebf7c524a
Signed-off-by: Arnaud Joset (arj) <arj@odoo.com>
This commit addresses an issue in the email templates where event start
days were being displayed incorrectly, particularly for events
scheduled at specific times in timezones that experienced day shifts
during UTC conversion. The previous implementation did not account for
the necessary UTC conversion, leading to misaligned event days in the
email content. This commit ensures that event start days are accurately
calculated based on the appropriate timezone conversion, providing
correct and consistent display of event information in the email
templates.
opw-3458837
closesodoo/odoo#131967
X-original-commit: 1e1781b6242b7b6be8d5a00b1c5270ae572b09b5
Signed-off-by: Arnaud Joset (arj) <arj@odoo.com>
Signed-off-by: Pedram Bi Ria (pebr) <pebr@odoo.com>
Purpose
=======
When the DOM changes, we recompute the popover position. This is useful
for most popovers, but when we have a form inside the popover (like the
properties definition) it can be very annoying to move the form while
the user fills it.
Task-3380176
closesodoo/odoo#128983
Signed-off-by: Warnon Aurélien (awa) <awa@odoo.com>
These taxes are archived by default to not clutter the database. They
will be activated on an as-needed basis by l10n_br_avatax.
Forward-port note: these taxes were converted from the XML approach to
the new CSV approach (see https://github.com/odoo/odoo/pull/110016).
task-2968770
closes#130799closesodoo/odoo#130968
X-original-commit: ce07781b7daac26f02b5d5a8295c1acc821ae3c1
Related: odoo/enterprise#45223
Related: odoo/enterprise#45321
Signed-off-by: Josse Colpaert <jco@odoo.com>
Signed-off-by: Joren Van Onder (jov) <jov@odoo.com>
The state and zip were incorrect for the given address. The zip being
wrong lead to errors during account creation in l10n_br_avatax.
task-2968770
X-original-commit: 2ca171061dcbc10a24bd7c69d82a83d4cfc4ba6f
Part-of: odoo/odoo#130968
If you have large amount of product.template records (e.g. over 40k),
`hr_expense` module can't be installed as you would get MemoryError. It
would consume all memory while computing `can_be_expensed` field.
For that, using `_auto_init` to make it less of a memory hog.
closesodoo/odoo#131954
X-original-commit: 1138a24760ad57cb9e9895926012d269b4e2bfb0
Signed-off-by: Habib Ayob (ayh) <ayh@odoo.com>
Currently there is the following problem in the document layout preview:
("Settings" app > "General Settings" > "Companies" section > "Configure Document Layout")
The address is displayed in the wrong place for the DIN5008 layout
(from the l10n_din5008 module).
This is fixed in this commit.
closesodoo/odoo#131935
X-original-commit: 663334157cc4867c63aedea8d8d893eb765cfe25
Related: odoo/enterprise#45754
Signed-off-by: de Wouters de Bouchout Jean-Benoît (jbw) <jbw@odoo.com>
Signed-off-by: Sven Führ (svfu) <svfu@odoo.com>
The i18n related files are currently not up to date.
This is fixed with this commit
X-original-commit: fb5b600ce8b4f6d6a8a0422ecef323cb25dffbbd
Part-of: odoo/odoo#131935