mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00
39 lines
1.9 KiB
Swift
39 lines
1.9 KiB
Swift
import Foundation
|
|
import TelegramPresentationData
|
|
import TelegramUIPreferences
|
|
import TelegramCore
|
|
|
|
public func stringForFullAuthorName(message: EngineMessage, strings: PresentationStrings, nameDisplayOrder: PresentationPersonNameOrder, accountPeerId: EnginePeer.Id) -> [String] {
|
|
var authorString: [String] = []
|
|
if let author = message.author, [Namespaces.Peer.CloudGroup, Namespaces.Peer.CloudChannel].contains(message.id.peerId.namespace) {
|
|
var authorName = ""
|
|
if author.id == accountPeerId {
|
|
authorName = strings.DialogList_You
|
|
} else if author.isDeleted {
|
|
authorName = strings.User_DeletedAccount
|
|
} else {
|
|
authorName = author.compactDisplayTitle
|
|
}
|
|
if let peer = message.peers[message.id.peerId].flatMap(EnginePeer.init), author.id != peer.id {
|
|
authorString = [authorName, peer.displayTitle(strings: strings, displayOrder: nameDisplayOrder)]
|
|
} else {
|
|
authorString = [authorName]
|
|
}
|
|
} else if let peer = message.peers[message.id.peerId].flatMap(EnginePeer.init) {
|
|
if message.id.peerId.namespace == Namespaces.Peer.CloudChannel {
|
|
authorString = [peer.displayTitle(strings: strings, displayOrder: nameDisplayOrder)]
|
|
} else {
|
|
if message.id.peerId == accountPeerId {
|
|
authorString = [strings.DialogList_SavedMessages]
|
|
} else if message.id.peerId.isAnonymousSavedMessages {
|
|
authorString = [strings.ChatList_AuthorHidden]
|
|
} else if message.flags.contains(.Incoming) {
|
|
authorString = [peer.displayTitle(strings: strings, displayOrder: nameDisplayOrder)]
|
|
} else {
|
|
authorString = [strings.DialogList_You, peer.displayTitle(strings: strings, displayOrder: nameDisplayOrder)]
|
|
}
|
|
}
|
|
}
|
|
return authorString
|
|
}
|