mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00
64 lines
2.0 KiB
Swift
64 lines
2.0 KiB
Swift
import Foundation
|
|
import TelegramCore
|
|
import SyncCore
|
|
import Postbox
|
|
import TelegramPresentationData
|
|
import TelegramUIPreferences
|
|
import PhoneNumberFormat
|
|
|
|
public extension Peer {
|
|
var compactDisplayTitle: String {
|
|
switch self {
|
|
case let user as TelegramUser:
|
|
if let firstName = user.firstName, !firstName.isEmpty {
|
|
return firstName
|
|
} else if let lastName = user.lastName, !lastName.isEmpty {
|
|
return lastName
|
|
} else if let phone = user.phone {
|
|
return formatPhoneNumber("+\(phone)")
|
|
} else {
|
|
return ""
|
|
}
|
|
case let group as TelegramGroup:
|
|
return group.title
|
|
case let channel as TelegramChannel:
|
|
return channel.title
|
|
default:
|
|
return ""
|
|
}
|
|
}
|
|
|
|
func displayTitle(strings: PresentationStrings, displayOrder: PresentationPersonNameOrder) -> String {
|
|
switch self {
|
|
case let user as TelegramUser:
|
|
if user.id.isReplies {
|
|
return strings.DialogList_Replies
|
|
}
|
|
if let firstName = user.firstName, !firstName.isEmpty {
|
|
if let lastName = user.lastName, !lastName.isEmpty {
|
|
switch displayOrder {
|
|
case .firstLast:
|
|
return "\(firstName) \(lastName)"
|
|
case .lastFirst:
|
|
return "\(lastName) \(firstName)"
|
|
}
|
|
} else {
|
|
return firstName
|
|
}
|
|
} else if let lastName = user.lastName, !lastName.isEmpty {
|
|
return lastName
|
|
} else if let phone = user.phone {
|
|
return formatPhoneNumber("+\(phone)")
|
|
} else {
|
|
return strings.User_DeletedAccount
|
|
}
|
|
case let group as TelegramGroup:
|
|
return group.title
|
|
case let channel as TelegramChannel:
|
|
return channel.title
|
|
default:
|
|
return ""
|
|
}
|
|
}
|
|
}
|