mirror of
https://github.com/simplex-chat/simplex-chat.git
synced 2026-06-04 16:52:01 +00:00
core: member support chat stats (#5803)
* core: member support chat stats * schema * update counts * mark read wip * dec counts on read * rename * plans * test, fixes * plans * refactor * rename --------- Co-authored-by: Evgeny Poberezkin <evgeny@poberezkin.com>
This commit is contained in:
@@ -186,7 +186,6 @@ responseToView hu@(currentRH, user_) ChatConfig {logLevel, showReactions, showRe
|
||||
CRContactRequestRejected u UserContactRequest {localDisplayName = c} -> ttyUser u [ttyContact c <> ": contact request rejected"]
|
||||
CRGroupCreated u g -> ttyUser u $ viewGroupCreated g testView
|
||||
CRGroupMembers u g -> ttyUser u $ viewGroupMembers g
|
||||
CRMemberSupportChats u _g ms -> ttyUser u $ viewSupportMembers ms
|
||||
-- CRGroupConversationsArchived u _g _conversations -> ttyUser u []
|
||||
-- CRGroupConversationsDeleted u _g _conversations -> ttyUser u []
|
||||
CRGroupsList u gs -> ttyUser u $ viewGroupsList gs
|
||||
@@ -454,6 +453,7 @@ responseToView hu@(currentRH, user_) ChatConfig {logLevel, showReactions, showRe
|
||||
CRTerminalEvent te -> case te of
|
||||
TERejectingGroupJoinRequestMember _ g m reason -> [ttyFullMember m <> ": rejecting request to join group " <> ttyGroup' g <> ", reason: " <> sShow reason]
|
||||
TEGroupLinkRejected u g reason -> ttyUser u [ttyGroup' g <> ": join rejected, reason: " <> sShow reason]
|
||||
TEMemberSupportChats u g ms -> ttyUser u $ viewMemberSupportChats g ms
|
||||
where
|
||||
ttyUser :: User -> [StyledString] -> [StyledString]
|
||||
ttyUser user@User {showNtfs, activeUser, viewPwdHash} ss
|
||||
@@ -1197,10 +1197,17 @@ viewGroupMembers (Group GroupInfo {membership} members) = map groupMember . filt
|
||||
| not (showMessages $ memberSettings m) = ["blocked"]
|
||||
| otherwise = []
|
||||
|
||||
viewSupportMembers :: [GroupMember] -> [StyledString]
|
||||
viewSupportMembers = map groupMember
|
||||
viewMemberSupportChats :: GroupInfo -> [GroupMember] -> [StyledString]
|
||||
viewMemberSupportChats GroupInfo {membership} ms = support <> map groupMember ms
|
||||
where
|
||||
groupMember m = memIncognito m <> ttyFullMember m <> ", id: " <> sShow (groupMemberId' m)
|
||||
support = case supportChat membership of
|
||||
Just sc -> ["support: " <> chatStats sc]
|
||||
Nothing -> []
|
||||
groupMember m@GroupMember {supportChat} = case supportChat of
|
||||
Just sc -> memIncognito m <> ttyFullMember m <> (" (id " <> sShow (groupMemberId' m) <> "): ") <> chatStats sc
|
||||
Nothing -> ""
|
||||
chatStats GroupSupportChat {unread, memberAttention, mentions} =
|
||||
"unread: " <> sShow unread <> ", require attention: " <> sShow memberAttention <> ", mentions: " <> sShow mentions
|
||||
|
||||
viewContactConnected :: Contact -> Maybe Profile -> Bool -> [StyledString]
|
||||
viewContactConnected ct userIncognitoProfile testView =
|
||||
|
||||
Reference in New Issue
Block a user