Compare commits
No commits in common. "895dfb7d5f0dcf41ba62cdc1eb3f9373184e8649" and "ffb97eb6c6a52014bbad82295d317ea6c17fb86b" have entirely different histories.
895dfb7d5f
...
ffb97eb6c6
34 changed files with 54 additions and 53 deletions
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 6
|
||||
version = 5
|
||||
|
||||
dependencies{
|
||||
implementation("com.google.code.gson:gson:2.9.0")
|
||||
|
|
|
@ -209,7 +209,7 @@ class AnimeONProvider : MainAPI() {
|
|||
source = "${dub.fundub.name} (${dub.player[0].name})",
|
||||
streamUrl = getM3U(app.get("${apiUrl}/player/episode/${epd.id}").parsedSafe<FundubVideoUrl>()!!.videoUrl),
|
||||
referer = "https://animeon.club"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
}
|
||||
return true
|
||||
|
@ -220,7 +220,7 @@ class AnimeONProvider : MainAPI() {
|
|||
source = "${dub.fundub.name} (${dub.player[0].name})",
|
||||
streamUrl = getM3U(app.get("${apiUrl}/player/${dub.player[0].id}/${dub.fundub.id}").parsedSafe<FundubVideoUrl>()!!.videoUrl),
|
||||
referer = "https://animeon.club"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
|
||||
return true
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 6
|
||||
version = 5
|
||||
|
||||
|
||||
cloudstream {
|
||||
|
|
|
@ -181,7 +181,7 @@ class AnimeUAProvider : MainAPI() {
|
|||
source = dataList[0],
|
||||
streamUrl = m3u8Url,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
|
||||
return true
|
||||
}
|
||||
|
@ -200,7 +200,7 @@ class AnimeUAProvider : MainAPI() {
|
|||
source = dubs.title,
|
||||
streamUrl = episode.file,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 10
|
||||
version = 9
|
||||
|
||||
|
||||
cloudstream {
|
||||
|
|
|
@ -197,14 +197,14 @@ class AnitubeinuaProvider : MainAPI() {
|
|||
source = "${it.urls.playerName} (${it.urls.name})",
|
||||
streamUrl = AshdiExtractor().ParseM3U8(this.urls.url),
|
||||
referer = "https://tortuga.wtf/")
|
||||
.last().let(callback)
|
||||
.forEach(callback)
|
||||
}
|
||||
it.urls.url.contains("https://ashdi.vip/vod") -> {
|
||||
M3u8Helper.generateM3u8(
|
||||
source = "${it.urls.playerName} (${it.urls.name})",
|
||||
streamUrl = AshdiExtractor().ParseM3U8(this.urls.url),
|
||||
referer = "https://qeruya.cyou")
|
||||
.last().let(callback)
|
||||
.forEach(callback)
|
||||
}
|
||||
it.urls.url.contains("https://www.udrop.com") -> {
|
||||
callback.invoke(
|
||||
|
@ -274,14 +274,14 @@ class AnitubeinuaProvider : MainAPI() {
|
|||
source = dub.playerName,
|
||||
streamUrl = AshdiExtractor().ParseM3U8(this),
|
||||
referer = "https://tortuga.wtf/")
|
||||
.last().let(callback)
|
||||
.forEach(callback)
|
||||
}
|
||||
contains("https://ashdi.vip/vod") -> {
|
||||
M3u8Helper.generateM3u8(
|
||||
source = dub.playerName,
|
||||
streamUrl = AshdiExtractor().ParseM3U8(this),
|
||||
referer = "https://qeruya.cyou")
|
||||
.last().let(callback)
|
||||
.forEach(callback)
|
||||
}
|
||||
contains("https://www.udrop.com") -> {
|
||||
callback.invoke(
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 5
|
||||
version = 4
|
||||
|
||||
dependencies {
|
||||
implementation("com.google.code.gson:gson:2.9.0")
|
||||
|
|
|
@ -205,7 +205,7 @@ class BambooUAProvider : MainAPI() {
|
|||
source = it.attr("data-title"),
|
||||
streamUrl = it.attr("data-file"),
|
||||
referer = ""
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
@ -215,7 +215,7 @@ class BambooUAProvider : MainAPI() {
|
|||
source = "Bambooua",
|
||||
streamUrl = data,
|
||||
referer = ""
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
|
||||
return true
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 6
|
||||
version = 5
|
||||
|
||||
|
||||
cloudstream {
|
||||
|
|
|
@ -156,7 +156,7 @@ class EneyidaProvider : MainAPI() {
|
|||
source = dataList[0],
|
||||
streamUrl = m3u8Url.replace("https://", "http://"),
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
|
||||
val subtitleUrl = app.get(dataList[1]).document.select("script").html()
|
||||
.substringAfterLast("subtitle: \"")
|
||||
|
@ -186,7 +186,7 @@ class EneyidaProvider : MainAPI() {
|
|||
source = dubs.title,
|
||||
streamUrl = episode.file.replace("https://", "http://"),
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
|
||||
if(episode.subtitle.isBlank()) return true
|
||||
subtitleCallback.invoke(
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 6
|
||||
version = 5
|
||||
|
||||
dependencies{
|
||||
implementation("com.google.code.gson:gson:2.9.0")
|
||||
|
|
|
@ -222,7 +222,7 @@ class HigoTVProvider : MainAPI() {
|
|||
source = it.title,
|
||||
streamUrl = it.file!!,
|
||||
referer = "https://moonanime.art"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 4
|
||||
version = 3
|
||||
|
||||
|
||||
cloudstream {
|
||||
|
|
|
@ -174,7 +174,7 @@ class KinoTronProvider : MainAPI() {
|
|||
source = dataList[0],
|
||||
streamUrl = m3u8Url,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
|
||||
return true
|
||||
}
|
||||
|
@ -193,7 +193,7 @@ class KinoTronProvider : MainAPI() {
|
|||
source = dubs.title,
|
||||
streamUrl = episode.file,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 5
|
||||
version = 4
|
||||
|
||||
|
||||
cloudstream {
|
||||
|
|
|
@ -147,7 +147,7 @@ class KinoVezhaProvider : MainAPI() {
|
|||
source = dataList[0],
|
||||
streamUrl = m3u8Url,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
|
||||
return true
|
||||
}
|
||||
|
@ -166,7 +166,7 @@ class KinoVezhaProvider : MainAPI() {
|
|||
source = dubs.title,
|
||||
streamUrl = episode.file,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 6
|
||||
version = 5
|
||||
|
||||
|
||||
cloudstream {
|
||||
|
|
|
@ -188,7 +188,7 @@ class KlonTVProvider : MainAPI() {
|
|||
source = dataList[0],
|
||||
streamUrl = m3u8Url,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
|
||||
val subtitleUrl = app.get(dataList[1]).document.select("script").html()
|
||||
.substringAfterLast("subtitle: \"")
|
||||
|
@ -218,7 +218,7 @@ class KlonTVProvider : MainAPI() {
|
|||
source = dubs.title,
|
||||
streamUrl = episode.file,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
|
||||
if(episode.subtitle.isBlank()) return true
|
||||
subtitleCallback.invoke(
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 3
|
||||
version = 2
|
||||
|
||||
|
||||
cloudstream {
|
||||
|
|
|
@ -163,7 +163,7 @@ class SerialnoProvider : MainAPI() {
|
|||
source = dubs.title,
|
||||
streamUrl = episode.file,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 2
|
||||
version = 1
|
||||
|
||||
dependencies{
|
||||
implementation("com.google.code.gson:gson:2.9.0")
|
||||
|
|
|
@ -150,7 +150,7 @@ class TeleportalProvider : MainAPI() {
|
|||
source = video.projectName,
|
||||
streamUrl = video.mediaHlsNoAdv,
|
||||
referer = mainUrl
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
return true
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 3
|
||||
version = 2
|
||||
|
||||
dependencies {
|
||||
implementation("com.google.code.gson:gson:2.9.0")
|
||||
|
|
|
@ -242,7 +242,7 @@ class UAFlixProvider : MainAPI() {
|
|||
source = "UAFlix",
|
||||
streamUrl = playerRawJson,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
return true
|
||||
}
|
||||
val playerRawJson = app.get(playerUrl).document.select("script").html()
|
||||
|
@ -255,7 +255,7 @@ class UAFlixProvider : MainAPI() {
|
|||
source = dubs.title,
|
||||
streamUrl = dubs.folder[0].folder[0].file,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -276,7 +276,7 @@ class UAFlixProvider : MainAPI() {
|
|||
source = dubs.title,
|
||||
streamUrl = episode.file.replace("https://", "http://"),
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 8
|
||||
version = 7
|
||||
|
||||
dependencies {
|
||||
implementation("com.google.code.gson:gson:2.9.0")
|
||||
|
|
|
@ -161,7 +161,7 @@ open class UASerialProvider(url: String, name: String) : MainAPI() {
|
|||
source = "Movie",
|
||||
streamUrl = m3u8Url,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
|
||||
return true
|
||||
}
|
||||
|
@ -187,7 +187,7 @@ open class UASerialProvider(url: String, name: String) : MainAPI() {
|
|||
source = "${dub.text()} (${player.attr("data-player-id").replaceFirstChar { it.uppercase() }})",
|
||||
streamUrl = m3u8Url,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
}
|
||||
// selecto__dropdown-item
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 6
|
||||
version = 5
|
||||
|
||||
dependencies {
|
||||
implementation("com.google.code.gson:gson:2.9.0")
|
||||
|
|
|
@ -227,7 +227,7 @@ class UASerialsProProvider : MainAPI() {
|
|||
source = dataList[0],
|
||||
streamUrl = m3u8Url.replace("https://", "http://"),
|
||||
referer = "https://tortuga.wtf/",
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
return true
|
||||
}
|
||||
|
||||
|
@ -251,7 +251,7 @@ class UASerialsProProvider : MainAPI() {
|
|||
source = episode.title,
|
||||
streamUrl = m3u8Url.replace("https://", "http://"),
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
return true
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 11
|
||||
version = 10
|
||||
|
||||
|
||||
cloudstream {
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
package com.lagradost
|
||||
|
||||
import android.util.Log
|
||||
import com.lagradost.cloudstream3.*
|
||||
import com.lagradost.cloudstream3.LoadResponse.Companion.addActors
|
||||
import com.lagradost.cloudstream3.LoadResponse.Companion.addTrailer
|
||||
|
@ -215,6 +216,7 @@ class UakinoProvider : MainAPI() {
|
|||
): Boolean {
|
||||
val dataList = data.split(",")
|
||||
// TODO: OPTIMIZE code!!! Remove this shitty code as soon as possible!!!!!!
|
||||
Log.d("CakesTwix-Debug", data)
|
||||
if (dataList.size == 1) {
|
||||
val id = data.split("/").last().split("-").first()
|
||||
val responseGet =
|
||||
|
@ -253,7 +255,7 @@ class UakinoProvider : MainAPI() {
|
|||
streamUrl = m3uLink,
|
||||
referer = "https://ashdi.vip/"
|
||||
)
|
||||
.last().let(callback)
|
||||
.forEach(callback)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -281,7 +283,7 @@ class UakinoProvider : MainAPI() {
|
|||
streamUrl = m3uLink,
|
||||
referer = "https://ashdi.vip/"
|
||||
)
|
||||
.last().let(callback)
|
||||
.forEach(callback)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -300,7 +302,6 @@ class UakinoProvider : MainAPI() {
|
|||
Jsoup.parse(it)
|
||||
.select("div.playlists-videos li:contains(${dataList[1]})")
|
||||
.mapNotNull { eps ->
|
||||
if (eps.text() != dataList[1]) return@mapNotNull
|
||||
var href = eps.attr("data-file") // ashdi
|
||||
// Can be without https:
|
||||
if (!href.contains("https://")) {
|
||||
|
@ -324,7 +325,7 @@ class UakinoProvider : MainAPI() {
|
|||
streamUrl = m3uLink,
|
||||
referer = "https://ashdi.vip/"
|
||||
)
|
||||
.last().let(callback)
|
||||
.forEach(callback)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
@ -351,7 +352,7 @@ class UakinoProvider : MainAPI() {
|
|||
streamUrl = m3uLink,
|
||||
referer = "https://ashdi.vip/"
|
||||
)
|
||||
.last().let(callback)
|
||||
.forEach(callback)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 10
|
||||
version = 9
|
||||
|
||||
dependencies{
|
||||
implementation("com.google.code.gson:gson:2.9.0")
|
||||
|
|
|
@ -156,7 +156,7 @@ class UnimayProvider : MainAPI() {
|
|||
source = "Unimay",
|
||||
streamUrl = episode.hls.master,
|
||||
referer = "https://www.unimay.media"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
return true
|
||||
}
|
||||
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
// use an integer for version numbers
|
||||
version = 2
|
||||
version = 1
|
||||
|
||||
dependencies {
|
||||
implementation("com.google.code.gson:gson:2.9.0")
|
||||
|
|
|
@ -226,7 +226,7 @@ class VodneriloProvider : MainAPI() {
|
|||
source = dataList[0],
|
||||
streamUrl = m3u8Url,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
|
||||
return true
|
||||
}
|
||||
|
@ -245,7 +245,7 @@ class VodneriloProvider : MainAPI() {
|
|||
source = dubs.title,
|
||||
streamUrl = episode.file,
|
||||
referer = "https://tortuga.wtf/"
|
||||
).last().let(callback)
|
||||
).forEach(callback)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in a new issue