From cfe4301eadb8db8e5005793efd75b35ee3c8b496 Mon Sep 17 00:00:00 2001 From: Mioki <22417711+okibcn@users.noreply.github.com> Date: Sun, 2 Aug 2026 21:38:22 -0700 Subject: [PATCH 1/9] Update Vidmoly --- .../com/lagradost/cloudstream3/extractors/Vidmoly.kt | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt index 11927c50752..6e8e16c6f33 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt @@ -35,14 +35,13 @@ open class Vidmoly : ExtractorApi() { "Sec-Fetch-Dest" to "iframe" ) - val newUrl = if (url.contains("/w/")) - url.replaceFirst("/w/", "/embed-") + ".html" - else url + val vidmolyId=url.removeSuffix("/").substringAfterLast("/") + val newUrl ="https://vidmoly.biz/embed-${vidmolyId}.html" val script = app.get(newUrl, headers = headers, referer = referer) .document.select("script") - .firstOrNull { it.data().contains("sources:") } - ?.data() + .map { it.data().replace("'", "\"") } + .firstOrNull { it.contains("sources:") } // Extracts and parses videoData JwPlayerHelper.extractStreamLinks(script.orEmpty(), name, mainUrl, callback, subtitleCallback) From a7277c14b76ff129cfcd5dce02f14abd074e9b79 Mon Sep 17 00:00:00 2001 From: Mioki <22417711+okibcn@users.noreply.github.com> Date: Wed, 5 Aug 2026 20:39:37 -0700 Subject: [PATCH 2/9] Removed hardcoded Url string --- .../kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt index 6e8e16c6f33..473b0b3de2f 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt @@ -23,6 +23,7 @@ open class Vidmoly : ExtractorApi() { override val name = "Vidmoly" override val mainUrl = "https://vidmoly.net" override val requiresReferer = true + val downloadUrl = "https://vidmoly.biz" override suspend fun getUrl( url: String, @@ -36,7 +37,7 @@ open class Vidmoly : ExtractorApi() { ) val vidmolyId=url.removeSuffix("/").substringAfterLast("/") - val newUrl ="https://vidmoly.biz/embed-${vidmolyId}.html" + val newUrl ="${downloadUrl}/embed-${vidmolyId}.html" val script = app.get(newUrl, headers = headers, referer = referer) .document.select("script") From a480ad89ff4c3c5e7c53715cf7cd874e69951bd0 Mon Sep 17 00:00:00 2001 From: Mioki <22417711+okibcn@users.noreply.github.com> Date: Wed, 5 Aug 2026 21:00:12 -0700 Subject: [PATCH 3/9] Rename newUrl variable to iframeUrl --- .../kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt index 473b0b3de2f..2a26bc09d3f 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt @@ -37,9 +37,9 @@ open class Vidmoly : ExtractorApi() { ) val vidmolyId=url.removeSuffix("/").substringAfterLast("/") - val newUrl ="${downloadUrl}/embed-${vidmolyId}.html" + val iframeUrl ="${downloadUrl}/embed-${vidmolyId}.html" - val script = app.get(newUrl, headers = headers, referer = referer) + val script = app.get(iframeUrl, headers = headers, referer = referer) .document.select("script") .map { it.data().replace("'", "\"") } .firstOrNull { it.contains("sources:") } From 8fbb32dfcbd728f59f3c01dfbc987f5074638776 Mon Sep 17 00:00:00 2001 From: Mioki <22417711+okibcn@users.noreply.github.com> Date: Wed, 5 Aug 2026 22:12:11 -0700 Subject: [PATCH 4/9] Added @Prerelease to ensure that modded code is backwards compatible. --- .../kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt | 1 + 1 file changed, 1 insertion(+) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt index 2a26bc09d3f..75f419b9d72 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt @@ -19,6 +19,7 @@ class Vidmolybiz : Vidmoly() { override val mainUrl = "https://vidmoly.biz" } +@Prerelease open class Vidmoly : ExtractorApi() { override val name = "Vidmoly" override val mainUrl = "https://vidmoly.net" From 5388809b3610ae8f9ef2771eef5cf5c78d775caf Mon Sep 17 00:00:00 2001 From: Mioki <22417711+okibcn@users.noreply.github.com> Date: Wed, 5 Aug 2026 22:14:07 -0700 Subject: [PATCH 5/9] Added Prerelease Import --- .../kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt index 75f419b9d72..33e23442aef 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt @@ -1,5 +1,5 @@ package com.lagradost.cloudstream3.extractors - +import com.lagradost.cloudstream3.Prerelease import com.lagradost.cloudstream3.SubtitleFile import com.lagradost.cloudstream3.USER_AGENT import com.lagradost.cloudstream3.app From f259e74f53e23918f78465b5d50dd42113939d7f Mon Sep 17 00:00:00 2001 From: Mioki <22417711+okibcn@users.noreply.github.com> Date: Wed, 5 Aug 2026 22:19:58 -0700 Subject: [PATCH 6/9] Setting all clasees as Prerelease to avoid :library:checkKotlinAbi error --- .../kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt | 3 +++ 1 file changed, 3 insertions(+) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt index 33e23442aef..3a6d216402e 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt @@ -7,14 +7,17 @@ import com.lagradost.cloudstream3.extractors.helper.JwPlayerHelper import com.lagradost.cloudstream3.utils.ExtractorApi import com.lagradost.cloudstream3.utils.ExtractorLink +@Prerelease class Vidmolyme : Vidmoly() { override val mainUrl = "https://vidmoly.me" } +@Prerelease class Vidmolyto : Vidmoly() { override val mainUrl = "https://vidmoly.to" } +@Prerelease class Vidmolybiz : Vidmoly() { override val mainUrl = "https://vidmoly.biz" } From 4babc1d91662c38fae20680f59e1cefb2fa9bcf3 Mon Sep 17 00:00:00 2001 From: Mioki <22417711+okibcn@users.noreply.github.com> Date: Wed, 5 Aug 2026 22:27:48 -0700 Subject: [PATCH 7/9] @Prerelease tag in modified code --- .../kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt | 6 ++---- 1 file changed, 2 insertions(+), 4 deletions(-) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt index 3a6d216402e..0b2079f0091 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt @@ -7,28 +7,26 @@ import com.lagradost.cloudstream3.extractors.helper.JwPlayerHelper import com.lagradost.cloudstream3.utils.ExtractorApi import com.lagradost.cloudstream3.utils.ExtractorLink -@Prerelease class Vidmolyme : Vidmoly() { override val mainUrl = "https://vidmoly.me" } -@Prerelease class Vidmolyto : Vidmoly() { override val mainUrl = "https://vidmoly.to" } -@Prerelease class Vidmolybiz : Vidmoly() { override val mainUrl = "https://vidmoly.biz" } -@Prerelease open class Vidmoly : ExtractorApi() { override val name = "Vidmoly" override val mainUrl = "https://vidmoly.net" override val requiresReferer = true + @Prerelease val downloadUrl = "https://vidmoly.biz" + @Prerelease override suspend fun getUrl( url: String, referer: String?, From a14fd129b1e915388955a79a00d9eb8282f3954f Mon Sep 17 00:00:00 2001 From: Mioki <22417711+okibcn@users.noreply.github.com> Date: Wed, 5 Aug 2026 22:34:57 -0700 Subject: [PATCH 8/9] @Prerelease removal --- .../kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt index 0b2079f0091..83fac7a33b4 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt @@ -23,16 +23,14 @@ open class Vidmoly : ExtractorApi() { override val name = "Vidmoly" override val mainUrl = "https://vidmoly.net" override val requiresReferer = true - @Prerelease - val downloadUrl = "https://vidmoly.biz" - @Prerelease override suspend fun getUrl( url: String, referer: String?, subtitleCallback: (SubtitleFile) -> Unit, callback: (ExtractorLink) -> Unit ) { + val downloadUrl = "https://vidmoly.biz" val headers = mapOf( "user-agent" to USER_AGENT, "Sec-Fetch-Dest" to "iframe" From 257a9f90c572ef48f1e61ba191f26acf59e8f72d Mon Sep 17 00:00:00 2001 From: Mioki <22417711+okibcn@users.noreply.github.com> Date: Wed, 5 Aug 2026 22:49:49 -0700 Subject: [PATCH 9/9] Removal of unneeded prerelease import --- .../kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt index 83fac7a33b4..55caf393856 100644 --- a/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt +++ b/library/src/commonMain/kotlin/com/lagradost/cloudstream3/extractors/Vidmoly.kt @@ -1,5 +1,5 @@ package com.lagradost.cloudstream3.extractors -import com.lagradost.cloudstream3.Prerelease + import com.lagradost.cloudstream3.SubtitleFile import com.lagradost.cloudstream3.USER_AGENT import com.lagradost.cloudstream3.app