Before this PR, the delete button was completely invisible on image with white
background.
task-2709788
closesodoo/odoo#81000
X-original-commit: fd1e05cd131273504e7e6cd4f64f6ea63514b6b7
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this commit, unlink-all would sometimes fail to unlink more than one
record.
This seems to be the case in particular for x2many relations with isCausal true.
Indeed, the delete from isCausal is itself calling unlink-all on the inverse
relation (the same record that was being unlinked-all in the first place) which
would pre-emptively remove it from the same Set that was used during the initial
iteration.
The solution is to make a copy of the Set before iterating it to ensure all
records that were planned to be removed are actually removed.
Candidate fix for task-2410314 and definitely necessary for data integrity in
general.
closesodoo/odoo#80913
X-original-commit: 0077b93fea6f8c39ee535f19426c3f95a0e97e9f
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
In preparation for using OWL v2 in discuss code.
(`shouldUpdateBasedOnProps` will be removed)
Task-2695743
closesodoo/odoo#80615
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Using <a> with 'download' attribute to download the attachment.
Prevent calling .navigate() interrupting the current call.
task-2692597
closesodoo/odoo#80903
X-original-commit: 97fa88c2e8407972c83c93d4d2198633a5560ecc
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
In preparation for using OWL v2 in discuss code.
(shouldUpdateBasedOnProps will be removed)
Task-2695743
closesodoo/odoo#80616
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this commit, sometimes component do not properly
render changes in the models. Although the modeling is correct,
there is a problem in the component not re-rendering itself.
The shouldUpdateBasedOnProps component hook did not consider
update attempts that could be canceled. This commit adds this
consideration, so that it ensures component is eventually
rendered correctly
Task-2410314
Task-2705078
closesodoo/odoo#80877
X-original-commit: 12c77f52c5a16c95e57de31587d67eda4d582bde
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Before this commit, the title of RTC dialogs -- like "Change Layout" menu
during a video-conference -- was not properly translated. The titles were
always shown in English as a result.
This commit now properly mark them as translatable string, so they should
now be properly translated in other languages than English.
Task-2703292
closesodoo/odoo#80689
X-original-commit: fbcdb644f24ecd10049a3730099c4a426a1f607f
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Before this commit:
Attachment viewer not working for other types than the image for guest.
After this commit:
Attachment viewer will work for guest.
Task-2664816
closesodoo/odoo#80686
X-original-commit: 7bb5776d2108a20d248f98f2741be92e1bc9de50
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Since https://github.com/odoo/odoo/pull/73689 all internal users are no longer
known at init. Unlike what was stated in the corresponding PR, the code of
mentions wasn't actually good enough to allow it without any drawback.
This PR fixes the issue by prioritizing internal users on the result of the RPC.
As a bonus the internal user state is immediately returned when fetching
followers, which allows mentions to be accurate even before the RPC is done.
task-2695224
closesodoo/odoo#80645
X-original-commit: 86de2f231be87b289deb85c3b20b93d890cce918
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Before this commit:
Replying to the answer of /who command in a channel leads to the reply not being
associated with the correct message, it should simply not be possible.
After this commit:
Reply icon will be invisible for temporary or transient message.
Task-2700389
closesodoo/odoo#80623
X-original-commit: 1df56ba9e105bd2766e252be22a320046b815cf3
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Rename models 'test.*' to 'Test*' in order to be consistent with the new
naming convention for javascript models.
Part of task-2701674.
closesodoo/odoo#80562
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Omission of some tests that still use `component.el`.
In preparation of using OWL v2 in discuss code.
Task-2694242
Task-2701230
closesodoo/odoo#80507
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this commit:
Currently, in Discuss, the chat activates the drop zone when try to drag and
drop any user's avatar (or any text). The same thing happens if we do it in
the chat window or chatter.
After this commit:
The chat will not be activated drop zone if the drag is not actually
a file/a document.
Task-2590510
closesodoo/odoo#80464
X-original-commit: 0e2f46bc2cfd36dc3508a56601239c15e2301571
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this commit:
When trying to select emoji on log note before record creation,
it shows traceback.
After this commit:
Hiding the emoji button when the record is under creation.
Task-2664700
closesodoo/odoo#80352
X-original-commit: 10c06f9753540d0a58b1a93fc54947a58b092468
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Instead of "saving" the state into the DOM (which is lost at next render) save
the state of each button in JS.
task-2308951
closesodoo/odoo#80358
X-original-commit: 58d4d65e98d8f5196b4d6ca91cd5df96dfac1360
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
PURPOSE
Before this commit, when a partner was created through the
suggested recipient tool the langage wasn't considered...
The email was thus sent in the wrong langage most of the time
After this commit, the suggested recipient tool had the
langage correctly if present in the record.
LINKS
Task-2580065
PR : odoo/odoo#76812
Purpose
In discuss, improve chat UI so that it will be easier to read when a voice/video
call is started.
Specification
- Reduce paddings above and below message box.
- Put a white background for the massage box instead of light gray.
Task-2591180
closesodoo/odoo#74312
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Currently mail override of avatar user widget strips user name in
kanban view. Real reason is quite obscure, see odoo/odoo@59641325c7
In this commit we add an option to display both the avatar and the name.
Sometimes you want to display an avatar and a name to have a nice display
especially when focus is more on the displayed user / partner than on
chat capabilities.
Task-2388785
Part-of: odoo/odoo#77227
* = calendar, crm_livechat, hr, hr_holidays, im_livechat, mail_bot, sms,
snailmail, website_livechat
This commit will change the declaration of the models with the aim of
getting closer to a plain JSON-object. It allows us to eliminate a wide
portion of boilerplate code, making the declaration shorter, more
declarative, and less redundant, but mainly, it prepares the ground for
further changes.
Task-2695223
closesodoo/odoo#79259
Related: odoo/enterprise#22042
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
This PR introduce activity_box_model to handle the activity_box component logic.
part of task-2579306
closesodoo/odoo#79993
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this commit, in the rtc call viewer, it was only possible to
focus videos, this commit changes that by allowing to focus any rtc
session.
This is a first step in improving the focusing and layout system.
This commit also changes the call viewer and call participant card
templates to ensure that they remain consistent when focusing non-video
sessions, which also fixes a bug which caused avatars to not be round
when the displayed image had an aspect ratio other than 1.
closesodoo/odoo#79862
X-original-commit: d49407423164c44e86558cd2fc4f6c3ae47aed25
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this commit, it was possible to lock the transceivers of the
streams when the remote was updating this stream.
This commit fixes this issue.
closesodoo/odoo#79782
X-original-commit: 82c7d6dad5603242e72c45160ac7193e3fb1c350
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this PR, attachment box event handlers where stored inside the attachment box component.
This PR move the handlers inside a dedicated model.
part of task-2579306
closesodoo/odoo#79464
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this commit, granting the video permission when the call had
already ended would generate a traceback.
This commit fixes this issue.
closesodoo/odoo#79715
X-original-commit: 8759220048054e656d02696972d0a3229df508b1
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Before this commit, it wasn't possible to save the volume
of guests, the backend was already implemented but the
feature hasn't been implemented in the frontend, this commit
fixes this issue by completing the implementation.
taskId-2679227
closesodoo/odoo#79714
X-original-commit: 149456839f8379422affb53b7b64c6190b6e9f42
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Delete obsolete suggested_recipient_info with isCausal and ensure thread is
required on it.
This is intended to prevent crashing when creating a new partner from a
lead.
Task-2654859
closesodoo/odoo#79619
X-original-commit: fdbbed270d0c266a0e495136b461a4c40f8394bf
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
* = auth_signup, calendar, im_livechat, snailmail_account, survey, test_mail,
web_editor, website_crm_iap_reveal, website_livechat
The aim of this PR is to improve/fix various flaws and limitation of the current
API, to make it easier to use and more efficient.
Notification are now defined with 3 distinct parts:
- the channel determines which client(s) should receive it
- the type determines how it should be handled
- the payload determines any extra information helpful for handling it
Channel
=======
Business code
-------------
- Record channel is introduced for ease of subscribing to and sending
notifications to specific partners, channels, documents, ...
- String channel is still supported (but it is converted internally to the tuple
channel).
- Tuple channel is still supported without any change (but should be avoided
whenever possible due to its complex syntax).
The channel is no longer sent to the client. When the channel was used for
business purpose, the information it contained has been moved into either the
new type, or the payload itself.
Technical note
--------------
All channels are now internally converted to the tuple (db, ...) channel, which
is necessary for the platform code (saas/sh).
Internally, the bus.bus table is not changed, type and payload are grouped
together into what was (and still is) called message.
Type
====
Type is introduced to uniformize the way notifications are sent and handled.
All existing notifications already had some kind of manually-built type in them.
This is now officially supported at the bus API.
In client code this will allow (to be done in future commits) to register one
handler per specific type, instead of having to iterate and to filter all
received notifications on every handler.
Payload
=======
Payload (ex message) did not change, it can still be anything depending on
business needs.
Few adaptations:
- When the type was included on the payload, the type has been moved to the new
type parameter.
- When the channel was used in business code, its data has been copied into the
payload.
task-1891151
closesodoo/odoo#79201
X-original-commit: 543af27c7d6836ffac9e80ff8490b6ddbd849221
Related: odoo/enterprise#21998
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
In activity view, the deadline date that has no timezone is formatted
from UTC to local timezone, so if the timezone is negative, we display
by error the previous day (eg. 24 october instead of 25 october).
With this commmit, we interpret the date in local timezone so there is
no timezone issue.
note: no test added since this only happen on browser with negative
timezone which would be hard to test.
note: this was fixed similarily in 13.0 with 0735547086 but must have
been lost in a refactoring.
opw-2629681
closesodoo/odoo#78938
X-original-commit: 8935899c6fdc21ad6eff9f09af6e474652efbcd2
Signed-off-by: Nicolas Lempereur (nle) <nle@odoo.com>
and in the notification zone.
part of task-2634175
closesodoo/odoo#78865
X-original-commit: 88fc69c06e4f1516c8d95812395f1e2fbf10f44c
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Steps to reproduce:
1. Log on odoo with a user A on mobile device
2. Log on odoo with a user B on desktop
3. User B call user A
4. User A answer the call and the keyboard popup on the screen => BUG
To avoid this behavior, we disable the input auto-focus when we open a
chat window like other chatting app on mobile devices (like: Signal,
Messenger, WhatsApp...)
closesodoo/odoo#78864
X-original-commit: cf36921df8dff114f26a161c4f9d2f6a05ac2adb
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
This reverts commit 4c18e2d09a372e975c2133516cc9bdd1880b2c1b.
This commit makes a barcode qunit test crash non-deterministically,
but quite frequently (50% of the time).
At the time of reverting this commit, we still don't know how this
commit affects this barcode test, but it's urgent to resolve by
revert and understand more in depth what are the causes.
closesodoo/odoo#78827
X-original-commit: 29eb6d3e5ea859955290a2c3f53908b80e16f03e
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
when a message or logenote with attachment(s) is edited attachment gets removed
even if user does not want to delete attachment.
after this commit,
editing message text will update only message and attachment will not be removed.
attachment will be deleted only when user wants to delete it
closesodoo/odoo#78785
X-original-commit: dbd6cf34d3fcf9d66657b68766d2a25ee0d2515b
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
This commit intends to fix two strange bugs encountered while trying to
push a new component into the systray menu:
- MessagingMenuWidget and RtcActivityNoticeWidget were removing their
parent node via DOM manipulations when attached in the DOM. This caused
a crash when adding other items to the systray menu since the deleted
nodes were actually managed by OWL.
- The t-foreach directive in the navbar used indexes as the t-key, which
led mapping items subsequently added to wrong templates.
closesodoo/odoo#78784
X-original-commit: 5f0f80da4fc951954d253c9e45defd591605f556
Related: odoo/enterprise#21829
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Signed-off-by: Ooming <oomsveta@users.noreply.github.com>
Ensure that all models have their own explicit definition of identifying
fields. Prior to this commit, if a model did not have identifying fields,
the ones in mail.model were used implicitly because of the inheritance.
closesodoo/odoo#78722
X-original-commit: 02fb0c7caaa8a9813e7e78b464710eb772091e44
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Expected Behaviour
When a user reply to a mention (on an invoice, a client profile, ...) in a log_note, and this user answers directly in the chatbox, the answer should be considered as an internal discussion, and so be posted as a log_note.
Observed behaviour
Since V12, when a user reply in the chatbox, the reply is automatically set as a "send-message" reply, which is a issue as the user sends an email to all followers of the discussion while he probably thinks his answer will be visible only by the internal users.
Reproducibility
This bug can be reproduced following these steps:
1. Declare at least 2 users (A and B) and make sure user A handles notifications in Odoo
2. Log as user B, go anywhere in Odoo as user B and mention the user A in a log_note
3. Log as user A, open the mention notification and reply in the chatbox
4. The answer will be noted as a send-message answer, sending then e-mails to all followers ...
Problem Root Cause
As long as the V12 isn't supported anymore, we didn't investigate this version. In V13, the issue comes from the fact the chatbox didn't use the same composer class as the discussion module, and then it's not possible to send a log note from the chatbox. In V14, as the discussion module has been totally refactored, the "error" comes from the arbitrary choice to set "false" as the default value of "isLog" on a general message, which implies that the answer from the chatbox is considered as a "send-message" and not as a "log-note".
Related tickets
opw-2602712
opw-2659484
closesodoo/odoo#78565
X-original-commit: 9e62872561f9914beac8f58f5c3ebed83cd9defc
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Before this commit: when creating scheduled activity from activity cell
activity type was not passed in context due to which default activity type not
set, to produce: CRM -> Activity View -> Click on existing record of activity
view which will open popover -> click on Scehdule Activity button, this will
open scheduled activity form but it will not have default activity type.
After this commit: when clicking on Scehdule Activity button from activity
popover, default activity type will be passed in context.
task-2568793
closesodoo/odoo#78330
X-original-commit: 17cbafdd1ce4f5f095512677d5b3750e3a8dc889
Signed-off-by: Simon Genin (ges@odoo) <ges@odoo.com>