mirror of
https://github.com/cranci1/Sora.git
synced 2026-04-18 07:02:45 +00:00
maed TMDB default + image size selector
This commit is contained in:
parent
c3e000da9d
commit
c95c249843
3 changed files with 39 additions and 15 deletions
|
|
@ -219,13 +219,13 @@ struct EpisodeCell: View {
|
|||
.onAppear {
|
||||
updateProgress()
|
||||
updateDownloadStatus()
|
||||
if UserDefaults.standard.string(forKey: "metadataProviders") ?? "Anilist" == "AniList" {
|
||||
if UserDefaults.standard.string(forKey: "metadataProviders") ?? "TMDB" == "TMDB" {
|
||||
DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
|
||||
fetchAnimeEpisodeDetails()
|
||||
fetchTMDBEpisodeImage()
|
||||
}
|
||||
} else {
|
||||
DispatchQueue.main.asyncAfter(deadline: .now() + 0.1) {
|
||||
fetchTMDBEpisodeImage()
|
||||
fetchAnimeEpisodeDetails()
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -778,14 +778,16 @@ struct EpisodeCell: View {
|
|||
let episodeNum = episodeID + 1
|
||||
let urlString = "https://api.themoviedb.org/3/tv/\(tmdbID)/season/\(season)/episode/\(episodeNum)?api_key=738b4edd0a156cc126dc4a4b8aea4aca"
|
||||
guard let url = URL(string: urlString) else { return }
|
||||
|
||||
|
||||
let tmdbImageWidth = UserDefaults.standard.string(forKey: "tmdbImageWidth") ?? "w780"
|
||||
|
||||
URLSession.custom.dataTask(with: url) { data, _, error in
|
||||
guard let data = data, error == nil else { return }
|
||||
do {
|
||||
if let json = try JSONSerialization.jsonObject(with: data) as? [String: Any] {
|
||||
let name = json["name"] as? String ?? ""
|
||||
let stillPath = json["still_path"] as? String
|
||||
let imageUrl = stillPath != nil ? "https://image.tmdb.org/t/p/w780\(stillPath!)" : ""
|
||||
let imageUrl = stillPath != nil ? "https://image.tmdb.org/t/p/\(tmdbImageWidth)\(stillPath!)" : ""
|
||||
DispatchQueue.main.async {
|
||||
self.episodeTitle = name
|
||||
self.episodeImageUrl = imageUrl
|
||||
|
|
|
|||
|
|
@ -779,7 +779,7 @@ struct MediaInfoView: View {
|
|||
}
|
||||
|
||||
private func fetchMetadataIDIfNeeded() {
|
||||
let provider = UserDefaults.standard.string(forKey: "metadataProviders") ?? "Anilist"
|
||||
let provider = UserDefaults.standard.string(forKey: "metadataProviders") ?? "TMDB"
|
||||
let cleaned = cleanTitle(title)
|
||||
if provider == "TMDB" {
|
||||
tmdbID = nil
|
||||
|
|
|
|||
|
|
@ -153,12 +153,14 @@ struct SettingsViewGeneral: View {
|
|||
@AppStorage("refreshModulesOnLaunch") private var refreshModulesOnLaunch: Bool = true
|
||||
@AppStorage("fetchEpisodeMetadata") private var fetchEpisodeMetadata: Bool = true
|
||||
@AppStorage("analyticsEnabled") private var analyticsEnabled: Bool = false
|
||||
@AppStorage("metadataProviders") private var metadataProviders: String = "AniList"
|
||||
@AppStorage("metadataProviders") private var metadataProviders: String = "TMDB"
|
||||
@AppStorage("tmdbImageWidth") private var TMDBimageWidht: String = "w780"
|
||||
@AppStorage("mediaColumnsPortrait") private var mediaColumnsPortrait: Int = 2
|
||||
@AppStorage("mediaColumnsLandscape") private var mediaColumnsLandscape: Int = 4
|
||||
@AppStorage("currentAppIcon") private var currentAppIcon = "Default"
|
||||
|
||||
private let metadataProvidersList = ["AniList", "TMDB"]
|
||||
private let TMDBimageWidhtList = ["w300", "w500", "w780", "w1280", "original"]
|
||||
private let sortOrderOptions = ["Ascending", "Descending"]
|
||||
@EnvironmentObject var settings: Settings
|
||||
@State private var showAppIconPicker = false
|
||||
|
|
@ -222,14 +224,34 @@ struct SettingsViewGeneral: View {
|
|||
isOn: $fetchEpisodeMetadata
|
||||
)
|
||||
|
||||
SettingsPickerRow(
|
||||
icon: "server.rack",
|
||||
title: "Metadata Provider",
|
||||
options: metadataProvidersList,
|
||||
optionToString: { $0 },
|
||||
selection: $metadataProviders,
|
||||
showDivider: false
|
||||
)
|
||||
if metadataProviders == "TMDB" {
|
||||
SettingsPickerRow(
|
||||
icon: "server.rack",
|
||||
title: "Metadata Provider",
|
||||
options: metadataProvidersList,
|
||||
optionToString: { $0 },
|
||||
selection: $metadataProviders,
|
||||
showDivider: true
|
||||
)
|
||||
|
||||
SettingsPickerRow(
|
||||
icon: "square.stack.3d.down.right",
|
||||
title: "Thumbnails Width",
|
||||
options: TMDBimageWidhtList,
|
||||
optionToString: { $0 },
|
||||
selection: $TMDBimageWidht,
|
||||
showDivider: false
|
||||
)
|
||||
} else {
|
||||
SettingsPickerRow(
|
||||
icon: "server.rack",
|
||||
title: "Metadata Provider",
|
||||
options: metadataProvidersList,
|
||||
optionToString: { $0 },
|
||||
selection: $metadataProviders,
|
||||
showDivider: false
|
||||
)
|
||||
}
|
||||
}
|
||||
|
||||
SettingsSection(
|
||||
|
|
|
|||
Loading…
Reference in a new issue