| Age | Commit message (Collapse) | Author |
|
Bug
===
Since 4da64b3f3c8dff88d8e0e01c65374590cc0bf4f7 , if multiple users of
different companies are in the same channel, and if the type of the
channel is "email", a traceback is raised when sending a message.
Technical
=========
"with_user" drop the SU flag and is not enough to bypass the multi
company ACLs. Moreover, we do not want to send a "channel_seen" bus
notifications and we can mark the message as seen on the JS side
directly.
Changes
=======
So now, the traceback is not raised anymore in that case, and the
message is marked as seen if the receiver has the web client open.
But, if the receiver has not the web client open, when he will login,
the message will not be marked as seen. This can be improved but at the
moment we just want to revert the fix that cause the traceback and fix
the issue in most cases.
Task 2427790
closes odoo/odoo#65185
Signed-off-by: Thibault Delavallee (tde) <tde@openerp.com>
|
|
If the chat window was initially folded and when a new message is received
the chat window automatically unfolds. it is annoying having a window that
pops up each time a new message is coming while having folded it once.
So, It should remain folded when a new message is received if the chat
window is already folded.
Task : 2522141
closes odoo/odoo#70737
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
|
|
Before this commit, a page reload or a redirect could raise following
error:
```
Uncaught (in promise) TypeError: this.env.services.bus_service is undefined
```
This happens due to `Messaging` model relying on `bus_service` in its
teardown method `_willDelete`. This is sometimes unsafe because the
bus service may not have been deployed yet.
Task-2468469
closes odoo/odoo#66818
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
|
|
The `mail` module logs bus notifications it does not handle. However, some
notifications are not meant to be handled by `mail` and it's perfectly fine.
This commit removes the log to avoid useless noise in the console.
closes odoo/odoo#66661
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
|
|
This commit prevents the opening/closure of a channel on mobile when
the action is performed on desktop and reciprocally
closes odoo/odoo#64599
Tasks-id: 2267593
Related: odoo/enterprise#16296
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
|
|
- Send the new Inbox counter when marking as read, to guarantee the JS has the
correct value (instead of having to guess it which was impossible when an
arbitrary domain was given to the method).
NOTE: Manual increment is kept on receiving a new Inbox message because that
one was reliable and it would have been more tricky to compute the new counter
for each target partner (mark as read is one user doing an action for himself,
whereas new message is from another user to potentially many different users).
Generic counter for threads is also not sent on every change for similar
reasons.
- Refresh Inbox automatically when some messages are marked as read and there
are more message on the server than currently loaded.
- Remove confusing (and impossible to maintain) counter on non-origin threads
(in particular channel followers). This behavior in JS was not consistent with
the server which always counted only origin thread (model/res_id).
task-2446302
closes odoo/odoo#65161
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
find is O(n) and findFromIdentifyingData is O(1)
task-2440693
closes odoo/odoo#64712
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
Before this commit, some notifications in mail were not following the
changes made in odoo/odoo#52826 .
task-2278579
closes odoo/odoo#63614
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
Task-2411800
closes odoo/odoo#62930
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
task-2388659
closes odoo/odoo#62442
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
task-2387822
closes odoo/odoo#62089
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
task-2343887
closes odoo/odoo#60906
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
task-2346862
closes odoo/odoo#60080
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
|
|
This PR has 3 parts:
The members fix itself, which is necessary for performance reasons especially
at init messaging, as per described in the task.
Adding the partner name in the typing payload, because due to not knowing all
members anymore, it is necessary to properly display who is typing.
Restrict restoring scroll position only if the corresponding scroll height is
available, to make the scroll feature and particularly the corresponding tests
more robust.
task-2360020
closes odoo/odoo#60091
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
- don't reset `stringifiedDomain` when changing thread (this led to the
control panel displaying obsolete filters)
- refresh non-main cache that are currently displayed when there is a known
change of messages in the same thread's main cache
- refresh non-main-cache on displaying them, to fetch potentially new messages
- fix discuss "select all" conditions
task-2171873
task-2282374
closes odoo/odoo#59631
X-original-commit: b89dc5f949b3ad062fc4197a4152066c207e1bf9
Related: odoo/enterprise#13958
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
task-2336251
closes odoo/odoo#58867
X-original-commit: f732980b2e5e83bcf2fdc8d3ce756f256cacbd4f
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
|
|
Also fix compute of local counter in some specific situations.
task-2341740
closes odoo/odoo#58855
X-original-commit: 7d1878ff8a4757d1626d694b624f79e597ddd717
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
|
|
(in message seen indicators)
task-2335647
closes odoo/odoo#58373
X-original-commit: 3d4ff42f4474a5761c9e0737297d973992a2fcc2
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
|
|
- channel_seen is now called even for own message and only when needed
- channel_seen is now called with a message_id which transfer the
decision of what is seen to the client which makes more sense
task-2282235
task-2282248
closes odoo/odoo#57950
X-original-commit: 04edfa50ccea305050d017c4a1996e561bc7bd57
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
|
|
Automatically load messages from a thread cache only if the thread cache is used
in at least one thread view.
Ensure thread viewer don't keep thread view records alive when they are not
displayed.
This change is particularly important for performance, to avoid spamming RPC at
init if many threads are opened in chat windows.
task-2310623
closes odoo/odoo#57061
X-original-commit: dd6981c7812134e0588f80a157eaba45512cd68e
Related: odoo/enterprise#12936
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
task-2244279
task-2262862
task-2274993
task-2277537
task-2282238
closes odoo/odoo#56745
X-original-commit: 109f202
Related: odoo/enterprise#12761
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
|
|
- fix traceback on receiving first livechat message due to bad computation of
correspondent
- fix missing [0] in return of country name_get in channel_info
- fix visitor/correspondent computation to work when chatting with oneself
- reintroduce livechat ordered by last message in discuss sidebar
- improve mock server to make these fixes possible to test
- introduce corresponding tests
PR: #56243
task-2323670
closes odoo/odoo#56414
X-original-commit: f623bfd2c8819604c709bc723153c071dca6e3cc
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
This is typically not the case in production code, but it doesn't hurt to be
safe. The main reason for the change however is that it causes issues in tests
due to the easiest way to simulate notifications being to send them directly on
the bus which is "listened to" no matter the target user.
PR: #56243
Part of task-2323670
X-original-commit: 62e1e7fe39a7bed6ce70466a0aec645c7a0f299d
|
|
Inserting channels and handling notifications for channels that have not been
properly initialized through the `channel_info` leads to issues due to
incomplete data that is not properly handled, such as bad correspondent, missing
uuid, inconsistent name, etc.
Moreover it doesn't make sense functionally to handle notifications such as
typing status if the channel isn't going to be displayed.
PR: #56243
Part of task-2323670
X-original-commit: 75070665060d64fe7b532aac4fc8e8410381b083
|
|
Part of task-2308312
X-original-commit: 0e08e43decf18108d25d051ad76c093bcdf434db
|
|
Clicking on mark as read on a given message would move all messages in
inbox to history instead of only selected message(s). This commit fix
that behaviour so that only the selected message(s) move(s) to history.
task-2284543
closes odoo/odoo#54688
X-original-commit: 3304b89fc799b979b028aa4c7efe902b2f5276c1
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
FIX: use the correct API of mail.channel.py to unfollow a channel
i.e.: `execute_command_leave`
FIX: unpinning a channel has immediate effect on the interface
chatWindows are closed, and the inbox is displayed
FIX: unpinning a channel destroys corresponding chatWindows across tabs
It also unpins the channel in other tabs
FIX: python sends is_pinned as part of the channel_info
both at init messaging and in the main bus notification
That way, we can keep track of the synchronization of the pin status
between JS and python
task-2275000
task-2267941
closes odoo/odoo#53703
X-original-commit: d4fcc64acb2fc0c6fd9df505380f665abd8b39c4
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
task-2171881
closes odoo/odoo#53440
X-original-commit: 80d13bb828ee75a50d8cea29046a8eb49c71948a
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
|
|
This commit is a significant rewriting of client-side discuss, chatter,
chat window, and messaging menu using OWL. The behavior should be broadly
the same, with some slight functional changes here and there.
From a technical standpoint, the code of messaging is mainly organized in 2
main groups of modules:
- models, which are logical entities that depict the client-side state of
messaging as a whole.
- components, which are in charge of displaying information from models.
This refactoring also introduces new JS guidelines regarding folder structure
(/static) and naming rules for JS modules.
Community PR: https://github.com/odoo/odoo/pull/39023
Enterprise PR: https://github.com/odoo/enterprise/pull/6249
Task-1914207
This PR is a collaborative work by Alexandre, Julien, Sébastien and Xavier,
with the precious help of Lucas to speed it up towards the end.
closes odoo/odoo#39023
Related: odoo/enterprise#6249
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Co-authored-by: Alexandre Kühn <aku@odoo.com>
Co-authored-by: Julien Giannone <jgi@odoo.com>
Co-authored-by: Lucas Perais <lpe@odoo.com>
Co-authored-by: Sébastien Theys <seb@odoo.com>
Co-authored-by: Xavier Dubuc <xdu@odoo.com>
|