package eu.kanade.tachiyomi.extension.en.hniscantraden import eu.kanade.tachiyomi.multisrc.foolslide.FoolSlide import eu.kanade.tachiyomi.network.GET import eu.kanade.tachiyomi.source.model.FilterList import eu.kanade.tachiyomi.source.model.Page import eu.kanade.tachiyomi.source.model.SChapter import eu.kanade.tachiyomi.source.model.SManga import okhttp3.Request import okhttp3.Response import org.jsoup.nodes.Element class HNIScantradEN : FoolSlide("HNI-Scantrad", "https://hni-scantrad.com", "en", "/eng/lel") { override val supportsLatest = false override fun popularMangaRequest(page: Int) = GET(baseUrl + urlModifier, headers) override fun popularMangaSelector() = "div.listed" override fun popularMangaFromElement(element: Element): SManga { return SManga.create().apply { element.select("a:has(h3)").let { title = it.text() setUrlWithoutDomain(it.attr("abs:href")) } thumbnail_url = element.select("img").attr("abs:src") } } override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request = GET("$baseUrl$urlModifier/?manga=${query.replace(" ", "+")}") override fun searchMangaSelector(): String = popularMangaSelector() override fun searchMangaFromElement(element: Element): SManga = popularMangaFromElement(element) override fun chapterListSelector() = "div.theList > a" override fun chapterFromElement(element: Element): SChapter { return SChapter.create().apply { name = element.select("div.chapter b").text() setUrlWithoutDomain(element.attr("abs:href")) } } override fun pageListParse(response: Response): List { return Regex("""imageArray\[\d+]='(.*)'""").findAll(response.body()!!.string()).toList().mapIndexed { i, mr -> Page(i, "", "$baseUrl$urlModifier/${mr.groupValues[1]}") } } }