diff --git a/Modules/DataModel/Sources/PocketCastsDataModel/Public/Model/PodcastSettings+OldSettings.swift b/Modules/DataModel/Sources/PocketCastsDataModel/Public/Model/PodcastSettings+OldSettings.swift index 0beb78fd4a..d72e871dd1 100644 --- a/Modules/DataModel/Sources/PocketCastsDataModel/Public/Model/PodcastSettings+OldSettings.swift +++ b/Modules/DataModel/Sources/PocketCastsDataModel/Public/Model/PodcastSettings+OldSettings.swift @@ -13,16 +13,29 @@ extension PodcastSettings { } } set { - switch newValue { - case .addFirst: - addToUpNext = true - addToUpNextPosition = .top - case .addLast: - addToUpNext = true - addToUpNextPosition = .bottom - case .off: - addToUpNext = false + addToUpNext = newValue.enabled + if let position = newValue.position { + addToUpNextPosition = position } } } } + +public extension AutoAddToUpNextSetting { + var enabled: Bool { + get { + return self != .off + } + } + + var position: UpNextPosition? { + switch self { + case .addFirst: + return .top + case .addLast: + return .bottom + case .off: + return nil + } + } +} diff --git a/podcasts/DataManager+Import.swift b/podcasts/DataManager+Import.swift index 1ffe5b6c87..3f12528781 100644 --- a/podcasts/DataManager+Import.swift +++ b/podcasts/DataManager+Import.swift @@ -33,7 +33,10 @@ extension DataManager { } if let setting = AutoAddToUpNextSetting(rawValue: podcast.autoAddToUpNext) { - podcast.settings.autoUpNextSetting = setting + podcast.settings.addToUpNext = setting.enabled + if let position = setting.position { + podcast.settings.addToUpNextPosition = position + } } save(podcast: podcast, cache: idx == podcasts.endIndex)