Improve mock server:
- add support for mocked `fetch`
- add support for `active_test`
- add support for x2m `in` in domains
- add support for default values computed from a function
- implement a more natural "next id" compute
- allow initial data without ids
- ensure write and x2m commands integrity
- improve bad data/bad commands error messages
- always warn for failing RPC, not only in debug mode
- fix all existing tests that had inconsistency data
Other changes done in mail (or dependents) that are not just related to tests:
- remove `direct_partner` from formatter result
->`correspondent` can be computed from other keys, especially `members`
- fix `livechat_visitor` convertData
-> only process if there is value
- add `current_partner` and `current_user_id` as `init_messaging` result
-> easier to mock than session
- remove usage of `need_moderation`
-> that was just a search indirection to `moderation_status`
- adapt `partner_id` -> `res_partner_id` key in `_notification_format`
-> to be consistent with field name
- add name in result of `mail_partner_format`
-> sometimes display_name is not the same
- remove usage of `is_moderator`
-> that was just an indirection to `moderation_channel_ids`
Enterprise counterpart: https://github.com/odoo/enterprise/pull/11523
task-2287171
closesodoo/odoo#55854
X-original-commit: 7ba3fecb3377a720d1eb70e7515a0c45da73836d
Related: odoo/enterprise#12391
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this commit, all the data-oe-* attributes were removed from
the snippet panel on editor loading. Some were actually added then
removed by the same function... probably for historic reasons. All of
this is now useless, this commit takes also the opportunity to modernize
that all code section and removes other code which was there for
compatibility reasons too.
Now, the data-oe-* on snippets thumbs are kept (as some will actually
be used by upcoming commits). This commit just makes sure no data-oe-*
is left on the snippet bodies themselves.
Part of https://github.com/odoo/odoo/pull/55272
task-2309832
Issue
- Install "Events" module
- Go to website and select an event
- Edit (in frontend) the event and replace the
"Register" button text
- Save & Close the editor
- Try to register to the event
Traceback raised
Cause
Due to this fix on 13.0 (https://github.com/odoo/odoo/commit/8579c0cae839c615415120b79d6ec22c71f7affd),
the replaced arch will override the style/class if has one.
In the related ticket; after renaming the "Register" button,
the 'a-submit' class was removed at rendering, and so,
after renaming, the class is not present in the new button
while it's needed to fetch register buttons.
Solution
Do not remove 'a-submit' class from button since needed in js
to fetch register buttons.
opw-2317119
closesodoo/odoo#55884
X-original-commit: 593a471cc0a65c12416fa97ef583a9ac9392cc73
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
Signed-off-by: bon-odoo <nboulif@users.noreply.github.com>
You can in website's settings, add some extra fields to be shown on the product
page.
E.G. if you want to have the internal code, the barcode, or even a custom field
In case of a binary field, 'Technical documentation' or 'Catalog', you will
have a dowload link.
closesodoo/odoo#55872
Signed-off-by: Jérémy Kersten (jke) <jke@openerp.com>
In version 13.0 we add account_debit_note as dependency to l10n_ar_edi,
but this was made because we were not able to add new depends to
l10n_latam_invoice_document module in stable version.
Now that we are in master we are able to add the dependency directly
here and remove it from l10n_ar_edi
closesodoo/odoo#55771
Related: odoo/enterprise#12361
Signed-off-by: Josse Colpaert <jco@openerp.com>
Some fixes for registration flow
* in mobile, make Add to iCal / Add to Google Calendar buttons take all
the screen width. Otherwise they have different widths, each button on
a line, and this is quite ugly;
* add a margin on address in mobile as it is displayed below registration
information and not on its right;
* display "Registered" badge in tickets section as all other Registered
badge;
Linked to task ID-2314778
Feedback from internal testing
PR #55702
X-original-commit cf232f7317d81d44faebc20424a2a6b17c87ccae
closesodoo/odoo#55866
X-original-commit: d924ace56943405ee4c8f33916c5b5d5264675eb
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
Currently the address part of the contact widget does not display well as
marker and address are on two separate lines. Indeed a d-flex is missing
along with align-items-baseline in order to render correctly.
Linked to task ID-2314778
PR #55702
X-original-commit 59801738a4c02db4d8dd230d50ec749661db5260
X-original-commit: f19725c6fb0c6df33e7bdb5361dda2bc11359021
Update the document type list names to match with the AFIP documentation
closesodoo/odoo#55863
X-original-commit: 06ca34549c33edadc871be15c7443bfc2ab9cd5b
Signed-off-by: Josse Colpaert <jco@openerp.com>
Values filled in "Assigned To" m2o were differing:
- if I "CREATE" task with "group by" then m2o is filled with
internal-users + portal-users
- if I "CREATE: task without group by then it filled with internal
users only.
In Project also same case.
To have a more coherent behaviour, we decided to put only internal
users in both cases.
Task ID #2229592
Community PR #54776closesodoo/odoo#55820
X-original-commit: 8269c1958843002246c589cdd593417dec44f024
Related: odoo/enterprise#12376
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
1. Introduce an option in restaurant config to allow setting tips after payment.
2. Tip form is shown in bills so the customers can choose/set their tips.
3. Validated orders are kept in TipScreen (access via TicketScreen) so that at the
end of the day, the user/cashier can set the tips for each validated order.
closesodoo/odoo#55488
Task-id: 2117029
Related: odoo/upgrade#1606
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Style of some popups is broken because of the removal of absolute
positioning of the dialog footer. We now remove the absolute
popup height and let the content of the popup body dictate the
height of the popup.
With this commit, the timezone (in the user's preferences) is
automatically set to the timezone of its browser the first time
this user logs in.
Task 2207715
closesodoo/odoo#55726
Signed-off-by: Olivier Dony (odo) <odo@openerp.com>
Related to digest update in 13.4 (a595ebfca5ab7041224c661f404138612257bdda).
QUERY COUNT IN BLOG
Local installation of blog still makes those tests use 27 or 28 queries. On
runbot it grows until 32.
Due to dependency change, installation order changes. It may have an effect on
query count in website loading some pages in blog. This is worth checking why
queries are added.
Digest module itself has nothing to do with website. It could either be a side
effect of some computed field, either an installation order change adding more
modules before installing blog, with side-effect of adding queries due to
another module.
As without this fix installing website is not possible, let us merge this one
and investigate further soon.
closesodoo/odoo#55835
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
PURPOSE
Avoid automatic partner finding and update on lead to erase too much data.
RATIONALE
On crm.lead, the address fields, email_from and phone, are computed field
since saas-13.3 based on the partner_id. Previously they were synchronized
with an onchange on partner_id which was never triggered during automatic
flows on the lead.
Now computed field are triggered each time the partner_id is written.
Problems
- If someone uses the mass conversion with the action "Use existing partner
or create", the partner is found for each lead with the method
_find_matching_partner. This method can find any partner with a name that
contains the lead name, the lead contact_name or partner name. It can find
wrong partner. Previously, only the partner was changed and the contact
information remained on the lead. Now, all the information are erased with
the wrong partner information.
- If at creation all the address information are set and the partner_id
as well, the address field from the partner won't be synchronized.
The lead will end up with the address information we forced.
During the conversion to opportunity, the partner_id defined on the
lead, will be written again. It will trigger the synchronization
of the address field on the lead. Those info can be incomplete or wrong
You will end up with a data loss.
SPECIFICATIONS
Tell _find_matching_partner to match partner only based on exact email address
in the case of mass convert. Avoid fuzzy matching based on name likeliness.
During opportunity conversion, don't write the partner_id if the partner is
already the one set on the lead.
LINKS
Task ID-2316828
PR #55825
X-original-commit eed0a31e1e2c428c94dae4703c9575534a49ec1d
X-original-PR #55194closesodoo/odoo#55838
X-original-commit: e82b5a92f44709592b25fa66d9555d64abef1ec9
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
PURPOSE
Distinguish synchronization of partner values on lead: address fields (all
or none), classic fields (propagate if set) and special cases (names-alike).
SPECIFICATIONS
Follow up of https://github.com/odoo/odoo/commit/f8179007f9aa662be7318edeb18426ea1c906c15
Context: many fields are now synchronized from the partner_id: address fields
as well as other contact fields. A first commit 9c9f477f04e8f4ee9b18092fe894890c2ab31b58 kept the value
from the lead if the value from the partner was empty. This lead to mixed
address fields.
A second commit fixed that behavior f8179007f9aa662be7318edeb18426ea1c906c15 by taking the value from
the partner only when it was set.
Problem: This erases too much information.
```
>>> lead.partner_name
'testtest'
>>> partner_id.name
'testtest@mailinator.com'
>>> partner_id.parent_id
res.partner()
>>> partner_id.is_company
False
>>> lead.write({'partner_id': partner_id.id})
>>> lead.partner_name
False
```
We indeed need a consistent address but for the other fields we want to keep
the maximum of data.
SOLUTION
For the address fields, take all the values from the partner if one of the
address fields is defined, otherwise keep the information defined on the lead.
For all the other fields keep the lead information if the partner information
is empty.
LINKS
Task ID-2316828
PR #55825
X-original-commit https://github.com/odoo/odoo/pull/55194/commits/f53fba6663a34e8e6b13354dde3dc225f5814de3
X-original-PR #55194
X-original-commit: b136df8530279a54c9be96beeea9bdda01643000
Currently, there's only one tax for non deductible VAT on purchase, but although the
most common one (21% percentage), it's not the only one. There can be cases where
there's 4% or 10% VAT that is not deductible.
With this PR we add that percentages to the CoA.
Forward port to v13 of odoo/odoo#48629closesodoo/odoo#55830
X-original-commit: 3b51ca0191f4df0f1f7543070b9e23a87286a426
Signed-off-by: Josse Colpaert <jco@openerp.com>
Purpose is to have same width for all columns and a better display of agenda
with evenly dispatched columns.
Related to testing of EventOnline
Task ID-2314778
Fwd port of PR #55625
PR #55642
When having long ticket name, you have some issues in mono-ticket registration
mode. Indeed as space is somehow limited, the "Qty <select>" part takes two
lines, which is quite ugly.
In this commit we ensure the Qty selector always takes one single line. We also
ensure long ticket name takes several lines and are displayed completely. We
also fix borders of optional price, so that a multi-line ticket name does not
generate borders with different size left and right of price.
Related to testing of EventOnline
Task ID-2314778
Fwd port of PR #55625
PR #55642
Otherwise you may have a crash when computing time slots and date-based
information.
Related to testing of EventOnline
Task ID-2314778
Fwd port of PR #55625
PR #55642
PURPOSE
Clean menu display, notably when having long event names and/or in mobile
mode.
SPECIFICATIONS
Do not use an ellipsis or crop event name: display it completely even if it
makes it take several lines.
Ensure event menu items are not broken into multiline. Each menu name should
be displayed completely. Move menu name on multiline instead.
In mobile, remove some padding to give as much space as possible to the event
name.
LINKS
Related to testing of EventOnline
Task ID-2314778
Fwd port of PR #55625
PR #55642
Sanitize URL given to CTA button, allowing to ensure it has a netloc and a
scheme. Otherwise URLs may be considered as local whereas they are not
(e.g. www.example.com).
LINKS
Related to testing of EventOnline
Task ID-2314778
Fwd port of PR #55625
PR #55642
PURPOSE
Improve and make color management coherent in event models. Notably consider
colorless tags as being used for internal management only, and not displayed
in frontend.
SPECIFICATIONS
Ensure tags without color are not displayed in frontend for both event and
track models (event main page, track display, agenda). Also ensure a default
random color is given when creating tags so that they are displayed by
default.
When a category used as a dropdown menu has no tags to display hide it in
order to have void categories in filtering section.
LINKS
Related to testing of EventOnline
Task ID-2314778
Fwd port of PR #55625
PR #55642
When using the card-based display you may have the top of card body that is
not at the same height across a given row. This can be seen notably if some
cards have a footer and some other not, if one event is not yet registrable.
One drawback is that using the "show template" option displays the template
(category) name incorrectly. It should be part above the event image, part
below it. Without this fix it may be set completely below the image, leading
to incoherent row display.
LINKS
Related to testing of EventOnline
Task ID-2314778
Fwd port of PR #55625
PR #55642
In a French based company
Create a DEMO product with price 500 available in POS
Have a public pricelist in which feature a line with:
- product: DEMO
- minimum quantity: 1
- price: 400
Open POS, Add DEMO, the price from the pricelist will be used (400).
Now delete the product.
The form will popup, choose a quantity to delete and confirm.
The price of the cancel line will not be taken from the pricelist,
so the two line will have different prices.
This occur because the quantity of the new line is -1 and the pricelist
may have a minimum positive quantity set.
Using a specific option to keep the price fix the issue
opw-2312172
closesodoo/odoo#55824
X-original-commit: 1ff8281c4f43525dc24059bd1ff4e63bc47ecffd
Signed-off-by: pimodoo <pimodoo@users.noreply.github.com>
Signed-off-by: Jorge Pinna Puissant (jpp) <jpp@odoo.com>
- Use the one defined in the account module allowing paying multiple journal entries
and group payments together.
- Remove the hr_expense_check module that contains only duplicated features regarding the
register payment wizard.
--task: 2273528
- Create Tax 0:
Percentage
Amount: 0
Tax Included
Tax Group 0
- Create Tax 8:
Percentage
Amount: 8
Tax Included
Tax Group 8
- Create a customer invoice with one line
Quantity: 8.0
Price Unit: 15.55
Taxes: Tax 8, Tax 0 (order is important)
The tax amounts are:
Tax 8: 9.22
Tax 0: -0.01
If the taxes are inverted, the tax amounts
Tax 8: 9.21
Tax 0: 0.00
The difference is due to the rounding of the 8% tax done differently. In
the second case, the computation of the 8% tax goes through:
https://github.com/odoo/odoo/blob/8c5cd335a57c20ed5faa6b7c7630c296c1f2a5cf/addons/account/models/account.py#L1480
In the first case, the amount is recomputed in:
https://github.com/odoo/odoo/blob/8c5cd335a57c20ed5faa6b7c7630c296c1f2a5cf/addons/account/models/account.py#L1483
The rounding is different in both cases, leading to an inconsistency.
When the tax amount is zero, there is no need to save the amount in
`total_included_checkpoints`.
opw-2306676
closesodoo/odoo#55812
X-original-commit: e2776e188070221ef465a864bd2cb8dcfc971e14
Signed-off-by: Jorge Pinna Puissant (jpp) <jpp@odoo.com>
PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATIONS: LAYOUT
Besides changing the tips, a cleaning of digest layout was performed. Emails
were reported to look not neat in Outlook and somewhat random in mail.com or
gmail.com.
Most recent HTML CSS cannot be used to make HTML emails because each email
provider renders emails its own way. This means a given email may renders
differently in gmail.com and outlook.
The layout of the email was composed of several levels of embedded tables
which means huge maintenance effort. So it was totally rewritten with divs
and CSS, but some properties are not taken into account.
A lot of page component improvements were done. It consisted in replacing most
of the style attribute in tags with CSS classes and ids. This step is
especially useful for tip formatting because before, if a style modification
was needed, it had to be performed on each tip individually.
SPECIFICATIONS: TIPS
Add / Improve tips in cmr, purchase, hr_recruitment, website, hr_expense, project,
digest, sale_management, im_livechat, stock, mrp, account.
LINKS
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#11394closesodoo/odoo#55807
Forward-port-of: odoo/odoo#53580
Related: odoo/enterprise#12372
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATIONS
“Engage with visitors to convert them into leads”
“Use royalty-free photos”
“Search Engine Optimization (SEO)”
See code for specifications.
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: b78921d41ca1af3e56a4d874381c30d766c986fc
PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATIONS
“Speed up inventory operations with barcodes”
See code for specifications.
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: d679b6f2807b937c1765f20b8a4fb796aec821a7
PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATIONS
“Odoo supports configurable products”
“Sell or buy products in bulk with matrixes”
Remove sale_expense tips.
See code for specifications.
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: 15398990a1b162fef3e2280d9c4a82de9f61491f
PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATIONS
“How to keep late receipts under control?”
“Never miss a purchase order”
See code for specifications.
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: 9cab3aea9a06e442f37329d350e9ecec41ca4911
PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATION
“Customize tasks and stages according to the project”
See code for specifications.
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: bd2cd2ca4e4fd1fa99d6a97b8af291363e4b1d84
PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATIONS
“Use tablets in shop to control manufacturing”
See code for specifications.
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: 40100145e5bc8b2588b04b849a2c2cc306e126d3
PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATIO
“Let candidates apply by email”
See code for specifications.
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: 5c6c52a8773b1994c9616900d9736cea500776fd
PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATIONS
“Snap pictures of your receipts with the remote app”
See code for specifications.
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: 48bc75d340fa3a6d3c98bdd4b9f978036109f403
PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATIONS
“Use canned responses to chat faster”
See code for specifications.
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: fd8ee90adc5c759d591345a1676f01fc63c51f38
PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATIONS
“Did you know Odoo has built-in lead mining?”
“Opportunity win rate is predicted with AI”
“Manage your pipeline”
“Do not waste time recording user's data”
“Turn a selection of opportunities into a map”
See code for specifications.
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: 93c7aa19397ae7a25e88e760f44d24a0b4f0dd9a
PURPOSE
Review the tips and digest layout design to make sure they have a WOW effect
and increase trial conversion/retention.
SPECIFICATIONS
“No need to print, put in an envelop and post your invoices”
See code for specifications.
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: 58bcc8c3c509df9e3774369ac1a626d528eba598
Used in external tools.
LINKS
Task ID-2274264
COM PR: odoo/odoo#53580
ENT PR: odoo/enterprise#1139
X-original-commit: 6e2a50c06beae8433753f49f0acf07fdede3b7fc