From 239c1634cf858e82b5971b10f9240df9c56bd728 Mon Sep 17 00:00:00 2001 From: Chaos Pjeles Date: Sun, 28 Apr 2024 04:06:38 +0100 Subject: [PATCH] implement ahottie (#2551) * implement ahottie * fix linting issue * resolve suggestions * Update src/all/ahottie/src/eu/kanade/tachiyomi/extension/all/ahottie/AHottie.kt Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com> * Update src/all/ahottie/src/eu/kanade/tachiyomi/extension/all/ahottie/AHottie.kt Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com> * remove unnecessary query.isEmpty() check in search * reemove background from ic_launcher icons * remove padding from icon --------- Co-authored-by: AwkwardPeak7 <48650614+AwkwardPeak7@users.noreply.github.com> --- src/all/ahottie/build.gradle | 8 ++ .../ahottie/res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 5278 bytes .../ahottie/res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2777 bytes .../ahottie/res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 7806 bytes .../ahottie/res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 14907 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 22682 bytes .../extension/all/ahottie/AHottie.kt | 122 ++++++++++++++++++ 7 files changed, 130 insertions(+) create mode 100644 src/all/ahottie/build.gradle create mode 100644 src/all/ahottie/res/mipmap-hdpi/ic_launcher.png create mode 100644 src/all/ahottie/res/mipmap-mdpi/ic_launcher.png create mode 100644 src/all/ahottie/res/mipmap-xhdpi/ic_launcher.png create mode 100644 src/all/ahottie/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 src/all/ahottie/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/all/ahottie/src/eu/kanade/tachiyomi/extension/all/ahottie/AHottie.kt diff --git a/src/all/ahottie/build.gradle b/src/all/ahottie/build.gradle new file mode 100644 index 000000000..874a50308 --- /dev/null +++ b/src/all/ahottie/build.gradle @@ -0,0 +1,8 @@ +ext { + extName = 'AHottie' + extClass = '.AHottie' + extVersionCode = 1 + isNsfw = true +} + +apply from: "$rootDir/common.gradle" diff --git a/src/all/ahottie/res/mipmap-hdpi/ic_launcher.png b/src/all/ahottie/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..c7a4aabebba2f5b13f165091cd0776f2de19657c GIT binary patch literal 5278 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 literal 0 HcmV?d00001 diff --git a/src/all/ahottie/res/mipmap-mdpi/ic_launcher.png b/src/all/ahottie/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..c14ee3b30982c05b03ea912d7e3ce8aec1cb635d GIT binary patch literal 2777 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 QK>z>%07*qoM6N<$g1Tb-r~m)} literal 0 HcmV?d00001 diff --git a/src/all/ahottie/res/mipmap-xxhdpi/ic_launcher.png b/src/all/ahottie/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..0b45235fecc9b7876b775da139148bb00e7d2145 GIT binary patch literal 14907 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�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 KMNUMnLSTYG1zBbQ literal 0 HcmV?d00001 diff --git a/src/all/ahottie/src/eu/kanade/tachiyomi/extension/all/ahottie/AHottie.kt b/src/all/ahottie/src/eu/kanade/tachiyomi/extension/all/ahottie/AHottie.kt new file mode 100644 index 000000000..88141c0e0 --- /dev/null +++ b/src/all/ahottie/src/eu/kanade/tachiyomi/extension/all/ahottie/AHottie.kt @@ -0,0 +1,122 @@ +package eu.kanade.tachiyomi.extension.all.ahottie + +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 eu.kanade.tachiyomi.source.online.ParsedHttpSource +import eu.kanade.tachiyomi.util.asJsoup +import okhttp3.HttpUrl.Companion.toHttpUrl +import okhttp3.Request +import org.jsoup.nodes.Document +import org.jsoup.nodes.Element +import java.text.ParseException +import java.text.SimpleDateFormat +import java.util.Locale + +class AHottie() : ParsedHttpSource() { + override val baseUrl = "https://ahottie.net" + override val lang = "all" + override val name = "AHottie" + override val supportsLatest = false + + // Popular + override fun popularMangaFromElement(element: Element) = SManga.create().apply { + thumbnail_url = element.select(".relative img").attr("src") + genre = element.select(".flex a").joinToString(", ") { + it.text() + } + title = element.select("h2").text() + setUrlWithoutDomain(element.select("a").attr("href")) + initialized = true + } + + override fun popularMangaNextPageSelector() = "a[rel=next]" + override fun popularMangaRequest(page: Int): Request { + return GET("$baseUrl/?page=$page", headers) + } + + override fun popularMangaSelector() = "#main > div > div" + + // Search + + override fun searchMangaFromElement(element: Element) = popularMangaFromElement(element) + override fun searchMangaNextPageSelector() = popularMangaNextPageSelector() + override fun searchMangaRequest(page: Int, query: String, filters: FilterList): Request { + return GET( + baseUrl.toHttpUrl().newBuilder().apply { + addPathSegment("search") + addQueryParameter("kw", query) + addQueryParameter("page", page.toString()) + }.build(), + headers, + ) + } + + override fun searchMangaSelector() = popularMangaSelector() + + // Details + override fun mangaDetailsParse(document: Document) = SManga.create().apply { + title = document.select("h1").text() + genre = document.select("div.pl-3 > a").joinToString(", ") { + it.text() + } + } + + override fun pageListParse(document: Document): List { + val pages = mutableListOf() + var doc = document + while (true) { + doc.select("#main img.block").map { + pages.add(Page(pages.size, imageUrl = it.attr("src"))) + } + val nextPageUrl = doc.select("a[rel=next]").attr("abs:href") + if (nextPageUrl.isEmpty()) break + doc = client.newCall(GET(nextPageUrl, headers)).execute().asJsoup() + } + return pages + } + + override fun chapterFromElement(element: Element) = SChapter.create().apply { + setUrlWithoutDomain(element.select("link[rel=canonical]").attr("abs:href")) + chapter_number = 0F + name = "GALLERY" + date_upload = getDate(element.select("time").text()) + } + + override fun chapterListSelector() = "html" + + // Pages + override fun imageUrlParse(document: Document): String = throw UnsupportedOperationException() + + override fun latestUpdatesFromElement(element: Element): SManga { + throw UnsupportedOperationException() + } + + override fun latestUpdatesNextPageSelector(): String? { + throw UnsupportedOperationException() + } + + override fun latestUpdatesRequest(page: Int): Request { + throw UnsupportedOperationException() + } + + override fun latestUpdatesSelector(): String { + throw UnsupportedOperationException() + } + + private fun getDate(str: String): Long { + return try { + DATE_FORMAT.parse(str)?.time ?: 0L + } catch (e: ParseException) { + 0L + } + } + + companion object { + private val DATE_FORMAT by lazy { + SimpleDateFormat("yyyy-MM-dd", Locale.ENGLISH) + } + } +}