diff --git a/src/ar/xsanime/build.gradle b/src/ar/xsanime/build.gradle index ce003e2b8..1246b8b56 100644 --- a/src/ar/xsanime/build.gradle +++ b/src/ar/xsanime/build.gradle @@ -5,7 +5,7 @@ ext { extName = 'XS Anime' pkgNameSuffix = 'ar.xsanime' extClass = '.XsAnime' - extVersionCode = 5 + extVersionCode = 6 libVersion = '12' } diff --git a/src/ar/xsanime/src/eu/kanade/tachiyomi/animeextension/ar/xsanime/XsAnime.kt b/src/ar/xsanime/src/eu/kanade/tachiyomi/animeextension/ar/xsanime/XsAnime.kt index 87b0db9b8..b29e9c4dd 100644 --- a/src/ar/xsanime/src/eu/kanade/tachiyomi/animeextension/ar/xsanime/XsAnime.kt +++ b/src/ar/xsanime/src/eu/kanade/tachiyomi/animeextension/ar/xsanime/XsAnime.kt @@ -1,5 +1,10 @@ package eu.kanade.tachiyomi.animeextension.ar.xsanime +import android.app.Application +import android.content.SharedPreferences +import androidx.preference.ListPreference +import androidx.preference.PreferenceScreen +import eu.kanade.tachiyomi.animesource.ConfigurableAnimeSource import eu.kanade.tachiyomi.animesource.model.AnimeFilter import eu.kanade.tachiyomi.animesource.model.AnimeFilterList import eu.kanade.tachiyomi.animesource.model.SAnime @@ -8,16 +13,18 @@ import eu.kanade.tachiyomi.animesource.model.Video import eu.kanade.tachiyomi.animesource.online.ParsedAnimeHttpSource import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.util.asJsoup -import okhttp3.Headers.Companion.toHeaders +import okhttp3.Headers import okhttp3.HttpUrl.Companion.toHttpUrlOrNull import okhttp3.OkHttpClient import okhttp3.Request import okhttp3.Response import org.jsoup.nodes.Document import org.jsoup.nodes.Element +import uy.kohesive.injekt.Injekt +import uy.kohesive.injekt.api.get import java.lang.Exception -class XsAnime : ParsedAnimeHttpSource() { +class XsAnime : ConfigurableAnimeSource, ParsedAnimeHttpSource() { override val name = "XS Anime" @@ -29,6 +36,10 @@ class XsAnime : ParsedAnimeHttpSource() { override val client: OkHttpClient = network.cloudflareClient + private val preferences: SharedPreferences by lazy { + Injekt.get().getSharedPreferences("source_$id", 0x0000) + } + // Popular Anime override fun popularAnimeSelector(): String = "ul.boxes--holder div.itemtype_anime a" @@ -51,7 +62,7 @@ class XsAnime : ParsedAnimeHttpSource() { val episode = SEpisode.create() episode.setUrlWithoutDomain(element.attr("abs:href")) episode.name = element.select("a > em").text() - episode.episode_number = element.select("a > em").text().replace(" و", "").replace("الأخيرة", "").toFloat() + // episode.episode_number = element.select("a > em").text().replace(" و", "").replace("الأخيرة", "").toFloat() episode.date_upload = System.currentTimeMillis() return episode @@ -61,11 +72,11 @@ class XsAnime : ParsedAnimeHttpSource() { override fun videoListParse(response: Response): List