chore: set image url fallback
This commit is contained in:
parent
277d574254
commit
597fc3fa1a
|
@ -58,10 +58,18 @@ extension MastodonUser {
|
||||||
return URL(string: header)
|
return URL(string: header)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public func headerImageURLWithFallback(domain: String) -> URL {
|
||||||
|
return URL(string: header) ?? URL(string: "https://\(domain)/headers/original/missing.png")!
|
||||||
|
}
|
||||||
|
|
||||||
public func avatarImageURL() -> URL? {
|
public func avatarImageURL() -> URL? {
|
||||||
return URL(string: avatar)
|
return URL(string: avatar)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public func avatarImageURLWithFallback(domain: String) -> URL {
|
||||||
|
return URL(string: avatar) ?? URL(string: "https://\(domain)/avatars/original/missing.png")!
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
extension MastodonUser {
|
extension MastodonUser {
|
||||||
|
|
|
@ -59,7 +59,7 @@ final class MediaPreviewViewModel: NSObject {
|
||||||
let managedObjectContext = self.context.managedObjectContext
|
let managedObjectContext = self.context.managedObjectContext
|
||||||
managedObjectContext.performAndWait {
|
managedObjectContext.performAndWait {
|
||||||
let account = managedObjectContext.object(with: meta.accountObjectID) as! MastodonUser
|
let account = managedObjectContext.object(with: meta.accountObjectID) as! MastodonUser
|
||||||
let avatarURL = account.headerImageURL() ?? URL(string: "https://example.com")! // assert URL exist
|
let avatarURL = account.headerImageURLWithFallback(domain: account.domain)
|
||||||
let meta = MediaPreviewImageViewModel.RemoteImagePreviewMeta(url: avatarURL, thumbnail: meta.preloadThumbnailImage)
|
let meta = MediaPreviewImageViewModel.RemoteImagePreviewMeta(url: avatarURL, thumbnail: meta.preloadThumbnailImage)
|
||||||
let mediaPreviewImageModel = MediaPreviewImageViewModel(meta: meta)
|
let mediaPreviewImageModel = MediaPreviewImageViewModel(meta: meta)
|
||||||
let mediaPreviewImageViewController = MediaPreviewImageViewController()
|
let mediaPreviewImageViewController = MediaPreviewImageViewController()
|
||||||
|
@ -79,7 +79,7 @@ final class MediaPreviewViewModel: NSObject {
|
||||||
let managedObjectContext = self.context.managedObjectContext
|
let managedObjectContext = self.context.managedObjectContext
|
||||||
managedObjectContext.performAndWait {
|
managedObjectContext.performAndWait {
|
||||||
let account = managedObjectContext.object(with: meta.accountObjectID) as! MastodonUser
|
let account = managedObjectContext.object(with: meta.accountObjectID) as! MastodonUser
|
||||||
let avatarURL = account.avatarImageURL() ?? URL(string: "https://example.com")! // assert URL exist
|
let avatarURL = account.avatarImageURLWithFallback(domain: account.domain)
|
||||||
let meta = MediaPreviewImageViewModel.RemoteImagePreviewMeta(url: avatarURL, thumbnail: meta.preloadThumbnailImage)
|
let meta = MediaPreviewImageViewModel.RemoteImagePreviewMeta(url: avatarURL, thumbnail: meta.preloadThumbnailImage)
|
||||||
let mediaPreviewImageModel = MediaPreviewImageViewModel(meta: meta)
|
let mediaPreviewImageModel = MediaPreviewImageViewModel(meta: meta)
|
||||||
let mediaPreviewImageViewController = MediaPreviewImageViewController()
|
let mediaPreviewImageViewController = MediaPreviewImageViewController()
|
||||||
|
|
Loading…
Reference in New Issue