mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00
macos fxies
This commit is contained in:
parent
73d4647439
commit
37fc5397dc
@ -463,12 +463,12 @@ NSString *suffix = @"";
|
||||
#if TARGET_OS_OSX
|
||||
NSString *value = [[[NSBundle mainBundle] infoDictionary] objectForKey:@"SOURCE"];
|
||||
if (value != nil) {
|
||||
suffix = [NSString stringWithFormat:@"%@ ", value];
|
||||
suffix = [NSString stringWithFormat:@"%@", value];
|
||||
}
|
||||
#endif
|
||||
|
||||
//SOURCE
|
||||
NSString *versionString = [[NSString alloc] initWithFormat:@"%@ (%@)%@", [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"], [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"], suffix];
|
||||
NSString *versionString = [[NSString alloc] initWithFormat:@"%@ (%@) %@", [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleShortVersionString"], [[[NSBundle mainBundle] infoDictionary] objectForKey:@"CFBundleVersion"], suffix];
|
||||
_appVersion = versionString;
|
||||
|
||||
_systemLangCode = [[NSLocale preferredLanguages] objectAtIndex:0];
|
||||
|
@ -54,10 +54,11 @@ private func updatePremiumPromoConfiguration(transaction: Transaction, _ f: (Pre
|
||||
private extension PremiumPromoConfiguration {
|
||||
init(apiPremiumPromo: Api.help.PremiumPromo) {
|
||||
switch apiPremiumPromo {
|
||||
case let .premiumPromo(statusText, statusEntities, videoSections, videoFiles, _, _):
|
||||
case let .premiumPromo(statusText, statusEntities, videoSections, videoFiles, currency, monthlyAmount):
|
||||
self.status = statusText
|
||||
self.statusEntities = messageTextEntitiesFromApiEntities(statusEntities)
|
||||
|
||||
self.currency = currency
|
||||
self.monthlyAmount = monthlyAmount
|
||||
var videos: [String: TelegramMediaFile] = [:]
|
||||
for (key, document) in zip(videoSections, videoFiles) {
|
||||
if let file = telegramMediaFileFromApiDocument(document) {
|
||||
|
@ -232,7 +232,7 @@ private enum PreferencesKeyValues: Int32 {
|
||||
case chatListFiltersFeaturedState = 22
|
||||
case secretChatSettings = 23
|
||||
case reactionSettings = 24
|
||||
case premiumPromo = 25
|
||||
case premiumPromo = 26
|
||||
}
|
||||
|
||||
public func applicationSpecificPreferencesKey(_ value: Int32) -> ValueBoxKey {
|
||||
|
@ -4,6 +4,8 @@ import Postbox
|
||||
public struct PremiumPromoConfiguration: Codable, Equatable {
|
||||
enum CodingKeys: String, CodingKey {
|
||||
case status
|
||||
case currency
|
||||
case monthlyAmount
|
||||
case statusEntities
|
||||
case videos
|
||||
}
|
||||
@ -36,12 +38,17 @@ public struct PremiumPromoConfiguration: Codable, Equatable {
|
||||
public var statusEntities: [MessageTextEntity]
|
||||
public var videos: [String: TelegramMediaFile]
|
||||
|
||||
public var currency: String
|
||||
public var monthlyAmount: Int64
|
||||
|
||||
public static var defaultValue: PremiumPromoConfiguration {
|
||||
return PremiumPromoConfiguration(status: "", statusEntities: [], videos: [:])
|
||||
return PremiumPromoConfiguration(status: "", statusEntities: [], videos: [:], currency: "", monthlyAmount: 0)
|
||||
}
|
||||
|
||||
init(status: String, statusEntities: [MessageTextEntity], videos: [String: TelegramMediaFile]) {
|
||||
init(status: String, statusEntities: [MessageTextEntity], videos: [String: TelegramMediaFile], currency: String, monthlyAmount: Int64) {
|
||||
self.status = status
|
||||
self.currency = currency
|
||||
self.monthlyAmount = monthlyAmount
|
||||
self.statusEntities = statusEntities
|
||||
self.videos = videos
|
||||
}
|
||||
@ -58,6 +65,10 @@ public struct PremiumPromoConfiguration: Codable, Equatable {
|
||||
videos[pair.key] = pair.value
|
||||
}
|
||||
self.videos = videos
|
||||
|
||||
self.currency = try container.decode(String.self, forKey: .currency)
|
||||
self.monthlyAmount = try container.decode(Int64.self, forKey: .monthlyAmount)
|
||||
|
||||
}
|
||||
|
||||
public func encode(to encoder: Encoder) throws {
|
||||
@ -65,6 +76,8 @@ public struct PremiumPromoConfiguration: Codable, Equatable {
|
||||
|
||||
try container.encode(self.status, forKey: .status)
|
||||
try container.encode(self.statusEntities, forKey: .statusEntities)
|
||||
try container.encode(self.currency, forKey: .currency)
|
||||
try container.encode(self.monthlyAmount, forKey: .monthlyAmount)
|
||||
|
||||
var pairs: [DictionaryPair] = []
|
||||
for (key, file) in self.videos {
|
||||
|
@ -499,6 +499,15 @@ public final class TelegramMediaFile: Media, Equatable, Codable {
|
||||
return false
|
||||
}
|
||||
|
||||
public var noPremium: Bool {
|
||||
for attribute in self.attributes {
|
||||
if case .NoPremium = attribute {
|
||||
return true
|
||||
}
|
||||
}
|
||||
return false
|
||||
}
|
||||
|
||||
public var premiumEffect: TelegramMediaFile.VideoThumbnail? {
|
||||
if let effect = self.videoThumbnails.first(where: { thumbnail in
|
||||
if let resource = thumbnail.resource as? CloudDocumentSizeMediaResource, resource.sizeSpec == "f" {
|
||||
|
Loading…
x
Reference in New Issue
Block a user