diff --git a/apple/OmnivoreKit/Sources/App/Views/AudioPlayer/MiniPlayer.swift b/apple/OmnivoreKit/Sources/App/Views/AudioPlayer/MiniPlayer.swift index 4c7824701..2a4ceb01a 100644 --- a/apple/OmnivoreKit/Sources/App/Views/AudioPlayer/MiniPlayer.swift +++ b/apple/OmnivoreKit/Sources/App/Views/AudioPlayer/MiniPlayer.swift @@ -223,28 +223,14 @@ public struct MiniPlayer: View { HStack { Spacer() - if let author = itemAudioProperties.author { - Text(author) + if let byline = itemAudioProperties.byline { + Text(byline) .lineLimit(1) .font(.appCallout) .lineSpacing(1.25) .foregroundColor(.appGrayText) .frame(alignment: .trailing) } - if itemAudioProperties.author != nil, itemAudioProperties.siteName != nil { - Text(" • ") - .font(.appCallout) - .lineSpacing(1.25) - .foregroundColor(.appGrayText) - } - if let siteName = itemAudioProperties.siteName { - Text(siteName) - .lineLimit(1) - .font(.appCallout) - .lineSpacing(1.25) - .foregroundColor(.appGrayText) - .frame(alignment: .leading) - } Spacer() } diff --git a/apple/OmnivoreKit/Sources/Models/DataModels/FeedItem.swift b/apple/OmnivoreKit/Sources/Models/DataModels/FeedItem.swift index 150cd493d..6984c7dad 100644 --- a/apple/OmnivoreKit/Sources/Models/DataModels/FeedItem.swift +++ b/apple/OmnivoreKit/Sources/Models/DataModels/FeedItem.swift @@ -16,8 +16,7 @@ public struct LinkedItemAudioProperties { public let itemID: String public let objectID: NSManagedObjectID public let title: String - public let author: String? - public let siteName: String? + public let byline: String? public let imageURL: URL? public let language: String? } @@ -95,13 +94,27 @@ public extension LinkedItem { return String(data: JSON, encoding: .utf8) ?? "[]" } + var formattedByline: String { + var byline = "" + + if let author = author { + byline += author + } + if author != nil, publisherDisplayName != nil { + byline += " • " + } + if let publisherDisplayName = publisherDisplayName { + byline += publisherDisplayName + } + return byline + } + var audioProperties: LinkedItemAudioProperties { LinkedItemAudioProperties( itemID: unwrappedID, objectID: objectID, title: unwrappedTitle, - author: author, - siteName: siteName, + byline: formattedByline, imageURL: imageURL, language: language ) diff --git a/apple/OmnivoreKit/Sources/Services/AudioSession/AudioController.swift b/apple/OmnivoreKit/Sources/Services/AudioSession/AudioController.swift index df8e3ba6f..f56afb9b3 100644 --- a/apple/OmnivoreKit/Sources/Services/AudioSession/AudioController.swift +++ b/apple/OmnivoreKit/Sources/Services/AudioSession/AudioController.swift @@ -800,7 +800,7 @@ public class AudioController: NSObject, ObservableObject, AVAudioPlayerDelegate if let itemAudioProperties = itemAudioProperties { MPNowPlayingInfoCenter.default().nowPlayingInfo = [ MPMediaItemPropertyTitle: NSString(string: itemAudioProperties.title), - MPMediaItemPropertyArtist: NSString(string: itemAudioProperties.author ?? "Omnivore"), + MPMediaItemPropertyArtist: NSString(string: itemAudioProperties.byline ?? "Omnivore"), MPMediaItemPropertyPlaybackDuration: NSNumber(value: duration), MPNowPlayingInfoPropertyElapsedPlaybackTime: NSNumber(value: timeElapsed) ]