little thing
Some checks are pending
Build and Release IPA / Build IPA (push) Waiting to run

This commit is contained in:
cranci1 2025-01-25 15:50:08 +01:00
parent 0aa11c7529
commit c0eafa1c74

View file

@ -247,28 +247,39 @@ struct MediaInfoView: View {
do {
let jsContent = try moduleManager.getModuleContent(module)
jsController.loadScript(jsContent)
if module.metadata.asyncJS == true {
jsController.fetchStreamUrlJS(episodeUrl: href) { streamUrl in
if let url = streamUrl {
playStream(url: url, fullURL: href)
guard let url = streamUrl, url != "null" else {
handleStreamFailure()
return
}
playStream(url: url, fullURL: href)
}
} else {
jsController.fetchStreamUrl(episodeUrl: href) { streamUrl in
if let url = streamUrl {
playStream(url: url, fullURL: href)
guard let url = streamUrl, url != "null" else {
handleStreamFailure()
return
}
playStream(url: url, fullURL: href)
}
}
} catch {
Logger.shared.log("Error loading module: \(error)", type: "Error")
DropManager.shared.showDrop(title: "Stream not Found", subtitle: "", duration: 1.0, icon: UIImage(systemName: "xmark"))
self.isLoading = false
handleStreamFailure(error: error)
}
}
}
}
func handleStreamFailure(error: Error? = nil) {
if let error = error {
Logger.shared.log("Error loading module: \(error)", type: "Error")
}
DropManager.shared.showDrop(title: "Stream not Found", subtitle: "", duration: 1.0, icon: UIImage(systemName: "xmark"))
self.isLoading = false
}
func playStream(url: String, fullURL: String) {
DispatchQueue.main.async {
let videoPlayerViewController = VideoPlayerViewController(module: module)