- Dec 24, 2020
-
-
Adrien Widart authored
When adding a credit note, the user can only select the "Partial Refund" credit method. To reproduce the error: 1. Go to Invoicing 2. Create a new one - Add at least one invoice line 3. Save, Confirm 4. Click on "Add Credit Note" => You can not change the credit method. The method field is editable only when the residual amount is different from 0. Here is the issue: when clicking on "Add Credit Note", it actually triggers some `onchange` methods. The latter uses a new record to compute the values: https://github.com/odoo/odoo/blob/45422d56bce413b8577f1784e10dd22ede93c751/odoo/models.py#L6147-L6148 Then, some `_compute` methods are also triggered. Among them, the amount residual computation of the associated `account_move_line`. However, `_compute_amount_residual` will skip the not-yet-created objects and set the amount residual to 0. This is the reason why the residual amount of the account move is zero and therefore, the user can't change the credit method. OPW-2418582 closes odoo/odoo#63780 X-original-commit: 13e33fdd Signed-off-by:
Adrien Widart <adwid@users.noreply.github.com>
-
Pierre Paridans authored
When attempting to resize or crop an attachment through the '/web/image' route, if the attachment isn't actually an image (even if the record's mimetype says so) or doesn't match one of the format supported by PIL (Python Imaging Library) - like Apple's HEIF - the request crashes with a "500 Internal Error". Although it makes sense to return a response with an HTTP error code, a more sensible approach would be to return a "404 Not Found" response instead. The point by handling the Exception thrown by PIL and returning a 404 status code is to more closely match the semantic of this HTTP status code. Getting a resized version of a non-image doesn't really make sense as this resource doesn't exist at all ; hence the "404 Not Found" response. On the other hand returning a "500 Internal Error" would denote that a legitimate request failed on the server side, which is not the case here. Note: this difference of semantic, even if only visible in a regular browser, has its importance in the mobile apps because we use it to given a meaningful feedback to the user in case if failed HTTP requests. Note: the mimetype detection could be improved to ease the handling of this kind of errors but would require too much changes to be done in stable branch. Steps to reproduce in Discuss: - rename an HEIF file with a ".jpeg" extension - upload it in a chat window => the thumbnail in the chat window throws an HTTP error 500 opw-2417172 closes odoo/odoo#63772 X-original-commit: 873bc2aa Related: odoo/enterprise#15462 Signed-off-by:
Pierre Paridans <pparidans@users.noreply.github.com> Signed-off-by:
Adrien Dieudonné (adr) <adr@odoo.com>
-
- Dec 23, 2020
-
-
Rémy Voet (ryv) authored
Use read_group instead of search count to batch the compute. opw-2371161 closes odoo/odoo#63754 X-original-commit: b82d8a8456085ab700ef1ce1df4052fa6cefd7e0 Signed-off-by:
Arnold Moyaux <amoyaux@users.noreply.github.com> Signed-off-by:
Rémy Voet <ryv-odoo@users.noreply.github.com>
-
Rémy Voet (ryv) authored
About this commit 8e7c0e544a8d3d18c57634750ee7ea03052c84b1 We need to manually invalidate the cache (of the quant) if a error (other than concurrent ones) is raise from the write. Because we can't know what the `write` has already put in the cache (e.g. `write_uid`), we need invalidate it. opw-2371161 X-original-commit: 7d75745267dada371d421ec93d50fb10b0006457
-
Rémy Voet (ryv) authored
For validate 5K stock move line with SN: Without index: 200 sec of SQL execution With index: 15 of SQL execution opw-2374846 X-original-commit: 21d7afca292f4c213d1fcfb4a31e0b7157eb941c
-
Rémy Voet (ryv) authored
Make more scalable the `_action_done` by replacing recordset/union by OrderedSet/add. Also add `limit=1` in the lot search. opw-2374846 X-original-commit: ffe9f204474de832514ab6464947c607a4c92282
-
Rémy Voet (ryv) authored
A `stock.move` can contain thousands of `move_line_ids` (when tracked by SN). The union of recordset (`|=`) doesn't scale well due to the N² complexity (for 10000 SML to validate, ). Replace recordset union by `OrderedSet` of ids + browse (linear complexity). Before for 10000 SML to validate: - the `_get_in_move_lines` take 14% time in the pyflame After in the same condition: - the `_get_in_move_lines` isn't present anymore in the pyflame opw-2347525 X-original-commit: 0acbf6f961e4e946c9e487343ad2cc0129400b7f
-
Daniel Blanco authored
closes odoo/odoo#63758 X-original-commit: 13b65506 Signed-off-by:
Josse Colpaert <jco@openerp.com>
-
ijas ahammed authored
Backend tags are generally used internally for classification or daily process. Frontend tags are used for filtering and menu definitions. These two type of tags are not managed separately in eLearning channels right now. This commit separates backend and frontend tags using the color field. Along with that, it improves the following : Frontend - only displays channel tags that has color set; - avoids showing void tag group / menu (without any frontend tags); Backend - prevents access of the backend tags for portal/public users with a record rule (similar to online events); - adds 'Tags (tag_ids)' field in the list view of 'Course Groups' that shows all the tags (frontend as well as backend); - hides the colorless tags in slide channel kanban; - improves the form view for course channel tags; Frontend and Backend - adds a default color value while creating a new channel tag Task ID-2357942 PR odoo/odoo#62138 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
Odoo's Mergebot authored
PURPOSE All fixes and last improvements are not correctly forward ported in 14.1 and master. Let us clean and forward everything. Channel tests are partially cleaned and improved, notably to add test users and improve code readability. Manual forward port of odoo/odoo@eda542 Manual forward port of odoo/odoo@340f6ba Contain some additional fixes. See sub commits for more details. LINKS Task ID-2421795 COM PR odoo/odoo#63677 closes odoo/odoo#63747 Forward-port-of: odoo/odoo#63677 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
Debauche Stéphane authored
Forward port fixes done in stable versions and not correclty forward ported into master at merge time. ORIGINAL COMMIT Purpose ======= Before, by default, if a user create a channel, he will not be member of this channel. After, the current user will always be member of the new channel. LINKS Task ID-2421795 COM PR odoo/odoo#63677 X-Original-commit odoo/odoo@eda542c82f84d7b5589846691b9cb6b7f1021947 X-Original-Task ID-1963414 X-original-commit: 1d5d7871d72c8b747ab2e1b3597f6b8b8e371b26
-
Thibault Delavallée authored
SPECIFICATIONS is_chat triggers are missing and default value should not be defined on a computed field. LINKS Task ID-2421795 COM PR odoo/odoo#63677 X-original-commit: ff4a0ec9042ad43bb8781ed60b880d3c53f5063d
-
Thibault Delavallée authored
Improve channel related test content, notably * use more often real users to avoid doing all tests as admin; * remove unnecessary variables creation, use content created during setUp; * improve overall code; * remove join/leave channel custom tool method and add real methods on channel model; Moderation tests are left untouched because... well. LINKS Task ID-2421795 COM PR odoo/odoo#63677 X-original-commit: 19de1303d015613973115cc01941ae8ca0e82cec
-
Thibault Delavallée authored
SPECIFICATIONS Move channel tests from test_mail directly into mail module. Those tests do not use models specifically introduced in test_mail. As those tests do not target mail.thread features but rather mail models they can be moved into mail directly. LINKS Task ID-2421795 COM PR odoo/odoo#63677 X-original-commit: 8c044735e8e30a80f85bd670eb61daba7645f62c
-
Xavier Morel authored
Forward port fixes done in stable versions and not correclty forward ported into master at merge time. LINKS Task ID-2421795 PR odoo/odoo#63677 X-Original-commit odoo/odoo@340f6baf61d7d91c0a97e7f9f900884a65b9077c X-Original-Task ID-2348333 X-original-commit: 6c1ed107d9d4144ba078ae0216cf8dcdf02d8a7f
-
Thibault Delavallée authored
Allow a False email as valid valid. Generate an email only if not given but keep void values. Ensure company_id / company_ids match, notably to ease creation of users in a multi company test environment. LINKS Task ID-2421795 COM PR odoo/odoo#63677 X-original-commit: 21999058800957a08c5e129c527afe6b84812a8a
-
Thibault Delavallée authored
Display names of user, company_id and company_ids in order to better understand what is failing. Otherwise a generic message does not really help understanding the actual issue. Add translation of new constraint. Also add translations of new modules added recently. LINKS Task ID-2421795 COM PR odoo/odoo#63677 X-original-commit: 15d47bec4a6316dd6a873973572273c913801330
-
Thanh Dodeur authored
Before this commit, some notifications in mail were not following the changes made in odoo/odoo#52826 . task-2278579 closes odoo/odoo#63741 X-original-commit: eabab5f2 Signed-off-by:
Alexandre Kühn (aku) <aku@odoo.com>
-
Goffin Simon authored
Steps to reproduce the bug: - Install Accounting, Sales, Project and Timesheet apps - Enable Analytic accounting in Accounting settings - Uninstall Timesheet app Bug: The domain_force of was account.analytic.line.billing.user still equal to [('project_id', '=', False)] but the field project_id didn't exist on model account_analytic_line. opw:2420177 closes odoo/odoo#63734 X-original-commit: 8d658abc Signed-off-by:
Simon Goffin (sig) <sig@openerp.com>
-
Thibault Delavallée authored
When inviting people to a group-based channel an error may be raised if invite target users not having the right group. Indeed they do not have access to the channel as read access it not given if not belonging to the channel group. We add an UserError so that wrong invites are now pompted to the user instead of crashing. Task ID-2411038 X-Original-Commit e4889fb (12) X-Original-Commit 0c6abe3 (12.3) Forward port of #63676 Forward port of #63680 closes odoo/odoo#63726 X-original-commit: 57d2af357178e27da30bccebb93d36ecb70854c5 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
- Dec 22, 2020
-
-
Mohammed Shekha authored
before this commit: deleting records from listview shows confirm dialog, if unlink method throws UserError then there will be two dialog, closing UserError dialog and clicking on OK button in confirm dialog will again call unlink method which will open UserError dialog again, when error thwon from unlink error then confirm dialog should close. after this commit: if error is thrown from unlink and confirm dialog is opened then cofirm dialog will close first and then error dialog will be shown, this is done to avoid situation explained above. task-2221075 closes odoo/odoo#60265 Signed-off-by:
Aaron Bohy (aab) <aab@odoo.com>
-
nie authored
Steps: - Go to "Website" > "Go to Website" - Click Edit - Add an image gallery - Add an image to the gallery - Add the same image to the gallery - Click the first image - Click "Image Cover" in the side panel - Click on the Link button in the bottom-right of the side panel - Add a link and save Bug: The first image is not displayed in the same way as the second one. Explanation: The layout is not carried over to `img` when it's nested into an `a` tag. Redefining the layout on the `a` tag fixes the issue. opw:2394953 closes odoo/odoo#63699 X-original-commit: b34d2744 Signed-off-by:
Nicolas Lempereur (nle) <nle@odoo.com> Signed-off-by:
backspac <backspac@users.noreply.github.com>
-
fw-bot authored
======= This PR is in the continuity of odoo#62360. - Display remaining hours in task sales_line_id (name_get + task form view) - Remove internal reference from services demo data - Display sol in project timesheets list if project is billable - Remove use of non_allow_billable in timesheets as it has been removed from project and task in previous PR (see above) - Only recompute planned_hours for service product - Determine the correct SOL for timesheet - Set the last SOL of customer on timesheet if none is set on task or project - Allow edition of so_line in timesheet - Restrict SOL on project to sale lines with a service product - Use same widget on partner_id many2One than in sale.order (using ranking) - Remove timesheets table in SO and invoice portal.They were added in previous PR (see above). This introduces the use of links to /my/timesheets/. - Review portal timesheets (my/timesheets/ and link from orders and invoices) - Activate group_uom "Units of Measure" on sale_timesheet install - Hide partner phone number in task form view - Only determine SOL of task and timesheet if allow_billable=True - Filter SOL in task so that it matches the SOL of the project SO - Display red label if remaining hours is negative - Change SO compute behavior - Only open SO for salesman on project overview task-2409761 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr closes odoo/odoo#63695 Forward-port-of: #62900 X-original-commit: b1985773f3a67e28049f9e2bb635bcab059ad9c0 Related: odoo/enterprise#15427 Signed-off-by:
Yannick Tivisse (yti) <yti@odoo.com>
-
- Dec 15, 2020
-
-
Nicolas Lempereur authored
When you create a new record, you will have in this order: - default_get - onchange (can trigger a warning) - _pushController => close all dialogs since ea2207af This is an issue since the possible warning is directly hidden to the user. Without the change, the added test failed with: Warning modal should be opened "executing a window action with onchange warning do not hide it": Found 0 elements to click on, instead of 1 opw-2342273 opw-2374051 closes #61732 closes odoo/odoo#63415 X-original-commit: ff61ab12 Signed-off-by:
Nicolas Lempereur (nle) <nle@odoo.com>
-
- Dec 22, 2020
-
-
Aurélien Warnon authored
This commit fixes the ticket sale start date to be considered inclusive. Indeed, before this commit, if the sales of a ticket starts on the 1st of December, people arriving on the website at that exact date will NOT be able to buy tickets although they should be. They will have to wait for the next day to be able to buy tickets. A small test was added to ensure this behavior. Task 2415917 closes odoo/odoo#63685 X-original-commit: ea6952fd Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
Mohammed Shekha authored
task-2413274 closes odoo/odoo#62998 Related: odoo/enterprise#15215 Signed-off-by:
Aaron Bohy (aab) <aab@odoo.com>
-
Mohammed Shekha authored
task-2413274
-
Mohammed Shekha authored
In the expense list and kanban views, there is always a vertical scrollbar. This is due to the presence of a custom statusbar displayed above the view. This commit overrides the 'height: 100%' and 'min-height: 100%' rules set on those views to remove the scrollbar. task-2334044 closes odoo/odoo#63681 X-original-commit: d544e584 Signed-off-by:
Aaron Bohy (aab) <aab@odoo.com>
-
- Dec 21, 2020
-
-
Aurélien Warnon authored
When you remove the 'company_id' on a crm.lead, you also remove the computed 'company_currency'. When trying to view this kind of leads in the website_crm_partner_assign portal page, it would raise an error while trying to display the planned_revenue in the missing currency. Now, we display the number without any currency sign, which is a "best effort" solution, just the same as on the crm.lead form view. So it will look like "9000 at 47%" instead of "$9000 at 47%". Task 2416841 closes odoo/odoo#63657 X-original-commit: aafbde0b Signed-off-by:
awa-odoo <awa-odoo@users.noreply.github.com> Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
Adrien Widart authored
In the Barcode app, if the user is on a delivery order, adds a product and then decreases the product's quantity, when validating the order, the backorder window is displayed. To reproduce the error: (Need sale_management,stock_barcode) 1. Go to Sales 2. Create a SO - Add one Product P 3. Save, Confirm 4. Check the generated delivery reference R 4. Go to Barcode > Operations > Delivery Orders > R 5. Complete the P's quantity 6. Add Product - Select a Product P_extra - Set a quantity (e.g., 1) 7. Confirm 8. Edit the P_extra's line - Decrease the quantity (e.g., 0) 9. Confirm 10. Validate => A window is displayed so the user can create a backorder for the missing P_extra. Since the SO does not contains any P_extra, proposing to create a backorder does not make sense. When adding an extra product to the delivery, it creates a stock move line with the `product_uom_qty` set to 0. Since there isn't any stock move associated, it also creates a new one. Here is the issue: the `product_uom_qty` of the stock move is defined thanks to the `qty_done` of the extra product. Later, when validating the delivery, the server uses the `product_uom_qty` of the stock move to check if a backorder is needed. This the reason why, if the user decreased the quantity, the backorder proposition is displayed: the `qty_done` is less than the `product_uom_qty`. OPW-2411461 closes odoo/odoo#63664 X-original-commit: f5c0990c Signed-off-by:
adwid <adwid@users.noreply.github.com>
-
Adrien Widart authored
When deleting an `account_reconcile_model`, it does not delete the corresponding `account_reconcile_model_line`. Moreover, this may prevent the user from using the l10n_de_skr04 module. To reproduce the error: (Use demo data) 1. Go to Apps 2. Install "Germany SKR04 - Accounting" 3. Change the company - Select "DE03 Company" 4. Go to Settings > Invoicing > Fiscal Localization 5. Change the package - Select "Deutscher Kontenplan SKR04" 6. Save => A validation error is displayed: "The operation cannot be completed: another model requires the record being deleted[...]". When changing for SKR04, the module's installation first deletes some models, among them: `account_reconcile_model` and later `account_tax`. The validation error appears on `account_tax` deletion. Since version 14, an `account_reconcile_model` is composed of `account_reconcile_model_line` and the latter is linked to `account_tax` (with `ondelete='restrict'`). Here is the issue: when deleting the `account_reconcile_model` model, the corresponding lines are not deleted. As a result: later, when trying to delete all the `account_tax`, since some `account_reconcile_model_line` are still present in database, it triggers the `ondelete='restrict'` constraint. OPW-2416066 closes odoo/odoo#63649 X-original-commit: 8c9a038c Signed-off-by:
adwid <adwid@users.noreply.github.com>
-
Raphael Collet authored
When a form view is opened, the first call to `onchange` should always compute fields, even if their dependencies have no default value. Make sure it is the case for main records, and for records inside one2many fields. The latter case was actually not working as expected. closes odoo/odoo#63646 X-original-commit: 45422d56 Signed-off-by:
Raphael Collet (rco) <rco@openerp.com>
-
Mohammed Shekha authored
before this commit: when field is float type it display too much decimal precision value, it should be fixed to 2 precision for sample data. after this commit: float field will display 2 decimal precision value. task-2318503 closes odoo/odoo#63643 X-original-commit: 61f8ced6 Signed-off-by:
Aaron Bohy (aab) <aab@odoo.com> Co-authored-by:
Kamesh Patel <kat@odoo.com>
-
Prakash Prajapati authored
Before this commit, if the image changed from the form view, it wasn't updated when coming back to the kanban view (one must refresh the page). This commit makes this work by automatically adding the field '__last_update' to the list of fields to read when there is an image with kanban_image src in the template. closes odoo/odoo#58313 Taskid: 2341493 Signed-off-by:
Aaron Bohy (aab) <aab@odoo.com> Co-authored-by:
Aaron Bohy <aab@odoo.com>
-
Ivan Yelizariev authored
STEPS: * install project, website * install translation, but don't apply to website * create a task with Customer that has that language * close the task * open rating request message in ``Settings >> Technical >> Messages`` * click any of the smiles BEFORE: Error to render compiling AST IndexError: list index out of range Template: portal.language_selector Path: /t/t[1] Node: <t t-set="active_lang" t-value="list(filter(lambda lg : lg[0] == lang, languages))[0]"/> AFTER: no errors, page is translated to customer's language, though language selector shows default website's language --- opw-2416586 closes odoo/odoo#63640 X-original-commit: e9ef9841 Signed-off-by:
Ivan Yelizariev // IEL <yelizariev@users.noreply.github.com>
-
Rémy Voet (ryv) authored
In case of RFQ with the "Ask confirmation X day(s) before" set, the email send to the vendor give a link where he (portal user) can change the date_planned of PO lines. But the change wasn't done in the server side because the `_update_date_planned` (of stock_purchase) doesn't call super if there isn't a linked move (none in case of RFQ). Call super also in case there isn't any moves. close #59040 closes odoo/odoo#63629 X-original-commit: b29ac84f Signed-off-by:
Arnold Moyaux <amoyaux@users.noreply.github.com> Signed-off-by:
Rémy Voet <ryv-odoo@users.noreply.github.com>
-
Alpesh Valaki authored
fix typo on docstring of _get_last_sequence method closes odoo/odoo#63619 Signed-off-by:
Martin Trigaux (mat) <mat@odoo.com>
-
Anjali authored
This commit adds few missing default values for some of the partner fields while we create partner on the fly with quick create kanban card of lead. Below are the fields that we added * name * is_company * company_name * phone * email Task ID-2409462 closes odoo/odoo#63622 X-original-commit: 5b3290b0 Signed-off-by:
Thibault Delavallee (tde) <tde@openerp.com>
-
Aaron Bohy authored
Before this commit, the 'mounted' method of the ControlPanel in the website dashboard was called twice, when entering the dashboard. It happened because the dashboard updated the ControlPanel before being actually mounted, so mounted was called once when the dashboard was mounted, and once when the update was applied. Ideally, this should not be an issue (this isn't an issue with owl). However, in Odoo, we mix layers of Owl Components and legacy widgets. In these situations, the above scenario isn't properly handled (and can't be). As a consequence, in mobile (enterprise), it crashed because an handler bound in mounted (thus twice) was only unbound once. This commit avoids the issue by correctly setting the control panel props before rendering it (the update was actually useless). opw~2417307 closes odoo/odoo#63621 X-original-commit: 623a861877014b57627473b9cc5200bafcbe2521 Signed-off-by:
Bruno Boi <brboi@users.noreply.github.com> Signed-off-by:
Aaron Bohy (aab) <aab@odoo.com>
-
Mohammed Shekha authored
Before this commit, the "Import" button was available in the favorite menus of dialogs opened from many2one and many2many field widgets. It makes no sense from those dialogs. Task 2376279 closes odoo/odoo#62079 Signed-off-by:
Aaron Bohy (aab) <aab@odoo.com>
-