diff --git a/src/ar/asia2tv/build.gradle b/src/ar/asia2tv/build.gradle index f6ff82962..3b0bd39f9 100644 --- a/src/ar/asia2tv/build.gradle +++ b/src/ar/asia2tv/build.gradle @@ -1,18 +1,23 @@ -apply plugin: 'com.android.application' -apply plugin: 'kotlin-android' +plugins { + alias(libs.plugins.android.application) + alias(libs.plugins.kotlin.android) +} ext { extName = 'asia2tv' pkgNameSuffix = 'ar.asia2tv' extClass = '.Asia2TV' - extVersionCode = 14 + extVersionCode = 15 libVersion = '13' } dependencies { - implementation(project(':lib-streamtape-extractor')) - implementation(project(':lib-okru-extractor')) implementation(project(':lib-dood-extractor')) + implementation(project(':lib-okru-extractor')) + implementation(project(':lib-streamtape-extractor')) + implementation(project(':lib-streamwish-extractor')) + implementation(project(':lib-uqload-extractor')) + implementation(project(':lib-vidbom-extractor')) } apply from: "$rootDir/common.gradle" diff --git a/src/ar/asia2tv/src/eu/kanade/tachiyomi/animeextension/ar/asia2tv/Asia2TV.kt b/src/ar/asia2tv/src/eu/kanade/tachiyomi/animeextension/ar/asia2tv/Asia2TV.kt index 8fb14c437..104c6141b 100644 --- a/src/ar/asia2tv/src/eu/kanade/tachiyomi/animeextension/ar/asia2tv/Asia2TV.kt +++ b/src/ar/asia2tv/src/eu/kanade/tachiyomi/animeextension/ar/asia2tv/Asia2TV.kt @@ -14,8 +14,15 @@ import eu.kanade.tachiyomi.animesource.online.ParsedAnimeHttpSource import eu.kanade.tachiyomi.lib.doodextractor.DoodExtractor import eu.kanade.tachiyomi.lib.okruextractor.OkruExtractor import eu.kanade.tachiyomi.lib.streamtapeextractor.StreamTapeExtractor +import eu.kanade.tachiyomi.lib.streamwishextractor.StreamWishExtractor +import eu.kanade.tachiyomi.lib.uqloadextractor.UqloadExtractor +import eu.kanade.tachiyomi.lib.vidbomextractor.VidBomExtractor import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.util.asJsoup +import kotlinx.coroutines.Dispatchers +import kotlinx.coroutines.async +import kotlinx.coroutines.awaitAll +import kotlinx.coroutines.runBlocking import okhttp3.HttpUrl.Companion.toHttpUrlOrNull import okhttp3.OkHttpClient import okhttp3.Request @@ -30,7 +37,7 @@ class Asia2TV : ConfigurableAnimeSource, ParsedAnimeHttpSource() { override val name = "Asia2TV" - override val baseUrl = "https://asia2tv.net" + override val baseUrl = "https://ww1.asia2tv.pw" override val lang = "ar" @@ -42,8 +49,7 @@ class Asia2TV : ConfigurableAnimeSource, ParsedAnimeHttpSource() { Injekt.get().getSharedPreferences("source_$id", 0x0000) } - // ========================== popular ======================= - + // ============================== Popular =============================== override fun popularAnimeSelector(): String = "div.postmovie-photo a[title]" override fun popularAnimeNextPageSelector(): String = "div.nav-links a.next" @@ -58,8 +64,7 @@ class Asia2TV : ConfigurableAnimeSource, ParsedAnimeHttpSource() { return anime } - // ========================== episodes ======================= - + // ============================== Episodes ============================== override fun episodeListSelector() = "div.loop-episode a" override fun episodeListParse(response: Response): List { @@ -73,39 +78,51 @@ class Asia2TV : ConfigurableAnimeSource, ParsedAnimeHttpSource() { return episode } - // ========================== video urls ======================= - + // ============================ Video Links ============================= override fun videoListSelector() = "ul.server-list-menu li" override fun videoListRequest(episode: SEpisode): Request { - val document = client.newCall(GET(baseUrl + episode.url)).execute().asJsoup() + val document = client.newCall(GET(baseUrl + episode.url)).execute() + .use { it.asJsoup() } val link = document.selectFirst("div.loop-episode a.current")!!.attr("href") return GET(link) } override fun videoListParse(response: Response): List