- Suppose a bank statement line with partner_name = x.
- Create a partner with name = x.
- Open the reconciliation widget: The partner is set by default thanks to this commit.
- Import 2 bank statement lines having acc_number set but no res.partner.bank having this account
number.
- Reconcile the first one with a line: a res.partner.bank is created.
- Reconcile the second one with a line: UserError('Account number must be unique!')
Before this commit:
when user set any target invoicing value he/she needs to refresh the
page.
After this commit:
As soon as user set the target invoice value it shows on the dashboard,
no need to refresh the page.
This commit is related to master bug
opw-1902250
closesodoo/odoo#29129
* payment, website_sale
This commit solves the problem described in the issues mentioned below
by using the new system introduced by the parent commit.
That new system is even more integrated with website "animations" but
the mentioned issues' features are not yet converted to use those (this
will be a master task to make "Website Widget" be defined in portal to
use all of those integrated features). This commit however converts an
already protected behavior of website_sale using that "animation"
integration.
Closes https://github.com/odoo/odoo/issues/27976
Closes https://github.com/odoo/odoo/issues/28704
Because of 9a98a4d60e
and since the key of an ir.ui.view cannot be unique
(multiwebsite), duplicating views made several parts of Odoo crash
After this commit, we limit to one the views that are searched with their key
Responsibility is given to the user to change the priority and/or the key
in order to predict which view will be taken
OPW 1913335,1913100,1913186,1913112,1913240
closesodoo/odoo#29105
* web
This commit introduces helpers for async handlers, especially for button
clicks. Those helpers are now used automatically for website widgets
(animations) if the 'async' word is placed in front of a handler name
in the `events` key definition.
It's not needed to see the many2many of PO and SO during the create and
edit since the lot could not be already sell or buy during its creation.
Task 1909002
closesodoo/odoo#28817
In the form view of a livechat, the instructions to configure with Odoo
website CMS was still referring to "Website Admin", instead of
"Website".
In addition to fixing this error, the sentence has been slightly improved,
as we have to regenerate the term anyway.
closesodoo/odoo#29115
Since commit f7130556bb the compiled assets would be returned in a loop
before executing the rest of the `preprocess_css` method.
But every loop would override the previous one as it is `=` and not `+=`.
Fixes#27922closesodoo/odoo#29109
When selecting a mention we will add a mention in a list of selection
from the list of mention.
In 10f0766b3 that mention in list of selection was escaped so this would
match the text that would be escaped when the mention was searched in
it.
But the object are the same so the change modified the original list.
Modified test failed with:
```
10. first partner mention should still display the correct partner
name (Expected: "ЅpëciãlUser<&>\"`' ツ" Result:
"ЅpëciãlUser<&>\"`' <&>"`' ツ")
```
opw-1909300
closes#29098
In the Lead form view, properly align "Planned Revenue" and "Probability" fields
side-by-side and adjust their styling in mobile.
Related to task 1891955
closesodoo/odoo#28763
On the third level of a organization chart, the number of subordinates
on the right but over the container boundary.
For the second level there was already a special case:
padding-left: $tmp-gap-base;
So for the third a fix could have been:
padding-left: $tmp-gap-base*2;
But this changeset replaces margin by padding so invisible content does
not create a horizontal scrollbar (since we had 100% width with
margin-left that busted it out of its container).
opw-1912437
closes#29043
Before this commit odoobot was appearing twice in mention
suggestions when talking to odoobot.
The initial need to be able to ping odoobot from everywhere led to the
override of channel_fetch_listeners. This is not usefull anymore.
This fix simply removes this override to avoid this problem since we
don't have a real use case where we need to ping odoobot in another
channel.
Task 1907142
closesodoo/odoo#28791
Fix translation placeholders in invite wizard, to make them easier to
understand for translators. Also rework the message generation code
to ensure proper XML structure.
That div has been given an absolute position, which does not work inside another
div on the dashboard.
If there are other dashboard elements below, there are unusable since they are
covered by the no_content_create div.
Moreover, there is no create button on the dashboard, so we shouldn't even see
it.
It also spares us from seeing that hideous clippy-inspired smiling paper sheet.
opw 1907650
closesodoo/odoo#29076
Commit 7077f18e3 tried to fix the website event menu issue.
But the fix was wrong and fixed only the event having a website_id set.
After the 7077f18e3 fix, event with a website_id set are working as expected
but the ones without a website_id are not working.
Indeed, it will create a website.menu without a website_id which will result in
the menu being duplicated for each website (multi-website rule).
The required on website_id when activating website menu on event was trying to
hide that new issue but it was problematic since:
1. We were removing a feature for no reason as it would not be possible anymore
to create a generic event (no website) with website menu activated.
2. The required would only work in form view, demo data or custo data loaded
through xml without a website_id but having website menu activated would
still bug and would not have a menu. Worst, the menu would be duplicated for
every website and added to the website navbar.
Now, regardless of the event having a website_id set or not, activating or
deactivating event menu will work.
closesodoo/odoo#29036
Before this commit, the total amount of unread messages of a
channel was considered in the computation of the messaging
menu counter.
As a result, if the channel contains 100 unread messages,
the messaging menu was displaying a counter of more than 100.
The intended behaviour is to increment the messaging menu
counter once per unread channel, thus the example above should
incremented the counter only once. The channel preview itself
should still display that there are 100 unread messages.
Task-ID 1913080
closesodoo/odoo#29080
Fine tuning of 00bf6709a8.
Let's consider two variants V1 and V2
The function check_cycle was too restrictive, it didn't allow
to create a BOM for V1 with a dependence to V2.
But a common use case could be for example:
A black T-shirt made from a white T-shirt and black color.
opw:1911622
closesodoo/odoo#29075
Before:
Suppose 'invoices 2018/0002 and 2018/0003' that becomes '2018000220180003' after
REGEXP_REPLACE(st_line.name, '[^0-9]', '', 'g').
'2018000220180003' ~ '20180002' match: OK
'2018000220180003' ~ '2018' match: NOT OK
'2018000220180003' ~ '' match: NOT OK
After this commit:
move.name/move.ref giving an empty string are filtered out.
'invoices 2018/0002 and 2018/0003'
becomes ' 20180002 20180003' after REGEXP_REPLACE(st_line.name, '[^(0-9|\s)]', '', 'g')
and becomes {"",2018001,2018002} after the regexp_split_to_array.
Then, the matching is now done by a comparison instead of a pattern matching between the move
and this array of potential candidates.
'20180002' = ANY({"",2018001,2018002}) match: OK
'2018' = ANY({"",2018001,2018002}) not match: OK
'' is filtered out: OK
closesodoo/odoo#28962
every request on the IAP-service server sends a batch of 25 views to
process. Each of them takes around 1.5 second to be processed, thus a
full batch will exceed the default timeout of 15 seconds.
In addition, we removed the config parameter that allowed to choose the
batch size as an high value could provoke another timeout error that
would evade the user's attention.
closesodoo/odoo#28967
Being in debug mode is necessary to become superuser (whether on the
login page or within the client), however because the becoming
endpoint would straight redirect to the _login_redirect result the
debug mode would be lost, which is commonly inconvenient.
Replace the redirect_with_hash call by local_redirect, which goes
through great pains to conserve the ?debug by default.
Task 1908202
closesodoo/odoo#29058
This tour was broken since the following refactoring:
https://github.com/odoo/odoo/commit/cd34f6de727d5b3858420cff3c9d3c5995c4e75c
With this commit, mail_tour should work correctly, and
is automatically run on runbot.
Note that the tour is automatically run in the module `test_mail`,
so that the tips are not displayed by installing Discuss.
Task-ID 1912730
closesodoo/odoo#29040
Let's consider two variants V1 and V2
The function check_cycle was too restrictive, it didn't allow
to create a BOM for V1 with a dependence to V2.
But a common use case could be for example:
A black T-shirt made from a white T-shirt and black color.
opw:1911622
closesodoo/odoo#29038
Have a many2one, click on search more
Open the filter menu of the search view
Add custom filter
Click to select a field
Before this commit, the whole dropdown closed
After this commit, it doesn't
OPW 1911337
closesodoo/odoo#28969
Revision on https://github.com/odoo/odoo/commit/cd34f6de727d5b3858420cff3c9d3c5995c4e75c
Before the commit above, it was possible to reply to a message
from Inbox. Those messages were linked to a document, and replying
to any of them put a response in the related document.
This feature has been broken since the commit above: the reply
icon was only shown on messages linked to a channel, instead of
message linked to a document. Also, it was erroneously prompting
that the message was sent to the channel, even though it was not
the case.
This commit fixes the issue by toggling the visibility of the
reply icon, so that it is shown only for messages that come from
a document. Also, since posting a message requires a thread, this
commit added the possibility to post a message from a mailbox,
which instead posts the message to the related document thread.
Task-ID 1912647
closesodoo/odoo#29028
Before this commit, when focusing on a date[time] field, the value was not selected
In v11.0, it was
This is due mostly because of the migration to BootStrap 4
After this commit, the value inside the input is selected
OPW 1911333
closesodoo/odoo#28989
Steps to reproduce the bug:
- Go to Contact app
- click on Configuration > Bank accounts
- Create a new one
Bug:
It was impossible because the field partner_id was hidden.
The form view view_company_partner_bank_form was displayed instead
of view_partner_bank_form.
opw:1908114
closesodoo/odoo#28916
When only installing in a new instance the app maintenance,
the admin was not in the group 'group_equipment_manager'.
So when going to Maintenance > Equipment, the button create
was not available
opw:1912453
closesodoo/odoo#29026
There was an issue in translation that broke the mail template "Sales
Order: Send by email" in german. This prevented to do a wired sale on
the ecommerce in german.
This has been fixed in https://transifex.com/odoo/ but is done in this
PR to fix it more speedily than next week.
opw-1911419
opw-1911696
closes#29033
When determining the last order for a given user, public users from
other websites need to be properly ignored. The previous behavior was
broken by 9d72263717
Before this commit, chat windows could not be sync'ed
between browser tabs for about 10 to 20 seconds.
This issue is caused by the implementation of the
crosstab longpolling, which uses a master-slave
architecture with a single tab being the master tab.
The master tab is responsible for performing the
longpolling RPC, so that it keeps a single HTTP request
for all Odoo tabs. Other tabs are synchronized through
the local storage.
When the master tab was closed, a new master tab election
must occur. However, this process was taking up to 20 seconds,
due to the tab waiting for their next tick on the local
storage to initiate a new election. The tick for a slave
tab is 10 seconds, and it may jumps a tick in case the master
tab is closed exactly before the tick, hence extending the
duration to 20 seconds.
This commit fixes the problem by ensuring that the tab
election for the longpolling is done right after the master
tab is closed. As a result, a new master tab should follow
right away.
Steps to reproduce:
1. open two tabs.
2. open a chat window in one tab: it opens in both tabs.
3. fold/unfold chat window in one tab: both tab should sync.
4. refresh both tabs.
5. fold/unfold chat window in one tab: both tab should not sync.
6. after 10 or 20 seconds, both tabs should again sync.
Task-ID 1911437
closesodoo/odoo#28925
- When fetching messages (e.g. opening discuss), we do not check if the
model associated to a message is accessible for the current user.
This could result to access rights error messages when trying to read the
main attachment of the associated record.
To avoid to triggers this errors, we first check if the current user
has read access to the specific model, if so we try to read the
record's main attachment.
closesodoo/odoo#29025
The example given when creating an account only applies to United
States. It is then confusing to users in other countries.
opw-1908241
closesodoo/odoo#29019
This commit fixes two related issues:
1. Previews without any message should not be dated.
Before this commit, when a channel or dm preview had no date,
it was displaying the current date. This commit fixes the issue
by not showing the date for those previews.
2. Dates previews should appear before undated previews.
Before this commit, undated previews were considered similarly
as dated previews in the ordering of previews in the messaging
menu. Since DMs are shown before Channels, any pinned DM without
any message were displayed on top of messages with some message.
This commit fixes the issue by putting undated previews after
dated ones. This rule is applied before considering type of the
thread (i.e. DMs before channels).
Task-ID 1912001
Before this commit, DMs had the prefix '#' in their
displayed name (e.g. '#Demo User').
This commit fixes the issue by putting this prefix
only on non-chat DMs. In particular, mailboxes, DMs
and Livechats no longer show this prefix. This change
is also visible in the breadcrumb of the discuss app.
Task-ID 1911738
This was possible do to it on opportunities, but not on leads (other
search view).
This is needed to allow effective search from activity dropdown.
closesodoo/odoo#29003