Commit Graph
4294 Commits
Author SHA1 Message Date
tsm-odoo f02e532c76 [FIX] mail: fix traceback on rtc call
Since the PR hiding the screen sharing button on mobile [1], starting a
call result in tracebacks. The issue is that the code is using `env.device`
which is only available in the legacy env while discuss works with the wowlEnv.
In order to solve this issue, let's use `messaging.device` instead.

[1]: https://github.com/odoo/odoo/pull/97947

closes odoo/odoo#98400

X-original-commit: 5fb6ea52ef876939a316bfc289237b443089f37b
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Signed-off-by: Stockbauer Matthieu (tsm) <tsm@odoo.com>
2022-08-18 18:25:43 +02:00
Romeo Fragomeli cf4f23d484 [FIX] web,*: adapt old BS4 classes
*: hr_org_chart,l10n_gcc_invoice_stock_account,mail,point_of_sale,
   purchase,website,website_sale,website_sale_autocomplete,
   website_slides_survey

Some commit have added old Bootstrap 4 classes after the merge of
Bootstrap 5.

Note that it's not possible anymore as the merge bot is now able to
detect it.

closes odoo/odoo#98349

Related: odoo/enterprise#30551
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
2022-08-18 16:47:30 +02:00
Louis Wicket (wil) 8537944b4b [IMP] mail: rewrite MessageReactionGroup/message to not use compute
closes odoo/odoo#98344

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-08-18 13:46:51 +02:00
Louis Wicket (wil) 5d43fad9e6 [IMP] mail, *: auto add implicit attributes of identifying fields
Automatically add `required` and `readonly` on identifying fields and
remove them from field definition.

Task-2955910.
* = calendar, hr, im_livechat, rating, snailmail, website_livechat

closes odoo/odoo#98283

Related: odoo/enterprise#30511
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-08-17 19:48:53 +02:00
Rahul Prajapati 4123505efa [IMP] *: have replace as default command on update
* im_livechat, mail, snailmail, website_livechat

PURPOSE:

A `replace` command should be default while updating a field.

SPECIFICATION:

- If no command is passed while updating a field, add a `replace` command as
default.
- Remove all the existing occurrences of `replace` command.

Task-2851488

closes odoo/odoo#95885

Related: odoo/enterprise#30494
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-08-17 19:48:11 +02:00
Sébastien Theys 60c87dd426 [IMP] mail, *: introduce identifyingMode and remove identifyingFields
* = calendar, hr, im_livechat, rating, snailmail, website_livechat

This simplifies definition and overrides and opens up new identification
opportunities.

Part of task-2741982

closes odoo/odoo#98166

Related: odoo/enterprise#30470
Signed-off-by: Louis Wicket (wil) <wil@odoo.com>
2022-08-17 11:21:40 +02:00
Louis Wicket (wil) e8681d7440 [IMP] mail: remove useless memberThreads field on Partner
closes odoo/odoo#98191

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-08-16 17:50:07 +02:00
Louis Wicket (wil) 83b307bb0e [IMP] mail, im_livechat: remove useless guards
Remove useless guards introduced in odoo/odoo#97996.

closes odoo/odoo#98147

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-08-16 16:28:35 +02:00
Didier (did) a682b0349c [IMP] mail: disable chatter when the user has no write access
Before this PR a user that could not post on the chatter could still try. This
PR disable the chatter topbar menu if the user doesn't have the write access.

task-2693304

closes odoo/odoo#88531

Related: odoo/enterprise#30054
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-08-12 23:37:10 +02:00
Louis Wicket (wil) 090c558452 [IMP] mail, *: introduce Mailbox model for mail.box threads
This commit will simplify the code of Thread by properly splitting all
behaviors exclusive to mail.box threads.

* = test_mail_full

closes odoo/odoo#97996

Related: odoo/enterprise#30402
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-08-12 17:06:08 +02:00
Louis Wicket (wil) 52e6e0ce54 [IMP] mail, *: move channel_type field from Thread to Channel
As the name suggests, `channel_type` only makes sense for Channel.
This commit moves `channel_type` from Thread to Channel.

* = im_livechat, test_discuss_full

Part of task-2948676.

closes odoo/odoo#97779

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-08-11 17:56:51 +02:00
Romain Estievenart c87b9e105c [FIX] mail: hide sharing screen button on mobile devices
The current implementation of sharing screen uses the
`MediaDevices.getDisplayMedia()` API. Sadly this API is not currently
supported by all major existing mobile browsers[1].
Some users were confused about the browser request permission
notification. As this is a way more complicated than just adding a
permission. We prefer to hide this feature by removing the screen
sharing button on mobile devices.

Links:
[1] https://developer.mozilla.org/en-US/docs/Web/API/MediaDevices/getDisplayMedia
[2] https://bugs.chromium.org/p/chromium/issues/detail?id=487935

opw-2915773

closes odoo/odoo#97947

X-original-commit: 2bf5ce06ef18d10c79ebab57551267eb31de872f
Signed-off-by: Adrien Dieudonné (adr) <adr@odoo.com>
2022-08-11 16:36:04 +02:00
tsm-odoo 6d9ff04a18 [FIX] mail: fix compute audio triggered on each qunit test
During qunit test, the audio notification is never used but the audio
element is still computed. This leads to unnecessary get requests
being triggered on the server. This PR prevent computing the audio
field of the user_notification_manager if canAudio is set to false.

closes odoo/odoo#97785

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-08-10 14:43:52 +02:00
Lucas Perais 1814888a7f [FIX] mail: text emojis field should remove its dropdown on destroy
Have a field with widget text_emojis.
Click Edit on the form view.
Click Save.

Before this commit, the button that opens the dropdown was still present in the dom in readonly mode.

After this commit, it is correctly removed.

closes odoo/odoo#97704

Signed-off-by: Lucas Perais (lpe) <lpe@odoo.com>
2022-08-09 09:00:10 +02:00
tsm-odoo d952fbcb96 [IMP] bus: move sendNotification to mail module
The BusService class only adds the possibilty to send notifications.
This is only used in the mail module. Let's remove this unnecessary
override and move this functionnality into mail models.

closes odoo/odoo#97685

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-08-09 06:28:00 +02:00
Didier (did) 633f58f8a4 [IMP] mail: im_status for guests
task-2883466

closes odoo/odoo#97076

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-08-08 21:02:21 +02:00
stefanorigano (SRI) 6b41d20815 [ADD] web, *: transition-x utility classes
Define classes for some default bootstrap transitions + 'none'.
These values are generic enough to fit different circumstances.

Classes added:
- transition-base
- transition-fade
- transition-none

Part of the overall v16 SCSS optimization/restyle, task-2704984.

task-2918463

closes odoo/odoo#97051

Related: odoo/enterprise#30066
Signed-off-by: Pierre Paridans (app) <app@odoo.com>
2022-08-04 13:54:15 +02:00
stefanorigano (SRI) bd2a1110a0 [REM] *: drop o_cursor_default & o_cursor_pointer classes
Drop custom cursor classes in favor of Bootstrap default ones.
Part of the overall v16 SCSS optimization/restyle, task-2704984.

task-2918463

Part-of: odoo/odoo#97051
2022-08-04 13:54:12 +02:00
Aaron Bohy 2ca93bd1ec [FIX] mail: correctly display activity dropdown in list
Before this commit, the dropdown of the activity widget wasn't
visible when the widget was used in a legacy list view, because of
the `overflow: hidden` rule on the cell.

Part-of: odoo/odoo#97415
2022-08-04 11:45:42 +02:00
Sébastien Theys 2a104bff47 [IMP] mail, im_livechat: remove obsolete SCSS rules
These rules no longer target any element.

closes odoo/odoo#97386

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-08-03 15:10:07 +02:00
tsm-odoo de498ee63a [FIX] mail: fix remove attachment from composer test
This PR fixes the 3922 runbot issue.

closes odoo/odoo#96972

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-08-03 04:31:46 +02:00
Bruno Boi 9d1786c361 [IMP] web: account for local timezone when formatting dates
formatDate and formatDateTime had their default 'timezone' option set to
false but this was changed to true in order to have the same behavior as
the legacy formatDate and formatDateTime functions.

Part-of: odoo/odoo#96946
2022-08-02 09:19:56 +02:00
Louis Wicket (wil) fc2118f5c3 [IMP] mail: remove Record/create
The way the code has evolved, `create` is now no more than an
unnecessary indirection for `insert`.

This PR removes `create` and replaces its uses with `insert` directly.

closes odoo/odoo#97058

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-08-01 10:55:44 +02:00
Brieuc-brd f7469552a1 [IMP] mail, test_mail: TrackingValue, redesign
This commit redesigns the `TrackingValue` component.
Part of the ChatWindow/Discuss redesign

task-2823627

closes odoo/odoo#92872

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-07-29 15:53:06 +02:00
Brieuc-brd dc942516d4 [IMP] mail: MessageInReplyToView, redesign
This commit redesigns the `MessageInReplyToView` component.
Part of the ChatWindow/Discuss redesign

task-2823627

Part-of: odoo/odoo#92872
2022-07-29 15:53:06 +02:00
Brieuc-brd 9b995e5b7d [IMP] mail: Message, redesign
This commit redesigns the `Message` component for the ChatWindow,
Discuss and the Chatter. The purpose is to make the chats more
user-friendly.

task-2823627

Part-of: odoo/odoo#92872
2022-07-29 15:53:06 +02:00
Brieuc-brd f169280275 [IMP] mail: increase the ChatWindow size
Following the redesign of ChatWindow, this commit increases its size.

task-2823627

Part-of: odoo/odoo#92872
2022-07-29 15:53:05 +02:00
Zelong Lin 1c1bcced26 [ADD] mail: compact message action list
task-2869932

Part-of: odoo/odoo#92872
2022-07-29 15:53:05 +02:00
Louis Wicket (wil) 072756d9b1 [IMP] mail: remove Record/get
closes odoo/odoo#96984

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-28 18:01:22 +02:00
tsm-odoo ecd4cba040 [FIX] mail: runbot error accessing messaging on undefined
This PR fixes the 4427 runbot error.

closes odoo/odoo#96966

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-28 15:03:54 +02:00
Rahul Prajapati fda3a48e94 [IMP] mail: move oncomponentupdate from discuss_view to thread
PURPOSE:

The whole process depends on `thread_view` render, not `discuss`. So, it's
unnecessarily making `discuss_view` observe and rerender on a lot of useless
values.

SPECIFICATION:

Remove method from `discuss_view`. Make some onChange methods for handling
the functionality.

Task-2869417

closes odoo/odoo#94147

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-28 11:54:21 +02:00
Thanh Dodeur 2cbad9a3f7 [REF] mail: separate the tile model based on the parent view
Before this commit, the `callParticipantCard` model was used separately
for both the main session and the multi-tile views
(`CallSidebarView`/`CallMainView`), this commit makes so that each
multi-tile view has its own list of tiles.

part of task-2692836

closes odoo/odoo#96868

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-28 05:04:29 +02:00
Sébastien Theys 13245211a1 [IMP] mail: move mark_all_as_read into message_fetch
This removes an extra request, targets fetched messages more reliably and
simplifies the code.

task-2847909

closes odoo/odoo#96840

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-07-28 03:51:33 +02:00
tsm-odoo 71d5af4ce0 [FIX] bus, *: fix onNotification/offNotification
*: im_livechat, snailmail_account, survey, web_editor.

The callback registered by the bus service method onNotification was
not the same unregistered by offNotification. Since those method were
superfluous, they have been removed in favor of (add/remove)EventListener.

closes odoo/odoo#96684

Related: odoo/enterprise#29819
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-27 16:34:10 +02:00
Sébastien Theys b401ba6e2d [IMP] mail, *: remove legacy code from activity systray
* = calendar, crm, im_livechat, mass_mailing_sms, note, test_discuss_full,
    test_mail

task-2920645

closes odoo/odoo#96114

Related: odoo/enterprise#29794
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-07-27 02:18:15 +02:00
Thanh Dodeur 0efcb55c6f [REF] use ChannelMember in CallParticipantCard model
part of task-2692836

closes odoo/odoo#95418

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-27 02:18:09 +02:00
Thanh Dodeur 174ff9ff83 [REF] mail: use the channelMember relation for RtcSession
part of task-2692836

closes odoo/odoo#96394

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-25 20:12:42 +02:00
Radhika Shyara f65ae53fb2 [FIX] mail: fix the follower subtypes order
Before this commit, the subtypes are not correctly ordered when
none of the subtypes have a parent model. while it should be
order by parent model, then by sequence.

So in this commit, we will first check if both their parent model
are falsy then we can't order them (A = B). Then we will consider
their sequence, and they will be useful to determine the proper order.

task-2904015

closes odoo/odoo#96402

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-25 16:33:46 +02:00
Sébastien Theys 28200c5ad5 [IMP] mail, web: adapt chatter container in new form
task-2871070

Part-of: odoo/odoo#78221
2022-07-22 16:21:45 +02:00
tsm-odoo fdce32d186 [IMP] mail: legacy activity menu to wowl registry
To prepare for the introduction of the ActivityMenuContainer Component,
let's  make the ActivityMenu widget use the systray registry.

closes odoo/odoo#96341

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-21 00:50:17 +02:00
Brieuc-brd aca92c6887 [REF] mail: Message, review and simplify scss (phase 2)
Since the migration to Bootstrap 5, we can now use BS 5 utility classes
in the discuss_public view.
This commit simplifies the scss related to discuss_public.

task-2909016

closes odoo/odoo#95772

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-07-19 20:13:09 +02:00
Louis Wicket (wil) fdcaa53ca0 [IMP] mail, *: rename mail.channel.partner to mail.channel.member
* = calendar, crm_livechat, hr_holidays, im_livechat, privacy_lookup,
privacy_lookup, test_discuss_full, test_mail_full, website_livechat

closes odoo/odoo#95912

Related: odoo/upgrade#3681
Related: odoo/enterprise#29433
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-19 11:50:37 +02:00
tsm-odoo 3b9a90e14f [IMP] bus: replace on/off by (add/remove)EventListener
on/off are deprecated in favor of  addEventListener/removeEventListener.
Calls to the bus service have been updated to reflect those changes.

task-2053917

closes odoo/odoo#96017

Related: odoo/enterprise#29501
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-18 18:41:33 +02:00
William Braeckman f3590959b0 [IMP] mail: improve attachment_viewer
This commit improves the expendability of the attachment_viewer model
and component by making it less dependent on attachment_list.

This is required by the refactoring in wowl of the documents app(s).

TaskId-2898342

closes odoo/odoo#94930

Related: odoo/enterprise#28976
Signed-off-by: Yannick Tivisse (yti) <yti@odoo.com>
2022-07-15 23:29:44 +02:00
tsm-odoo 7821fdd957 [IMP] bus: introduce presence service
The code handling user presence and the one handling bus notifications
are mixed up. In order to ease the PR introducing the websocket in Odoo
and to clear this mess, the presence service has been introduced.

task-2053917

closes odoo/odoo#95981

Related: odoo/enterprise#29524
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-15 19:15:54 +02:00
Thanh Dodeur fcc6a008da [REF] mail, *: make rtc invitations use the new ChannelMember model
* test_discuss_full

channel invitation to rtc calls are now using the `ChannelMember` and
`mail.channel.partner` models instead of the `partner` and `guest`
models.

part of task-2692836

closes odoo/odoo#95898

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-15 14:21:50 +02:00
Sébastien Theys d4c4388518 [FIX] mail: fix read only check from _insertOtherRecord
`options` were not properly forwarded all the way to `_insertOtherRecord` which
lead to issues when a compute would try to insert an inverse that already
existed but for which the inverse of the inverse was not yet defined because it
also depended on a compute.

Part-of: odoo/odoo#95898
2022-07-15 14:21:50 +02:00
tsm-odoo 27b472e5ed [IMP] bus, *: remove obsolete web_client_ready when using bus
*: calendar, iap_mail.

Now that the bus service is a wowl service, we don't need to wait for
the webclient to be ready before using it. Indeed, the services now
have the bus service as a dependency which means it will always be ready
in time. This also showed that the rpc service was missing as a bus service
dependency. It has been added.

Some part of the code were also checking if the bus service was in
`env.services`. Those calls have been removed as well since we now
have the guarantee that it is.

closes odoo/odoo#96002

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-14 16:42:19 +02:00
Sébastien Theys f7ba6ce258 [FIX] mail: fix editing last message with arrow
task-2918507

closes odoo/odoo#95932

Signed-off-by: Louis Wicket (wil) <wil@odoo.com>
2022-07-14 11:42:54 +02:00
Matthieu Stockbauer 3ae11c87e8 [IMP] mail, *: adapt bus service to wowl env.
*: bus, calendar, iap_mail, im_livechat, project, web.

In order to ease the PR introducing the websockets in Odoo, the bus service
has to be updated to be a wowl service. This PR takes care of it.

task-2053917

closes odoo/odoo#95824

Related: odoo/enterprise#29361
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-14 11:42:42 +02:00