Add the pauseSyncing property to Folder

This commit is contained in:
Maurice Parker
2022-02-01 15:56:49 -08:00
parent 3febf32b51
commit bd1b54507f
2 changed files with 13 additions and 1 deletions

View File

@@ -508,6 +508,9 @@ public final class Account: DisplayNameProvider, UnreadCountProvider, Container,
} else {
if let title = item.titleFromAttributes, let folder = ensureFolder(with: title) {
folder.externalID = item.attributes?["nnw_externalID"] as? String
if let nnwPauseSyncing = item.attributes?["nnw_pauseSyncing"] as? String, nnwPauseSyncing == "true" {
folder.pauseSyncing = true
}
item.children?.forEach { itemChild in
if let feedSpecifier = itemChild.feedSpecifier {
folder.addWebFeed(newWebFeed(with: feedSpecifier))

View File

@@ -44,6 +44,7 @@ public final class Folder: Feed, Renamable, Container, Hashable {
static let untitledName = NSLocalizedString("Untitled ƒ", comment: "Folder name")
public let folderID: Int // not saved: per-run only
public var pauseSyncing = false
public var externalID: String? = nil
static var incrementingID = 0
@@ -183,8 +184,16 @@ extension Folder: OPMLRepresentable {
}
}()
let attrPauseSyncing: String = {
if allowCustomAttributes && pauseSyncing {
return " nnw_pauseSyncing=\"true\""
} else {
return ""
}
}()
let escapedTitle = nameForDisplay.escapingSpecialXMLCharacters
var s = "<outline text=\"\(escapedTitle)\" title=\"\(escapedTitle)\"\(attrExternalID)>\n"
var s = "<outline text=\"\(escapedTitle)\" title=\"\(escapedTitle)\"\(attrExternalID)\(attrPauseSyncing)>\n"
s = s.prepending(tabCount: indentLevel)
var hasAtLeastOneChild = false