From 9d19f4cde7cca6d0632a71f0b86bb21c25978ac1 Mon Sep 17 00:00:00 2001 From: ArjixWasTaken Date: Wed, 29 Sep 2021 19:32:44 +0300 Subject: [PATCH] added server support for gogo --- .idea/discord.xml | 7 ++++ .../animeproviders/GogoanimeProvider.kt | 38 ++++++++++++------- 2 files changed, 32 insertions(+), 13 deletions(-) create mode 100644 .idea/discord.xml diff --git a/.idea/discord.xml b/.idea/discord.xml new file mode 100644 index 00000000..d8e95616 --- /dev/null +++ b/.idea/discord.xml @@ -0,0 +1,7 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/java/com/lagradost/cloudstream3/animeproviders/GogoanimeProvider.kt b/app/src/main/java/com/lagradost/cloudstream3/animeproviders/GogoanimeProvider.kt index 0a47a61e..6a4f25ae 100644 --- a/app/src/main/java/com/lagradost/cloudstream3/animeproviders/GogoanimeProvider.kt +++ b/app/src/main/java/com/lagradost/cloudstream3/animeproviders/GogoanimeProvider.kt @@ -2,6 +2,7 @@ package com.lagradost.cloudstream3.animeproviders import com.lagradost.cloudstream3.* import com.lagradost.cloudstream3.utils.ExtractorLink +import com.lagradost.cloudstream3.utils.extractorApis import com.lagradost.cloudstream3.utils.getQualityFromName import org.jsoup.Jsoup import java.util.* @@ -203,19 +204,30 @@ class GogoanimeProvider : MainAPI() { val page = khttp.get(link, headers = mapOf("Referer" to iframe)) val pageDoc = Jsoup.parse(page.text) - return pageDoc.select(".dowload > a[download]").map { - val qual = if (it.text() - .contains("HDP") - ) "1080" else qualityRegex.find(it.text())?.destructured?.component1().toString() - ExtractorLink( - "Gogoanime", - if(qual == "null") "Gogoanime" else "Gogoanime - " + qual + "p", - it.attr("href"), - page.url, - getQualityFromName(qual), - it.attr("href").contains(".m3u8") - ) - } + return pageDoc.select(".dowload > a").map { + if (it.hasAttr("download")) { + val qual = if (it.text() + .contains("HDP") + ) "1080" else qualityRegex.find(it.text())?.destructured?.component1().toString() + listOf(ExtractorLink( + "Gogoanime", + if(qual == "null") "Gogoanime" else "Gogoanime - " + qual + "p", + it.attr("href"), + page.url, + getQualityFromName(qual), + it.attr("href").contains(".m3u8") + )) + } else { + val extractorLinks = ArrayList() + for (api in extractorApis) { + if (api.name.equals(it.text().replace("Download", "").trim(), ignoreCase = true)) { + extractorLinks.addAll(api.getSafeUrl(it.attr("href")) ?: listOf()) + break + } + } + extractorLinks + } + }.flatten() } override fun loadLinks(