From d89a7cfe2d2b3d690cd29d6b5cb187c853349def Mon Sep 17 00:00:00 2001 From: jack Date: Sun, 10 Dec 2023 03:28:40 +0700 Subject: [PATCH] small fix --- .../main/kotlin/com/hexated/Movierulzhd.kt | 32 +++++++++++++++++-- 1 file changed, 30 insertions(+), 2 deletions(-) diff --git a/Movierulzhd/src/main/kotlin/com/hexated/Movierulzhd.kt b/Movierulzhd/src/main/kotlin/com/hexated/Movierulzhd.kt index a7b03d3a..9f609764 100644 --- a/Movierulzhd/src/main/kotlin/com/hexated/Movierulzhd.kt +++ b/Movierulzhd/src/main/kotlin/com/hexated/Movierulzhd.kt @@ -230,7 +230,7 @@ open class Movierulzhd : MainAPI() { referer = data, headers = mapOf("X-Requested-With" to "XMLHttpRequest") ).parsed().embed_url - if (!source.contains("youtube")) loadExtractor(source, "$directUrl/", subtitleCallback, callback) + if (!source.contains("youtube")) loadCustomExtractor(source, "$directUrl/", subtitleCallback, callback) } else { var document = app.get(data).document if (document.select("title").text() == "Just a moment...") { @@ -257,7 +257,7 @@ open class Movierulzhd : MainAPI() { ).parsed().embed_url when { - !source.contains("youtube") -> loadExtractor( + !source.contains("youtube") -> loadCustomExtractor( source, "$directUrl/", subtitleCallback, @@ -279,6 +279,34 @@ open class Movierulzhd : MainAPI() { } } + private suspend fun loadCustomExtractor( + url: String, + referer: String? = null, + subtitleCallback: (SubtitleFile) -> Unit, + callback: (ExtractorLink) -> Unit, + quality: Int? = null, + ) { + loadExtractor(url, referer, subtitleCallback) { link -> + if(link.quality == Qualities.Unknown.value) { + callback.invoke( + ExtractorLink( + link.source, + link.name, + link.url, + link.referer, + when (link.type) { + ExtractorLinkType.M3U8 -> link.quality + else -> quality ?: link.quality + }, + link.type, + link.headers, + link.extractorData + ) + ) + } + } + } + data class LinkData( val tag: String? = null, val type: String? = null,