Monday, June 8, 2020
33 changes · master
New functionality added to Odoo
Website course visitors can now contact the person responsible for a private course directly to request access. This makes enrollment requests clearer and routes follow-up tasks to the right person, while also improving the enrolled button’s unsubscribe cue.
Original PR description
PURPOSE Before this merge, a user could not contact a course responsible to ask him to join. With this merge he is be able to do it. SPECIFICATIONS: ACTIVITY Add activity_search method in…
PURPOSE Before this merge, a user could not contact a course responsible to ask him to join. With this merge he is be able to do it. SPECIFICATIONS: ACTIVITY Add activity_search method in mail.activity.mixin to ease searching on automated activities (code refactoring mainly). Add possibility to choose a source / request partner on an activity. It allows to know if an activity is linked to a customer or a requesting partner. Com SPECIFICATIONS: SLIDES Change the message 'Contact website administrator' to 'Contact Responsible'. Add the name of the course responsible in the course description panel. When clicking on its name it opens a modal to request access to the course. It creates an activity linked to the customer and assigned to the responsible. When hovering the 'You're enrolled' button the fa-check icon changes to a fa-times icon to show that you can unsubscribe when clicking. LINKS Task ID : 2127364 Community PR odoo/odoo#40708 Upgrade PR odoo/upgrade#1101
Enhancements to existing features
Website forum pages now avoid several unnecessary database checks and reuse stored counts where possible, helping pages load more efficiently. The update also improves accuracy for reply counts across multiple forums and websites, so visitors see more reliable forum information.
Original PR description
Optimize queries Fix multi-forum / mutliwebsite in child count Use stored field when possible Avoid forum count on each request (rarely updated)
Resolved issues and error corrections
New demo databases now correctly show the intended starter messages in the General chat channel. This helps users exploring the system with demo data see example channel content as expected, while also removing an unused notification setting.
Original PR description
Before this commit, when starting a new database with demo data, the default channel `#general` had no messages initially. The demo data defines default messages in this channel, but were incorrectly linked to this channel, resulting in this channel containing no messages initially. The messages did not define `channel_ids`, so it was considered empty. This field is essential for displaying the message in channel, so by being omitted these messages are not properly linked to channels. This commit fixes the issue by correctly linked this demo messages to this demo channel, so that `#general` now contains some messages initially. This commit also removes unused context `mail_notify_noemail`. Task-Id 2186300
Miscellaneous changes
### Issue - Windows > Chrome or Firefox - Any chatter > Open full screen - Paste any image The image is pasted twice ### Cause Summernote adds the image but the browser event adds it too ### Solution I found a solution on a summernote repository's issue which is to prevent the browser event to paste the image a second time. summernote/summernote#2717 **OPW-2267712** -- I con
Original PR description
### Issue
- Windows > Chrome or Firefox
- Any chatter > Open full screen
- Paste any image
The image is pasted twice
### Cause
Summernote adds the image but
the browser event adds it too
### Solution
I found a solution on a
summernote repository's issue
which is to prevent the browser
event to paste the image
a second time.
summernote/summernote#2717
**OPW-2267712**
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
Forward-Port-Of: odoo/odoo#52512
Forward-Port-Of: odoo/odoo#52467UTM campaign templates no longer include a separate “New” stage because that stage is already added by default. This reduces duplicate setup steps and keeps campaign template stages cleaner for users.
Original PR description
**Purpose** - Remove the "New" stage from UTM Campaign Templates since it's already included by default and is not mandatory. **specification** - Remove the "New" from those 2 templates https://www.awesomescreenshot.com/image/4738077/3068e5e8ff5079dd32ab82e528e05e9f **Links** TaskID: 2252069 Closes https://github.com/odoo/odoo/pull/51439
Website forms can now use phone number and website link fields, alongside improved email handling. This helps businesses collect better-formatted contact details across lead, recruitment, and sales forms.
Original PR description
[IMP] website_form, *: add field type to form *= website_hr_recruitment, website_sale, website_crm Adding 2 new types of fields: tel, url email, url and tel type can now be applied on existing char fields. task-2213083 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The subscription dashboard now loads without freezing the interface and includes a clearer date selection experience similar to accounting reports. It also adds several usability refinements, including displaying subscription logs in their own currency, helping teams review subscription revenue information more easily.
Original PR description
* Before this commit, the loading of the main dashboard froze the interface * This commit introduces a new date selection system, same as in accounting reports * Several small UX fixes Taskid: 2179282
This fix prevents lines from a confirmed purchase order from being reassigned to another purchase order through backend or remote calls. It helps keep confirmed purchase orders accurate and avoids inconsistencies in purchasing records.
Original PR description
Description of the issue/feature this PR addresses:
- Create a purchase order A with two line A1,A2
- Confirme A
- Create a purchase order B with no line
- execute self.env['purchase.order.line'].browse(A1,A2).write({'order_id':B}) (or by RPC)
--> Issue now A1,A2 are in an other purchase order
@mart-e
--
I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-prThis update fixes automated tests for Swiss and Italian localization features after underlying accounting and bank field names changed. It helps keep these country-specific modules reliable and reduces the risk of future updates being blocked by outdated tests.
This fix corrects the create-page link shown when visitors or editors encounter a 404 page related to website posts. It helps website editors recover from missing pages more smoothly and reduces confusion when creating replacement content.
Original PR description
Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
The Burmese language URL code has been updated to avoid conflicting with Odoo's existing /my page. This helps ensure Burmese translations can be accessed correctly without routing issues.
Original PR description
The burmese ISO 639-1 code is "my" which conflicts with the page /my We will now use the ISO 639-3 code "mya". https://iso639-3.sil.org/code/mya -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This corrects a small typo in a color code used by the website editor. It helps ensure colors render as intended in the editing interface, with minimal impact beyond visual consistency.
Original PR description
Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr
This update corrects recently introduced color styling problems in the website editor and several website snippets. It ensures colors and previews appear as intended, reducing confusion when editing page designs.
This fix restores the intended backdrop color in the website editor's image crop tool after a previous compatibility change accidentally altered its appearance. Users will see the crop interface as originally designed, while the code remains compatible with older styling compilers.
Original PR description
Revert https://github.com/odoo/odoo/commit/14c8b285ef3e11cf8a8387bb211272e6456e4d42 which fixed a scss compilation error but changed the design by mistake. The 4 digits hexa was not supported in old sass compiler so we use a rgba() value instead.
This fixes a test cleanup issue that could leave temporary settings behind and cause unrelated accounting report tests to fail depending on their run order. The change improves reliability of automated checks without changing business features or user workflows.
Original PR description
The `unittest.mock.patch` context manager was started but never exited. This left some residues in the class. The problem was non deterministic, depending on the order in which the tests were run. To reproduce, one could use `--test-enable --stop-after-init --log-level=test --max-cron-threads=0 --test-tags /account_reports,/account_reports_cash_basis` If the tests of `account_reports` were run before the tests of `account_reports_cash_basis`, `self.env['account.report']` still had patched attributes like `filter_date` and `filter_comparison` when running other, completely unrelated tests.
Updated automated tests for several country-specific accounting and reporting modules so they match recent data and workflow changes. This helps keep Belgian, Colombian, and Mexican localization features reliably validated during future updates.
Before this commit: Traceback when printing invoice QR-bill after setting the company and partner with correct switzerland bank configured. Note that the fields changed here were defined in version 12 but do no longer exists in version 13. OPW-2264923 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#52283
Original PR description
Before this commit: Traceback when printing invoice QR-bill after setting the company and partner with correct switzerland bank configured. Note that the fields changed here were defined in version 12 but do no longer exists in version 13. OPW-2264923 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#52283
- Add a product => 1 unit is added - Try to change the quantity to 1.2 The 'Decrease Quantity' pop-up appears when pressing 1. opw-2263913 Forward-Port-Of: odoo/odoo#52331 Forward-Port-Of: odoo/odoo#52245
Original PR description
- Add a product => 1 unit is added - Try to change the quantity to 1.2 The 'Decrease Quantity' pop-up appears when pressing 1. opw-2263913 Forward-Port-Of: odoo/odoo#52331 Forward-Port-Of: odoo/odoo#52245
Forward-Port-Of: odoo/odoo#52319 Forward-Port-Of: odoo/odoo#51918
Original PR description
Forward-Port-Of: odoo/odoo#52319 Forward-Port-Of: odoo/odoo#51918
There is no reason for this constraint to be. Languages with a code longer than 5 do exists in standard, (e.g. ar_001, sr@latin) Introduced at 004a0b996ff8f2694 Fixes odoo/odoo#52558 cc kebeclibre cf bf0bb534bfd4f8d1459c91a4858dfdc12191b32b Forward-Port-Of: odoo/odoo#52564
Original PR description
There is no reason for this constraint to be. Languages with a code longer than 5 do exists in standard, (e.g. ar_001, sr@latin) Introduced at 004a0b996ff8f2694 Fixes odoo/odoo#52558 cc kebeclibre cf bf0bb534bfd4f8d1459c91a4858dfdc12191b32b Forward-Port-Of: odoo/odoo#52564
Go to Reconciliation Models > Invoices Matching Rule Set the parameter 'Amount Matching' Set 'Partner Is Set & Matches' Save Edit Unset 'Partner Is Set & Matches' 'Amount Matching' will switch to invisible but is not disabled. Removing the invisibility check so that the field is always editable This also reverts commit 61f1ca6. Due to a misunderstanding this solution was chosen while the real intention was to always show the field opw-2261134 -- I confirm I have signed the
Original PR description
Go to Reconciliation Models > Invoices Matching Rule Set the parameter 'Amount Matching' Set 'Partner Is Set & Matches' Save Edit Unset 'Partner Is Set & Matches' 'Amount Matching' will switch to invisible but is not disabled. Removing the invisibility check so that the field is always editable This also reverts commit 61f1ca6. Due to a misunderstanding this solution was chosen while the real intention was to always show the field opw-2261134 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#52153
PURPOSE Hide list selection box once records are saved SPEC submitting a multi-edition from the listview unchecks the active_ids problem is, the o_list_selection_box is still displayed even though there isn't any active records anymore. TASK 2266999 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#52160
Original PR description
PURPOSE Hide list selection box once records are saved SPEC submitting a multi-edition from the listview unchecks the active_ids problem is, the o_list_selection_box is still displayed even though there isn't any active records anymore. TASK 2266999 -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#52160
Before this commit, controller did 1. search all channels with an alias 2. search on the messages on mail.channel 3. map the number of messages with the channels The issue was that the list of messages in step 2 includes more channels than the ones found in step 1. The list of messages may be very big and some groups may be retrieved while not used in the small list of channels with an alias. This commit should improve performances while accessing the /groups page. Forward-Port-Of:
Original PR description
Before this commit, controller did 1. search all channels with an alias 2. search on the messages on mail.channel 3. map the number of messages with the channels The issue was that the list of messages in step 2 includes more channels than the ones found in step 1. The list of messages may be very big and some groups may be retrieved while not used in the small list of channels with an alias. This commit should improve performances while accessing the /groups page. Forward-Port-Of: odoo/odoo#52524
Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#52584
Original PR description
Description of the issue/feature this PR addresses: Current behavior before PR: Desired behavior after PR is merged: -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#52584
Issue - Create a second company - Create user with access to main and second company - Go to "Contacts" app - Edit contact of the new user, and under the "Sales & Purchases" tab, ensure that the company field is set - Create a new contact with same email of the new user - In list view, select both contact related to new user - Click on Action->Merge Selected Contacts, then merge contacts User has no more access to both companies, only company related to merged destinati
Original PR description
Issue - Create a second company - Create user with access to main and second company - Go to "Contacts" app - Edit contact of the new user, and under the "Sales & Purchases" tab, ensure that the company field is set - Create a new contact with same email of the new user - In list view, select both contact related to new user - Click on Action->Merge Selected Contacts, then merge contacts User has no more access to both companies, only company related to merged destination Contact/Partner. Cause All related companies are unliked from user, and instead overwrited with one company related of the merged destination Contact/Partner. Solution Instead of unlink all companies, we will only add the contact company to the allowed companies of the user. opw-2269397 Forward-Port-Of: odoo/odoo#52460
Description of the issue/feature this PR addresses: Add missing account.account.tags on chart of accounts. Current behavior before PR: If you install finnish chart of accounts (l10n_fi) all the generated accounts are missing tags required by reporting (l10n_fi_reports). Desired behavior after PR is merged: Tags come pre installed along with the chart of accounts. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo
Original PR description
Description of the issue/feature this PR addresses: Add missing account.account.tags on chart of accounts. Current behavior before PR: If you install finnish chart of accounts (l10n_fi) all the generated accounts are missing tags required by reporting (l10n_fi_reports). Desired behavior after PR is merged: Tags come pre installed along with the chart of accounts. -- I confirm I have signed the CLA and read the PR guidelines at www.odoo.com/submit-pr Forward-Port-Of: odoo/odoo#52248
The field `is_leave` is defined in `correct view inheritance` module. Forward-Port-Of: odoo/enterprise#11008
Original PR description
The field `is_leave` is defined in `correct view inheritance` module. Forward-Port-Of: odoo/enterprise#11008
Added some missing subtotals and fixed misleading position of existing subtotals. Also, corrected some formulas. task: <a href="https://www.odoo.com/web#id=2072849&model=project.task&view_type=form&cids=2&menu_id=">2072849</a> Forward-Port-Of: odoo/enterprise#10894 Forward-Port-Of: odoo/enterprise#9720
Original PR description
Added some missing subtotals and fixed misleading position of existing subtotals. Also, corrected some formulas. task: <a href="https://www.odoo.com/web#id=2072849&model=project.task&view_type=form&cids=2&menu_id=">2072849</a> Forward-Port-Of: odoo/enterprise#10894 Forward-Port-Of: odoo/enterprise#9720
1. Install social_sale, website 2. Prepare a user with social media manager permissions and nothing else 3. Navigate to "Social Marketing > Posts" and create a post 4. Go to Posts again Access error will popup because of computed value from resticted models (sale_order). The user should be able to view the numbers without accessing the sensitive data. Removing group restrictions and allowing the computation to be done in sudo mode allow the value to be computed correclty but the permi
Original PR description
1. Install social_sale, website 2. Prepare a user with social media manager permissions and nothing else 3. Navigate to "Social Marketing > Posts" and create a post 4. Go to Posts again Access error will popup because of computed value from resticted models (sale_order). The user should be able to view the numbers without accessing the sensitive data. Removing group restrictions and allowing the computation to be done in sudo mode allow the value to be computed correclty but the permissions on the models are respected so the user is not able to access quotations/sales view via smart button if he/she don't have the rights to do so. opw-2263242 Forward-Port-Of: odoo/enterprise#10959 Forward-Port-Of: odoo/enterprise#10949
This should have been part of #6851, which handled the creation of `sale_project` module (odoo/odoo@447b33a3c2727b50e71c14dd4a7ce32378fc6bf0) Forward-Port-Of: odoo/enterprise#10957
Original PR description
This should have been part of #6851, which handled the creation of `sale_project` module (odoo/odoo@447b33a3c2727b50e71c14dd4a7ce32378fc6bf0) Forward-Port-Of: odoo/enterprise#10957
On v13 the invoice and payments could be reset2draft without cancel the record. In Mexico, when a fiscal document is cancelled must be send the request to the SAT to allow cancel it. Now, when reset2draft not must e clear the stamp values if the record state is not cancelled, this to avoid inconsistency between Odoo and the SAT. Extra: The method ``_l10n_mx_edi_update_hour_timezone`` only is called when the time invoice is not set, to avoid stamp 2 times a same invoice in the next ca
Original PR description
On v13 the invoice and payments could be reset2draft without cancel the record. In Mexico, when a fiscal document is cancelled must be send the request to the SAT to allow cancel it. Now, when reset2draft not must e clear the stamp values if the record state is not cancelled, this to avoid inconsistency between Odoo and the SAT. Extra: The method ``_l10n_mx_edi_update_hour_timezone`` only is called when the time invoice is not set, to avoid stamp 2 times a same invoice in the next case: 1. Create and validate the customer bill 2. Reset 2 draft 3. Validate again. In 3, if the time invoice is different generate a new fiscal folio and is incorrect. Forward-Port-Of: odoo/enterprise#10980 Forward-Port-Of: odoo/enterprise#10854
If a user has no write access on res.country, he gets an error due to inverse function of field l10n_mx_nationality. We should allow him to select/modify countries on a contact without error. opw-2266710 Forward-Port-Of: odoo/enterprise#10978 Forward-Port-Of: odoo/enterprise#10948
Original PR description
If a user has no write access on res.country, he gets an error due to inverse function of field l10n_mx_nationality. We should allow him to select/modify countries on a contact without error. opw-2266710 Forward-Port-Of: odoo/enterprise#10978 Forward-Port-Of: odoo/enterprise#10948
Forward-Port-Of: odoo/enterprise#10905 Forward-Port-Of: odoo/enterprise#10774
Original PR description
Forward-Port-Of: odoo/enterprise#10905 Forward-Port-Of: odoo/enterprise#10774