diff --git a/apple/OmnivoreKit/Sources/App/Views/WebReader/WebReaderLoadingContainer.swift b/apple/OmnivoreKit/Sources/App/Views/WebReader/WebReaderLoadingContainer.swift index 046d0673a..756a9b57c 100644 --- a/apple/OmnivoreKit/Sources/App/Views/WebReader/WebReaderLoadingContainer.swift +++ b/apple/OmnivoreKit/Sources/App/Views/WebReader/WebReaderLoadingContainer.swift @@ -1,3 +1,4 @@ +import CoreData import Models import Services import SwiftUI @@ -24,6 +25,16 @@ import Utils guard let username = username else { return } + let fetchRequest: NSFetchRequest = LinkedItem.fetchRequest() + fetchRequest.predicate = NSPredicate(format: "id == %@", requestID) + if let existingItem = try? dataService.viewContext.fetch(fetchRequest).first, + existingItem.serverSyncStatus == ServerSyncStatus.isNSync.rawValue + { + print("USING EXISTING ITEM", existingItem.serverSyncStatus) + item = existingItem + return + } + // If the page was locally created, make sure they are synced before we pull content await dataService.syncUnsyncedArticleContent(itemID: requestID) await fetchLinkedItem(dataService: dataService, requestID: requestID, username: username)