Commit Graph
87 Commits
Author SHA1 Message Date
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
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
tsm-odoo c68c0f3400 [IMP] mail, *: remove create component methods in tests
*: sms, snailmail, hr_holidays.

task-2871066

closes odoo/odoo#97093

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-29 18:34:19 +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
tsm-odoo 8a04a0297a [IMP] mail, im_livechat: remove createComposerComponent
task-2871066

closes odoo/odoo#96886

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-28 13:21:22 +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
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 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
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
Sébastien Theys 458cb9b55a [IMP] mail: display guest in channel member list
Part of task-2664860

closes odoo/odoo#95859

Signed-off-by: Louis Wicket (wil) <wil@odoo.com>
2022-07-12 18:31:42 +02:00
Rahul Prajapati 51c72ae955 [IMP] mail: open dm chat on mention or member click
Purpose:

Access the DM chat to a user when clicking on its @mention
(DM or chatter) or member name (in Discuss).
The same goes for @mention to channels.

Specifications:

- DM to Author should be opened after clicking on his name
- DM to Author should be opened after clicking on his mention
- DM to channel should be opened after clicking on it's mention
- There should be a grey background hover effect on channel members in
  members list

Task-2631948

closes odoo/odoo#92050

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-12 13:20:56 +02:00
Sébastien Theys 2943b95673 [IMP] mail: rename ComposerSuggestion to ComposerSuggestionView
Part of task-2741982

Part-of: odoo/odoo#95341
2022-07-08 18:44:57 +02:00
Ipsita Borisagar bd832118ee [FIX] mail: remove deprecated exists check
The deprecated exists check(located in getFieldValue (ModelManager)) is removed,
but a lot of tests will fail after removing this check because it will try to
read fields after records are deleted. So added some missing exists checks.

Task-2871062

closes odoo/odoo#95415

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-08 14:33:59 +02:00
Louis Wicket (wil) c56c5ca28f [FIX] mail: don't crash on click reply
Fix bug introduced in https://github.com/odoo/odoo/pull/94948.
Add test for MessageInReplyToView.

closes odoo/odoo#95303

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-07-05 12:42:39 +02:00
Sébastien Theys 7b464a992b [IMP] mail: introduce MessageListViewMessageViewItem
This allows to remove the AND/OR mix from message view identifying fields.

Part of task-2741982

closes odoo/odoo#94948

Related: odoo/enterprise#28988
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-07-01 16:35:49 +02:00
Sébastien Theys 723cfddf38 [IMP] mail: move messageViews from ThreadView to MessageListView
Part of task-2741982

Part-of: odoo/odoo#94948
2022-07-01 16:35:49 +02:00
Alexandre Kühn 1e67f46544 [IMP] mail: rename EmojiList to EmojiPickerView
Part-of: odoo/odoo#94646
2022-07-01 16:35:27 +02:00
tsm-odoo bc2bf646c9 [IMP] mail, *: remove createThreadViewComponent in tests.
*: sms, snailmail.

The createThreadViewComponent helper was used during tests to mount
a thread view component  and test it. However, this approach is not
very realistic and blocks some waiting PRs. In order to get closer
from the reality, let's mount a webClient so that the thread view
component can be mounted in its real environment.

task-2871066

closes odoo/odoo#94691

Related: odoo/enterprise#28954
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-29 17:11:30 +02:00
tsm-odoo 91cb9002dc [IMP] mail, *: remove deprecated autoOpenDiscuss parameter
*: im_livechat, website_livechat.

The autoOpenDiscuss parameter was used but is deprecated for a while now.
This PR removes it.

closes odoo/odoo#94716

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-28 14:06:06 +02:00
tsm-odoo 2dc1d9d4a7 [IMP] mail: replace createMessageComponent during tests
The createMessageComponent  helper was used during tests to mount
a message component  and test it. However, this approach is not
very realistic and blocks some waiting PRs. In order to get closer
from the reality, let's mount a webClient so that the message component
can be mounted in its real environment.

closes odoo/odoo#94243

Related: odoo/enterprise#28720
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-24 19:34:03 +02:00
Renaud Thiry e42446600e [FIX] mail: Update legacy arguments for services.action.doAction
Emails could not be resent from the chatter after failing to be sent.
This was due to parts of code not being updated after a refactoring of OWL.

Multiple other instances of non-updated code are updated here.

Task-2887153

closes odoo/odoo#94529

X-original-commit: 8fbdb1b52b9051e92e4980d5af73460a46fe70da
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-24 15:00:48 +02:00
tsm-odoo 850367e954 [IMP] mail, website_slides: replace createChatterContainer during tests
The createChatterContainer helper was used during tests to mount
a chatter container and test it. However, this approach is not
very realistic and blocks some waiting PRs. In order to get closer
from the reality, let's mount a webClient and open a form view
containing a chatter.

closes odoo/odoo#94175

Related: odoo/enterprise#28684
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-24 12:39:35 +02:00
tsm-odoo e97214ff4e [IMP] mail, *: remove createMessagingMenu during tests
*: im_livechat, test_mail, test_mail_full.

The createMessagingMenu helper was used during tests to mount
the messaging menu and test it. However, this approach is not
very realistic and blocks some waiting PRs. In order to get closer
from the reality, let's instanciate a webClient and a systrayService
for the messagingMenu to be present at all time.

closes odoo/odoo#94301

Related: odoo/enterprise#28747
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-22 16:32:42 +02:00
tsm-odoo b575fa53a7 [FIX] web, *: fix scroll tests
*: mail, point_of_sale, test_mail_full.

The alt of images can be displayed slightly after the programatic
scroll which means the scroll height we set and the one we assert
are slightly different (the client height have changed). In order
to solve this issue, all alt attributes are replaed by data-alt
during tests. The src attribute is removed as well to make sure
images won't trigger a GET request on the server.

closes odoo/odoo#94092

X-original-commit: 0446923db6b7376ee2c27e3f6e94b5f8e43a14fb
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Signed-off-by: Stockbauer Matthieu (tsm) <tsm@odoo.com>
2022-06-21 11:20:20 +02:00
Rahul Prajapati 71a68c5923 [IMP] *: remove support for empty create with pyenv
* hr, im_livechat, mail, sms, snailmail, test_mail_full, website_livechat,
  website_slides

PURPOSE:

Creating a record with no values has no sense but is sometimes useful during
tests.
The support should be dropped for `default` parameter in `create`.

SPECIFICATION:

All the occurrences of `create()` have been replaced by `create({})`.

Task-2869394

closes odoo/odoo#93917

Related: odoo/enterprise#28538
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-20 15:31:51 +02:00
Sébastien Theys 4d41afd0ef [IMP] mail: rename PartnerImStatusIcon to PersonaImStatusIcon
Now that it potentially contains guests, the previous name is no longer correct.

Part of task-2883466

closes odoo/odoo#93731

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-06-17 14:14:33 +02:00
Sébastien Theys c0d8ed8196 [IMP] mail, hr_holidays: adapt im_status test to use real code/data
In preparation of refactoring the component to include guest.

Part of task-2883466

Part-of: odoo/odoo#93731
2022-06-17 14:14:32 +02:00
Louis Wicket (wil) d91f7852db [IMP] mail, *: user settings improvements
* = im_livechat, test_discuss_full

Various improvements to user settings, including:

+ Introduce new js models `res.users.settings` and `res.users.settings.volumes`
to mirror the python models.
+ Avoid reformatting server data and simplify the way notifications are handled.
+ Clean dead code (unused convertData).
+ Reword and add documentation.

closes odoo/odoo#93390

Related: odoo/enterprise#28291
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-17 14:14:14 +02:00
Sébastien Theys 0b78c1d5c1 [FIX] mail: properly await createThreadViewComponent
Inner `afterNextRender` could potentially resolve/reject after the test has
already ended due to missing await (arrow function with bracket is sync).

This will prevent tests from overlapping each other.

closes odoo/odoo#93505

X-original-commit: c5d0cc3f37693346fce5e72b618d5e3454d118c4
Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-13 22:51:52 +02:00
Alexandre Kühn 60f5c1ab3a [IMP] mail: remove shift left/right actions on chat window header
Task-2882557

closes odoo/odoo#93484

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-13 22:51:42 +02:00
Sébastien Theys d9c25be92f [IMP] mail: introduce Channel and ChannelMember model
task-2832456

closes odoo/odoo#91918

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-13 17:58:22 +02:00
Sébastien Theys 188afc6954 [IMP] mail: really open and close discuss in chat window manager test
Part of task-2871070

closes odoo/odoo#93273

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-06-10 14:58:12 +02:00
Sébastien Theys bcf7d6ac7c [IMP] mail: clean follower tests to use proper thread
Part of task-2871070

Part-of: odoo/odoo#93273
2022-06-10 14:58:12 +02:00
Alexandre Kühn 38619bc7a3 [FIX] mail:tests: remove duplicate test
Follow-up of https://github.com/odoo/odoo/pull/76415

This commit mistakenly duplicated 2 tests, with exact same name
and exact same content that is being asserted.

This commit removes one of the duplicate.

closes odoo/odoo#93137

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-08 19:00:15 +02:00
Sébastien Theys d4ad6b9ec1 [IMP] mail: adapt message tests to use real parent (discuss/chatter)
closes odoo/odoo#92327

Related: odoo/enterprise#27976
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-02 14:43:52 +02:00
Hiral Bhavsar a35c71690a [IMP] mail: chatter file drag and drop
PURPOSE

The attachment icon in the chatter is too discrete, a lot of users easily miss
it.

SPECIFICATIONS

- Allow for file upload through drag and drop and the whole chatter.
  It doesn't matter whether the file tray is unfolded.
  Hence, removed DropZone on attachmentBox as now have DropZone on
  the whole chatter.
- On the file tray, rename "Attachments" to "Files" and
  "Add attachments" to "Attach files".
- When there are files attached to the record, display "X files".
- when there is no file yet, display 'Attach files'. Although clicking on it
  opens the file explorer, but doesn't unfold the tray yet. Once the file is
  submitted, the file tray unfolds to show confirmed upload to the user.

Task-2413814

closes odoo/odoo#91335

Related: odoo/enterprise#27763
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-06-01 14:16:01 +02:00
Rahul Prajapati 222ae02cea [IMP] mail: add hover download button on image attachments
PURPOSE

Improve how image attachments are downloaded from the chatter by adding the
`download` button when hovering image files

SPECIFICATIONS

add a `Download` button (icon) on the bottom right corner of image attachments
on hover

Task-2802810

closes odoo/odoo#92013

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-06-01 11:02:26 +02:00
Didier (did) ef65fb396f [IMP] mail, im_livechat: remove dead code
closes odoo/odoo#92502

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-31 14:59:32 +02:00
tsm-odoo 3573a7fef4 [IMP] mail, *: use wowlEnv instead of the legacy one
*: bus, calendar, hr, hr_holidays, im_livechat, mail, mail_bot, note, project,
sms, snailmail, test_mail, web, website_livechat, website_slides.

task-2582313

closes odoo/odoo#83774

Related: odoo/enterprise#26493
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-30 19:40:53 +02:00
tsm-odoo a4dc7a3d8e [IMP] mail: wrap top level components into containers
Top level components should always be wrapped in containers since they have to receive
a record comming from messaging. To do that, we need to wait for messaging to be initialized.
In the PR introducing the new environment in the discuss app, some of those components will
be passed to the main_component registry, messaging won't be ready yet. In order to ease the
transition, the last components missing a wrapper have been wrapped.

task-2582313

closes odoo/odoo#92402

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-30 12:11:40 +02:00
Pierre Paridans 24f89c6dff [FIX] mail: scroll to bottom assertion in Chrome 94+
Since (at least) Chrome 94+, some element's sizing computation returns a
slightly different value (in the order of a fraction of a pixel). Sadly,
due to rounding, this difference has an impact on exact sizing
assertion.

As the difference is *really* small, introducing a margin of error (i.e.
<= 1px) looks reasonnable ; as implemented in this commit. More
specifically as Element.scrollHeight can have either an int or a decimal
value (cf. fractional-scaling), this commit allows to property handle
both usecases.

Reference:
https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollHeight#determine_if_an_element_has_been_totally_scrolled

closes odoo/odoo#92328

X-original-commit: 93348ae0d0b076fe2dfa094a2d7b3ef74442d390
Related: odoo/enterprise#27790
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
Signed-off-by: Pierre Paridans (app) <app@odoo.com>
2022-05-26 10:48:41 +02:00
Sébastien Theys f2877f711a [IMP] mail: introduce and clean follower views
Part of task-2810734

closes odoo/odoo#92193

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-05-24 19:11:06 +02:00
Sébastien Theys 677eee90a9 [FIX] mail: fix potential issues with notification request
This patch was previously defined globally, but it has been removed at some
point. This absence prevents from running some tests that relied on it when the
current browser value does not match what the test is expecting.

Part of task-2810734

Part-of: odoo/odoo#92193
2022-05-24 19:11:06 +02:00
tsm-odoo 038e83e7aa [IMP] mail, *: replace target by document
*: hr, hr_holidays, im_livechat, test_mail.

The target returned by the mail's test utils start method is useless since it's
almost the same thing than querying document. Let's remove it and replace it by
document. This will reduce the diff in the PR introducing the new environment in
the discuss app.

task-2582313

closes odoo/odoo#92077

Related: odoo/enterprise#27670
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-24 11:43:57 +02:00
Didier (did) 0b1846bb46 [IMP] mail: display channel invite group restriction
Before this PR, nothing warned the user that the invitation link was restricted to
a user group.

task-2818094

closes odoo/odoo#88562

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-23 17:31:45 +02:00
tsm-odoo 2c16b5939d [FIX] mail: fix incorrect seen_message_id in tests
One of the discuss_tests assumed that pyEnv.create returns a record while it returns an id.
Therefore, this test was setting a relational field to undefined instead of the id of
the related record.

closes odoo/odoo#91885

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-20 13:15:53 +02:00
Didier (did) 97dcefc91a [IMP] mail: remove isDisabled props for FollowerListMenu component
closes odoo/odoo#91616

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-20 13:15:21 +02:00
tsm-odoo 3c10fcadee [IMP] mail, web: allow ui size patching during tests
Until now, when we add to patch the ui size, we would have patched one of the following:
	- config.device.{isMobile,size_class}
	- (wowl) env.isSmall / env.services.ui.{isSmall/size}
	- (legacy) env.device.isMobile
	- (legacy/wowl) browser.innerWidth

The issue is that patching one does not affect the others resulting in an incoherent state.
In order to ease ui size patching, the `patchUiSize` method has been introduced. This method
take either a size or a width as parameter (eg. SIZES.SM, 1920) and affect all the properties above.

task-2582313

closes odoo/odoo#91540

Related: odoo/enterprise#27428
Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-19 16:40:12 +02:00
tsm-odoo 52d6089e1a [IMP] mail: replace env.browser by wowl browser
This PR prepares the ground for the one introducing the new environment in the discuss app.
Indeed, switching from `env.browser` to the wowl `browser` makes a lot of noise in the main
PR. In order to reduce this noise, this change is done now.

task-2582313

closes odoo/odoo#91622

Signed-off-by: Sébastien Theys (seb) <seb@odoo.com>
2022-05-18 13:08:22 +02:00
tsm-odoo 2810d789ee [IMP] mail: move discuss widget logic into model part2
This PR prepares the ground for the one introducing the new environment in the discuss
app. Indeed, the discuss widget will be removed since it was used as an action. This widget
basically handle two things: rainbowman on empty inbox/push state. This second part focuses
on the push state aspect.

task-2582313

closes odoo/odoo#91450

Signed-off-by: Alexandre Kühn (aku) <aku@odoo.com>
2022-05-16 18:35:11 +02:00