diff options
Diffstat (limited to 'Sora/Data/Booru/BooruManager.swift')
| -rw-r--r-- | Sora/Data/Booru/BooruManager.swift | 15 |
1 files changed, 10 insertions, 5 deletions
diff --git a/Sora/Data/Booru/BooruManager.swift b/Sora/Data/Booru/BooruManager.swift index 2ae2277..1abc7b6 100644 --- a/Sora/Data/Booru/BooruManager.swift +++ b/Sora/Data/Booru/BooruManager.swift @@ -184,7 +184,7 @@ class BooruManager: ObservableObject { currentTask = Task { isNavigatingHistory = false } } - func fetchAllTags(limit: Int = 0) { + func fetchAllTags(limit: Int = 10_000) { guard let url = urlForTags(limit: limit) else { return } Task { @@ -197,7 +197,9 @@ class BooruManager: ObservableObject { saveTagsToCache() } catch { - if (error as? URLError)?.code != .cancelled { debugPrint("BooruManager.fetchAllTags: \(error)") } + if (error as? URLError)?.code != .cancelled { + debugPrint("BooruManager.fetchAllTags: \(error)") + } } } } @@ -239,13 +241,16 @@ class BooruManager: ObservableObject { } } - private func urlForTags(limit: Int) -> URL? { + private func urlForTags(limit: Int, order: String = "count") -> URL? { switch flavor { case .moebooru: - return URL(string: "https://\(domain)/tag.xml?limit=\(limit)") + return URL(string: "https://\(domain)/tag.xml?limit=\(limit)&order=\(order)") case .gelbooru: - return URL(string: "https://\(domain)/index.php?page=dapi&s=tag&q=index&limit=\(limit)") + return URL( + string: + "https://\(domain)/index.php?page=dapi&s=tag&q=index&limit=\(limit)&orderby=\(order)" + ) case .danbooru: return nil |