- Sep 15, 2023
-
-
Quentin authored
When parsed, if the attachment has a basis quantity of zero, it creates an error, because it is used in a division. The condition that checks whether is computed should be done only if this variable is none. The code does not handle if `attachement_name.text` is None, which can be caused by an orphan ID tag (e.i. "<cbc:ID />") , in the xml of the pdf. opw-3470969 closes odoo/odoo#135472 X-original-commit: bfc83df7 Signed-off-by:
William André (wan) <wan@odoo.com> Signed-off-by:
Laurent Smet (las) <las@odoo.com>
-
- Sep 14, 2023
-
-
Josse Colpaert authored
The SII module adds some fields on the taxes, so after installing the module, those fields need to be set on the already installed CoAs. We forgot to set the l10n_es_bien_inversion field, which is used in l10n_es_edi_sii to send the right information about the taxes to the gov. closes odoo/odoo#135456 X-original-commit: 1b37eaaf Signed-off-by:
Olivier Colson (oco) <oco@odoo.com>
-
Louis (loco) authored
*website Steps to reproduce the bug: - Drop the "Form" snippet on the website. - Add a new field. - Replace the field label by "test\". - Save. => Traceback of type "Cannot read properties of null (reading 'dataset')" appears. In the `start()` function of the `s_website_form` public widget, the field names of the form are extracted thanks to the `serializeArray()` function. The field elements are then found by doing a `querySelector()` on the field names. In our case, the field name of the new field extracted by `serializeArray()` is `test\\` (there are two backslashes because the field name is a string so the first backslash has to be escaped by a second backslash). The problem is that this string has to be escaped one more time in order to be used in a `querySelector()`. As it is not the case, the result of the `querySelector()` is `null` leading to a traceback when the code tries to access its dataset. To solve the problem, the character `\` is encoded before being stored in the `name`, `data-name` or `data-visibility-dependency` attribute of the field element. Thanks to the encoding, the `querySelector()` operation can perform correctly on those attributes. opw-3470291 closes odoo/odoo#134021 Signed-off-by:
Quentin Smetz (qsm) <qsm@odoo.com>
-
Jinjiu Liu authored
Reproduction: 1. Open Notes App 2. Type text in two lines 3. Add a table 4. Select the first two lines and press backspace 5. Page will become unresponsive. This is a backward port of: https://github.com/odoo/odoo/pull/126364 task-3504499 closes odoo/odoo#135486 Signed-off-by:
David Monjoie (dmo) <dmo@odoo.com>
-
pash-odoo authored
before this commit, in resume we are able to put end date less than start date which is not possible in real life. make change in constraint to check selected end date is greater than start date. make changes in demo data of end date which are according to new changes. task-3397726 closes odoo/odoo#134484 X-original-commit: afffd3e4 Signed-off-by:
Sofie Gvaladze (sgv) <sgv@odoo.com>
-
roen-odoo authored
current behavior: When a product with tax included is sold with a fiscal position that match the tax to a tax of 0%, then when you refund this order the fiscal is applied a second time. This result in the 15% tax removed 2 times and the price of the product is incorrect. steps to reproduce: - Create a product with 15% tax included - Create a fiscal position that match the tax to a tax of 0% - Create a POS with this fiscal position - Open PoS, and make an order with the product - Applyy the fiscal position - Refund the order - The price of the product is not the same as the one of the original order. opw-3371028 closes odoo/odoo#133620 Signed-off-by:
Robin Heinz (rhe) <rhe@odoo.com>
-
- Sep 13, 2023
-
-
Aaron Bohy authored
When it is unset, the domain of an action can be either false or the empty string, which in both cases means []. Before this commit, we didn't process the domain in thoses cases (i.e. we kept the false or empty string value). However, having an empty string as domain could cause issues if it is manipulated by Domain/pyutils. In particular, in stock.picking, clicking on "Insert menu in spreadsheet" crashed before this commit. To prevent those issues from happening, this commit sanitizes the domain of the action at the first entry point, such that it's always an array (the empty array in our case). This commit comes with a test in enterprise, which reproduces the scenario given above, as we couldn't find framework and blackbox scenario to highlight it. closes odoo/odoo#135300 Related: odoo/enterprise#47350 Signed-off-by:
Samuel Degueldre (sad) <sad@odoo.com>
-
Xavier Morel authored
Intent of checking `group_no_one` was always to query the advanced info / debug mode, however when the semantics of group_no_one got changed in 31518bc0 this site was missed, and now always displays "advanced" errors for internal users. Which was not the intent. Also since we're printing `display_name` and some of them annoyingly hook onto context variables to show extended information, reset the context to the user's default in order to avoid such extended-formatting `display_name`. Also fix "debug mode" in `TestIRRuleFeedback`, which has been broken since time immemorial (likely as long as the group_no_one semantics changed). closes odoo/odoo#135162 X-original-commit: f9d55c69 Signed-off-by:
Xavier Morel (xmo) <xmo@odoo.com>
-
Dawn Hwang authored
The fr_CH date format has been broken for years, with unnecessary spaces after the period. This has been removed. The de_CH thousands separator prematurely ends after the millions because it does not loop indefinitely. This has been fixed as well. closes odoo/odoo#134482 Signed-off-by:
de Wouters de Bouchout Jean-Benoît (jbw) <jbw@odoo.com>
-
Florent de Labarre authored
Before this commit, the fiscal position is not used to determine account. closes odoo/odoo#96492 Signed-off-by:
Cedric Snauwaert <csn@odoo.com> Co-authored-by:
Miquel Raïch <miquel.raich@forgeflow.com>
-
Miquel Raïch authored
This way, we avoid spamming the log each time new constraints are added in the constraint's table. closes odoo/odoo#135223 X-original-commit: 8cf5fb77 Signed-off-by:
Rémy Voet (ryv) <ryv@odoo.com>
-
- Sep 12, 2023
-
-
Thomas Lefebvre (thle) authored
Issue: ------ After registering for an event, you can download the '.ics' file. This file is not translated into the current user's language. Solution: --------- Use the default user language and, if public, use the language selected on the website. A user may wish to have his calendar in his preferred language by using the English website. opw-3193663 closes odoo/odoo#134465 Signed-off-by:
Thomas Lefebvre (thle) <thle@odoo.com>
-
Nasreddin Boulif (bon) authored
Steps to reproduce: On Odoo: - Install `Documents` module - Go to `Settings` and set a Custom Email Server(ex. `mydomain.com`) - Ensure an alias exist for the model `document.document` with `inbox-financial` as alias name In mail client: - Send a mail with an image in the body to the following email: inbox-financial@mydomain.com Issue: Mail not received (traceback in logs) Cause: Since we use the email alias `inbox-financial`, we process the mail through the `document.document` model where we have an override of the `_message_post_after_hook` method that is called after that the `msg_values` values are post-processed and where we do another message_post() for the new document create for the attachment (in this case, an image). https://github.com/odoo/enterprise/blob/2c3596e4e18c201809558d3ea878b141e366a027/documents/models/document.py#L305 During the parsing, the mail values are updated through the `_process_attachments_for_post` method: https://github.com/odoo/odoo/blob/6c0d2d7a9d44459f3e09a38bd80ef9b018e8c946/addons/mail/models/mail_thread.py#L1881-L1904 On posting the first time, the original type of the `body` value is a `str`, but the post-processed value (because there is some CIDS in the body) is of type `bytes` (because using `encoding='UTF-8'` with `lxml.html.tostring`). https://github.com/odoo/odoo/blob/510a997017a9cbe14522a0013a578f6d1d9b257a/addons/mail/models/mail_thread.py#L2209 Then in the `_message_post_after_hook` we call post again on the newly created document record by using post-processed value of body who is of type `bytes`. On posting the second time (for the document record), the `body` value is of type `bytes` and when checking if the body is empty with `is_html_empty` that received a string as param, an error is raised. Solution: Use `encoding='unicode'` to return a string instead of bytes. https://lxml.de/api/lxml.etree-module.html#tostring ENT PR : https://github.com/odoo/enterprise/pull/42653 opw-3273583 closes odoo/odoo#135021 X-original-commit: f910987c Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
Pratik Awasthi authored
Before this commit, when `a` tag is in a td, the color of text ellipsis (3 dots) is different than the text because the text-ellipsis is set on the parent element, that is `td` element and the color is set on the `a`. This commit sets the right color on td element when that element has `a` element. Limitation (only for td inside element with `o_portal_my_doc_table` class): if the `td` element contains `a` tag and another element then the color has to be set to that other html element otherwise, the color will be the one of the a tag. task-3251721 closes odoo/odoo#134361 X-original-commit: b28459dd Signed-off-by:
Xavier Bol (xbo) <xbo@odoo.com> Signed-off-by:
Pratik Awasthi (praw) <praw@odoo.com>
-
- Sep 11, 2023
-
-
Fabien Meghazi authored
This patch provides the possibility to implement a custom security layer on top of Odoo's bus notification system (and cron live triggering system) which both use postgresql's NOTIFY command. The key addition is the `ODOO_NOTIFY_FUNCTION` environment variable (opt-in), which can now define a postgresql function to be called instead of the NOTIFY command. This allows for greater flexibility and control over the notification and triggering mechanisms within Odoo. closes odoo/odoo#130370 Signed-off-by:
Fabien Meghazi (fme) <fme@odoo.com>
-
Antoine Boonen authored
Problem --------- In 15, taxes are hidden from hr.expense when the expense category has a cost. They can however be configured and added. The current behaviour is counter intuitive. Objective --------- Don't hide taxes when product has cost in v15. Solution --------- Remove the `hidden` attribute in the expense xml form as well as the `groups` attribute. task-3491868 closes odoo/odoo#134147 Signed-off-by:
Quentin De Paoli <qdp@odoo.com>
-
miad-odoo authored
Before the commit, the _get_seen_list() function in the mass_mailing module was not able to correctly identify all the duplicate email addresses in a given mass mailing. This was because the function chose and used only one way to find an email address for each record in the mailing list, even though there are many ways to find an email address for a record. For example, a crm.lead record might have an email address in its partner_id field, but it might also have an email address in its email_normalized field. This can vary from record to record. To fix this issue, the _get_seen_list() function was updated to only look at the email address to which emails have already been sent, rather than trying to fetch it from the record itself. This ensures that all duplicate emails are correctly identified and that no duplicate emails are sent in the mass mailing. Task-3234378 closes odoo/odoo#134867 X-original-commit: dc0ccc19 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
Francesco Ballerini authored
Typo error detected on `/mrp/wizard/mrp_immediate_production_views.xml`. It doesn't cause any issue on module installation or updates, but it's probably gonna cause issue on view inheritance. If you can confirm this is unintended typo I will edit commit msg. I also detected this on version 15.0 and 16.0. closes odoo/odoo#134773 X-original-commit: 80e8222f Signed-off-by:
William Henrotin (whe) <whe@odoo.com>
-
- Aug 29, 2023
-
-
bve-odoo authored
closes odoo/odoo#27664 Signed-off-by:
Pierre Masereel (pim) <pim@odoo.com>
-
- Sep 10, 2023
-
-
Julien Castiaux authored
This reverts commit 7b635c00 from pull-request #129567, see #134791 closes odoo/odoo#134950 Signed-off-by:
Julien Castiaux (juc) <juc@odoo.com>
-
Odoo Translation Bot authored
-
- Sep 08, 2023
-
-
Maximilien (malb) authored
During this pr (https://github.com/odoo/odoo/pull/121413 ), we have made a few css changes on the din5008 format, some of them needed to be revert because they broke the layout. closes odoo/odoo#134800 Task: 3495712 X-original-commit: c120d138 Signed-off-by:
Florian Gilbert (flg) <flg@odoo.com> Signed-off-by:
Maximilien La Barre (malb) <malb@odoo.com>
-
Richard deMeester authored
There is code to block the UOM changing if there are done moves. Because it searches in non-sudo mode, it does NOT currently stop you changing the UOM if the product has moves in a different company. closes odoo/odoo#134780 X-original-commit: 42674464 Signed-off-by:
Tiffany Chang (tic) <tic@odoo.com>
-
std-odoo authored
Bug === When we enrich a partner we don't have access to, it will try to read it, but because of the ACL if will crash. To fix that issue, we don't return the partner if we can't access it and we show an error message in the UI instead of letting it crash. Task-3344536 closes odoo/odoo#134767 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
Adrien Widart (awt) authored
When getting the available quantity of a product, it is possible to specify the warehouse and/or the location in the context. However, it does not correctly work. For instance, if we provide the stock location ID (8) and the warehouse ID (1): we first use the view location of the warehouse, and we then get the intersection between this view location and the provided locations: nothing. In such case, we should keep the stock location. Few other examples are given in the test. OPW-3450169 closes odoo/odoo#134680 Signed-off-by:
William Henrotin (whe) <whe@odoo.com> Co-authored-by:
Simon Schmid <simon.schmid@braintec.com>
-
Mathieu Walravens authored
Before this commit: Packages were computed using a for loop, skipping any picking without any packages. After this commit: Packages are computed using a read_group, speeding up the computed method for large pickings with hundreds of stock move lines. opw-3461706 closes odoo/odoo#134556 X-original-commit: 8dcad6e4 Signed-off-by:
Arnold Moyaux (arm) <arm@odoo.com> Signed-off-by:
Walravens Mathieu (wama) <wama@odoo.com>
-
- Sep 07, 2023
-
-
Arnaud Joset authored
Before this commit, simple user could not use the novatim API since https://github.com/odoo/odoo/commit/160e8bfbf72a3e5d7cc8d8cbe7bc4f310f298baa closes odoo/odoo#134715 Taskid: 3497580 X-original-commit: 43763618 Signed-off-by:
Arnaud Joset (arj) <arj@odoo.com>
-
Hardik Prajapati authored
When creating a record from the menu named 'Coupon programs' - Before fix: value of 'promo_code_usage' is blank - After fix Value of 'promo_code_usage' is 'code_needed' OPW-3460238 closes odoo/odoo#134350 Signed-off-by:
Victor Feyens (vfe) <vfe@odoo.com>
-
Julien Van Roy authored
Add IEPS taxes and tax groups. Make sure the IEPS taxes are `include_base_amount` and have a lower sequence than the IVA taxes. Unify the names of the taxes and their labels on invoice. Resequence the taxes to group them by nature. task-3100679 closes odoo/odoo#134574 X-original-commit: 734e18eb Signed-off-by:
Laurent Smet (las) <las@odoo.com> Signed-off-by:
Julien Van Roy (juvr) <juvr@odoo.com>
-
Walid authored
Steps to reproduce: - Enable multistep routes (3 steps delivery) - Create a new storable product (0 on hand quantity) - Confirm an SO with that product Bug: forecast button is correctly red on the SO line but it's green on the stock pickings Fix: button should be green if it's possible to reserve quantity red otherwise opw-3440627 closes odoo/odoo#134335 Signed-off-by:
Quentin Wolfs (quwo) <quwo@odoo.com>
-
tsm-odoo authored
Before this commit, the push to talk key combination was wrongly detected. Indeed, it was dependent on which key was pressed first. Steps to reproduce: - Register "ctrl + alt" as the push to talk key - Press control then alt, push to talk does not work - Press alt then control, push to talk works - If you unpress the alt key, the push to talk will stop as expected - If you unpress the control key, the push to talk will keep going This commit fixes the issue. closes odoo/odoo#134639 Signed-off-by:
Thanh Son Dodeur (tso) <tso@odoo.com>
-
Adrien Widart (awt) authored
To reproduce the issue: 1. In Settings, enable: - Multi-Routes 2. Unarchive the route MTO 3. Create three storable product P1, P2, P3: - P2: - With route MTO 4. Create and confirm a MO: - Product: P1 - Components: - 1 x P2 - 1 x P3 - 1 x P3 5. Set the produced/consumed quantities: - For P2, set 1.5 6. Mark the MO as done Error: an error message is displayed: "Record does not exist or has been deleted." In `SM._action_done`, we create some extra moves: https://github.com/odoo/odoo/blob/e029abe649573350e633999e42ab040c57b8fe4e/addons/stock/models/stock_move.py#L1705-L1710 Because of the exceed quantity on the first components line, we create a new SM (qty 0.5). There is a difference between both SM: the `procure_method` (MTO for the initial SM, MTS for the new one). Because of that difference, when confirming the new SM, we don't provide any `merge_into` (the `else` block): https://github.com/odoo/odoo/blob/e029abe649573350e633999e42ab040c57b8fe4e/addons/stock/models/stock_move.py#L1684-L1690 Confirming the new SM leads to the `_merge_moves` method. In this method, because we didn't provide any `merge_into`, we first try to get some candidates: https://github.com/odoo/odoo/blob/e029abe649573350e633999e42ab040c57b8fe4e/addons/stock/models/stock_move.py#L866-L868 And at that point, we will provide with all components SMs: https://github.com/odoo/odoo/blob/e029abe649573350e633999e42ab040c57b8fe4e/addons/mrp/models/stock_move.py#L494-L497 So, we will also provide the two SM of C02. Therefore, the method will merge these SMs and unlink the second one. Then, back to the extra moves creation in `SM._action_done`, the for loop will iterate on the deleted record, hence the error. OPW-3454899 closes odoo/odoo#134632 Signed-off-by:
William Henrotin (whe) <whe@odoo.com>
-
Adrien Widart (awt) authored
To reproduce the issue: 1. In Settings, enable: - Storage Locations - Package 2. Create a product P - Type: Storable - Tracked by SN 3. Process a receipt with 1 x P, serial S 4. Return P in a package 5. Process a new receipt with 1 x P, still S as SN Error: An error is displayed "The serial number has already been assigned [...]". This is incorrect, the user should be able to receive that SN. After step 3, there exists a quant Q1: -1 x P at Supplier Location with S. Then, after step 4, a new quant Q2 is created: 1 x P at Supplier Location with S and the package. Because the field `package_id` is not the same on Q1 and Q2, both quants are not merged. As a result, step 5, we will update Q1 and have -2 x P at Supplier Location with S. This will trigger the constraint, hence the error message. OPW-3390615 closes odoo/odoo#134478 Signed-off-by:
William Henrotin (whe) <whe@odoo.com>
-
Michael Tietz authored
Backport from version 16.0 of _get_default_amls_matching_domain To decrease the amount of account.move.lines which should be reconciled Exclude amls of payment move lines where the account is configured as receivable or payable closes odoo/odoo#134535 X-original-commit: 8b711569 Signed-off-by:
Olivier Colson (oco) <oco@odoo.com>
-
hmai authored
Steps to reproduce: 1. add a paragraph 2. add a blockquote => the cursor will jump in the paragraph This commit fixes a bug detected when inserting a blockquote. The cursor jumps to nearby paragraph on insert, and other issues. The cause of the bug is tied to the fact that we rely on a complex behavior when inserting paragraph related elements (within the insert command). The way to make blockquote behave like the other paragraph related elements is simply to add it to the list as done in this commit. Task-3383441 closes odoo/odoo#130829 Signed-off-by:
David Monjoie (dmo) <dmo@odoo.com>
-
- Sep 06, 2023
-
-
Saurabh Choraria authored
When a user tries to import the CSV file with a different separator at that time, the values in mapper and rows_to_import are not correctly mapped. So the traceback will be generated. Steps to reproduce: 1. Click on import in the bank statement. 2. Select any CSV file for the bank statement line or can download and import this file https://drive.google.com/file/d/1lnScw4RN6T01pOkyNON8vvb3FQOPiy1O/view?usp=drive_link 3. Select any separator other than a comma. 4. Click on the test or Import button. 5. Error will occur. Error: IndexError: list index out of range. To solve this issue, a row's length is checked with the number of fields. sentry-4021250095 closes odoo/odoo#131153 Signed-off-by:
Achraf Ben Azzouz (abz) <abz@odoo.com>
-
Preksha Chouhan authored
When user access template at the time of export with deleted field. The traceback will be generated. To reproduce the issue(any model, here- 'account.move.line'): - Install 'account_accountant' module - Go to Settings > Technical > Database Structure > Fields - Create a new field with model as 'Journal Item' and save - Go to Accounting > Miscellaneous > Journal Items - Select any record in list view and click on export and generate a new export template with newly created field - Go to 'ir.model.fields' and delete that field - Go to 'Journal Items' and select that template while export Error: A traceback appears: KeyError: 'tax_audit' When a field gets deleted from 'ir.model.fields' but it does not get deleted from export template. And selecting that template to export the records will lead to traceback. See - https://github.com/odoo/odoo/blob/59669e9943158e51dcbb9ae69ad758df8f7c7976/addons/web/controllers/main.py#L1815-L1818 sentry-4331986723 closes odoo/odoo#134275 X-original-commit: 814fb43e Signed-off-by:
Julien Castiaux (juc) <juc@odoo.com>
-
Arnaud Joset authored
Before this commit, the useragent was harcoded as an Odoo one and if it was blacklisted by the osmfoundation policy https://operations.osmfoundation.org/policies/nominatim/ all Odoo instances were forbidden to access the service. This parameter allows to override the user agent with a system parameter. closes odoo/odoo#134276 X-original-commit: 160e8bfb Signed-off-by:
Yannick Tivisse (yti) <yti@odoo.com> Signed-off-by:
Arnaud Joset (arj) <arj@odoo.com>
-
- Sep 05, 2023
-
-
Abderraouf Ghrissi (abgh) authored
Before this commit: - There is a bug in odoo enterprise. project.project form view > invoicing notebook > services created using create and edit should be configured by default with an 'invoicing policy' set to 'based on timesheets'. Technically, while we're using 'default_service_policy' with the right value, we're getting a different value in the form. After this commit: - The bug is fixed. closes odoo/odoo#134360 X-original-commit: fa034b2a Signed-off-by:
Xavier Bol (xbo) <xbo@odoo.com>
-
Maitri Patel authored
This error occurs when recurrence_id has no records when the user tries to delete the sync calendar which has recurrent events. Error: 'Expected singleton: calendar.recurrence()' See- https://github.com/odoo/odoo/blob/15.0/addons/calendar/models/calendar_event.py#L715 sentry-4367276387 closes odoo/odoo#131155 Signed-off-by:
Arnaud Joset (arj) <arj@odoo.com>
-