mirror of
https://github.com/discourse/discourse.git
synced 2024-12-14 03:15:59 +08:00
09277bc543
This commit adds a new "My threads" link in sidebar and drawer. This link will open the "/chat/threads" page which contains all threads where the current user is a member. It's ordered by activity (unread and then last message created). Moreover, the threads list of a channel page is now showing every threads of a channel, and not just the ones where you are a member.
71 lines
2.0 KiB
Ruby
71 lines
2.0 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
module PageObjects
|
|
module Pages
|
|
class Sidebar < PageObjects::Pages::Base
|
|
PUBLIC_CHANNELS_SECTION_SELECTOR = ".sidebar-section[data-section-name='chat-channels']"
|
|
DM_CHANNELS_SECTION_SELECTOR = ".sidebar-section[data-section-name='chat-dms']"
|
|
|
|
def has_no_public_channels_section?
|
|
has_no_css?(PUBLIC_CHANNELS_SECTION_SELECTOR)
|
|
end
|
|
|
|
def channels_section
|
|
find(PUBLIC_CHANNELS_SECTION_SELECTOR)
|
|
end
|
|
|
|
def dms_section
|
|
find(DM_CHANNELS_SECTION_SELECTOR)
|
|
end
|
|
|
|
def open_browse
|
|
channels_section.find(".sidebar-section-header-button", visible: false).click
|
|
end
|
|
|
|
def open_channel(channel)
|
|
find(".sidebar-section-link.channel-#{channel.id}").click
|
|
end
|
|
|
|
def remove_channel(channel)
|
|
selector = ".sidebar-section-link.channel-#{channel.id}"
|
|
find(selector).hover
|
|
find(selector + " .sidebar-section-hover-button").click
|
|
end
|
|
|
|
def find_channel(channel)
|
|
find(".sidebar-section-link.channel-#{channel.id}")
|
|
self
|
|
end
|
|
|
|
def has_user_threads_section?
|
|
has_css?(
|
|
".sidebar-section-link[data-link-name='user-threads'][href='/chat/threads']",
|
|
text: I18n.t("js.chat.my_threads.title"),
|
|
)
|
|
end
|
|
|
|
def has_unread_user_threads?
|
|
has_css?(
|
|
".sidebar-section-link[data-link-name='user-threads'] .sidebar-section-link-suffix.icon.unread",
|
|
)
|
|
end
|
|
|
|
def has_no_unread_user_threads?
|
|
has_no_css?(
|
|
".sidebar-section-link[data-link-name='user-threads'] .sidebar-section-link-suffix.icon.unread",
|
|
)
|
|
end
|
|
|
|
def has_unread_channel?(channel)
|
|
has_css?(".sidebar-section-link.channel-#{channel.id} .sidebar-section-link-suffix.unread")
|
|
end
|
|
|
|
def has_no_unread_channel?(channel)
|
|
has_no_css?(
|
|
".sidebar-section-link.channel-#{channel.id} .sidebar-section-link-suffix.unread",
|
|
)
|
|
end
|
|
end
|
|
end
|
|
end
|