             return (entry.list?.isDefault?.boolValue ?? false) && !entry.isDeletedLocally
         })
     }
+
+    func updateReadingListEntries() {
+        guard let articleEntries = readingListEntries else {
+            savedDate = nil
+            return
+        }
+        if articleEntries.filter({ !$0.isDeletedLocally }).count == 0 {
+            savedDate = nil
+        }
+    }
     
     func addToDefaultReadingList() {
         guard let moc = self.managedObjectContext else {

                                    continue
                                }

                                guard let entryID = localEntry.readingListEntryID?.int64Value else {
                                    group.enter()
                                    self.apiController.addEntryToList(withListID: readingListID, project: articleSite.absoluteString, title: articleTitle, completion: { (entryID, error) in

                                remoteEntriesToCreateLocally[entry.id] = (entry, readingList)
                            }
                            for localEntry in localEntries {
                                guard !localEntry.isDeletedLocally else {
                                    // the entry has been deleted locally
                                    guard let entryID = localEntry.readingListEntryID?.int64Value else {
                                        localEntriesToDelete.append(localEntry)  // the entry has been deleted locally but doesn't have an entry ID, so just delete it
                                        continue
                                    }

                                    remoteEntriesToCreateLocally.removeValue(forKey: entryID)

                                    group.enter()
                                    self.apiController.removeEntry(withEntryID: entryID, fromListWithListID: readingListID, completion: { (error) in
                                        defer {
