diff --git a/src/en/mangadass/build.gradle b/src/en/mangadass/build.gradle new file mode 100644 index 000000000..911767ef8 --- /dev/null +++ b/src/en/mangadass/build.gradle @@ -0,0 +1,10 @@ +ext { + extName = 'Manga Dass' + extClass = '.MangaDass' + themePkg = 'madara' + baseUrl = "https://mangadass.com" + overrideVersionCode = 0 + isNsfw = true +} + +apply from: "$rootDir/common.gradle" diff --git a/src/en/mangadass/res/mipmap-hdpi/ic_launcher.png b/src/en/mangadass/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 000000000..5415b4ed6 Binary files /dev/null and b/src/en/mangadass/res/mipmap-hdpi/ic_launcher.png differ diff --git a/src/en/mangadass/res/mipmap-mdpi/ic_launcher.png b/src/en/mangadass/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 000000000..7ddff568c Binary files /dev/null and b/src/en/mangadass/res/mipmap-mdpi/ic_launcher.png differ diff --git a/src/en/mangadass/res/mipmap-xhdpi/ic_launcher.png b/src/en/mangadass/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 000000000..c6630baff Binary files /dev/null and b/src/en/mangadass/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/src/en/mangadass/res/mipmap-xxhdpi/ic_launcher.png b/src/en/mangadass/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 000000000..6e31e77b3 Binary files /dev/null and b/src/en/mangadass/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/src/en/mangadass/res/mipmap-xxxhdpi/ic_launcher.png b/src/en/mangadass/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 000000000..7a4edc536 Binary files /dev/null and b/src/en/mangadass/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/src/en/mangadass/src/eu/kanade/tachiyomi/extension/en/mangadass/MangaDass.kt b/src/en/mangadass/src/eu/kanade/tachiyomi/extension/en/mangadass/MangaDass.kt new file mode 100644 index 000000000..a25f17224 --- /dev/null +++ b/src/en/mangadass/src/eu/kanade/tachiyomi/extension/en/mangadass/MangaDass.kt @@ -0,0 +1,57 @@ +package eu.kanade.tachiyomi.extension.en.mangadass + +import eu.kanade.tachiyomi.multisrc.madara.Madara +import eu.kanade.tachiyomi.network.GET +import eu.kanade.tachiyomi.network.interceptor.rateLimit +import eu.kanade.tachiyomi.source.model.Page +import eu.kanade.tachiyomi.source.model.SChapter +import eu.kanade.tachiyomi.source.model.SManga +import org.jsoup.nodes.Document +import org.jsoup.nodes.Element +import java.text.SimpleDateFormat +import java.util.Locale + +class MangaDass : Madara( + "Manga Dass", + "https://mangadass.com", + "en", + SimpleDateFormat("dd MMM yyyy", Locale.US), +) { + override val client = super.client.newBuilder() + .rateLimit(3) + .build() + + override val useLoadMoreRequest = LoadMoreStrategy.Never + + override val filterNonMangaItems = false + + override fun popularMangaRequest(page: Int) = + GET("$baseUrl/$mangaSubString/${searchPage(page)}?m_orderby=trending", headers) + + override fun popularMangaFromElement(element: Element) = SManga.create().apply { + title = element.selectFirst("h3")!!.text() + thumbnail_url = element.selectFirst("img")?.absUrl("src") + setUrlWithoutDomain(element.selectFirst("a")!!.absUrl("href")) + } + + override fun latestUpdatesRequest(page: Int) = + GET("$baseUrl/$mangaSubString/${searchPage(page)}?m_orderby=latest", headers) + + override fun latestUpdatesFromElement(element: Element) = popularMangaFromElement(element) + + override fun chapterListSelector() = ".row-content-chapter li" + + override fun chapterFromElement(element: Element) = SChapter.create().apply { + with(element.selectFirst("a")!!) { + name = text() + setUrlWithoutDomain(absUrl("href")) + } + date_upload = parseChapterDate(element.selectFirst(".chapter-time")?.text()) + } + + override fun pageListParse(document: Document): List { + return document.select(".read-content img").mapIndexed { index, element -> + Page(index, imageUrl = element.absUrl("src")) + } + } +} diff --git a/src/en/webniichan/build.gradle b/src/en/webniichan/build.gradle new file mode 100644 index 000000000..01b3ee3df --- /dev/null +++ b/src/en/webniichan/build.gradle @@ -0,0 +1,10 @@ +ext { + extName = 'Web Niichan' + extClass = '.WebNiichan' + themePkg = 'madara' + baseUrl = "https://webniichan.online" + overrideVersionCode = 0 + isNsfw = false +} + +apply from: "$rootDir/common.gradle" diff --git a/src/en/webniichan/res/mipmap-hdpi/ic_launcher.png b/src/en/webniichan/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 000000000..be62f939b Binary files /dev/null and b/src/en/webniichan/res/mipmap-hdpi/ic_launcher.png differ diff --git a/src/en/webniichan/res/mipmap-mdpi/ic_launcher.png b/src/en/webniichan/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 000000000..2218298e2 Binary files /dev/null and b/src/en/webniichan/res/mipmap-mdpi/ic_launcher.png differ diff --git a/src/en/webniichan/res/mipmap-xhdpi/ic_launcher.png b/src/en/webniichan/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 000000000..8557f8787 Binary files /dev/null and b/src/en/webniichan/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/src/en/webniichan/res/mipmap-xxhdpi/ic_launcher.png b/src/en/webniichan/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 000000000..18c250363 Binary files /dev/null and b/src/en/webniichan/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/src/en/webniichan/res/mipmap-xxxhdpi/ic_launcher.png b/src/en/webniichan/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 000000000..77751d6d0 Binary files /dev/null and b/src/en/webniichan/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/src/en/webniichan/src/eu/kanade/tachiyomi/extension/en/webniichan/WebNiichan.kt b/src/en/webniichan/src/eu/kanade/tachiyomi/extension/en/webniichan/WebNiichan.kt new file mode 100644 index 000000000..ddc75f8e9 --- /dev/null +++ b/src/en/webniichan/src/eu/kanade/tachiyomi/extension/en/webniichan/WebNiichan.kt @@ -0,0 +1,44 @@ +package eu.kanade.tachiyomi.extension.en.webniichan + +import android.annotation.SuppressLint +import eu.kanade.tachiyomi.multisrc.madara.Madara +import eu.kanade.tachiyomi.network.interceptor.rateLimit +import okhttp3.OkHttpClient +import java.security.SecureRandom +import java.security.cert.X509Certificate +import javax.net.ssl.SSLContext +import javax.net.ssl.TrustManager +import javax.net.ssl.X509TrustManager + +class WebNiichan : Madara( + "Web Niichan", + "https://webniichan.online", + "en", +) { + override val client = super.client.newBuilder() + .rateLimit(3) + .ignoreAllSSLErrors() + .build() + + override val useNewChapterEndpoint = true + + override val useLoadMoreRequest = LoadMoreStrategy.Never + + private fun OkHttpClient.Builder.ignoreAllSSLErrors(): OkHttpClient.Builder { + val naiveTrustManager = @SuppressLint("CustomX509TrustManager") + object : X509TrustManager { + override fun getAcceptedIssuers(): Array = emptyArray() + override fun checkClientTrusted(certs: Array, authType: String) = Unit + override fun checkServerTrusted(certs: Array, authType: String) = Unit + } + + val insecureSocketFactory = SSLContext.getInstance("TLSv1.2").apply { + val trustAllCerts = arrayOf(naiveTrustManager) + init(null, trustAllCerts, SecureRandom()) + }.socketFactory + + sslSocketFactory(insecureSocketFactory, naiveTrustManager) + hostnameVerifier { _, _ -> true } + return this + } +} diff --git a/src/es/bibliopanda/build.gradle b/src/es/bibliopanda/build.gradle new file mode 100644 index 000000000..68f9e49f5 --- /dev/null +++ b/src/es/bibliopanda/build.gradle @@ -0,0 +1,10 @@ +ext { + extName = 'Biblio Panda' + extClass = '.BiblioPanda' + themePkg = 'madara' + baseUrl = 'https://bibliopanda.com' + overrideVersionCode = 0 + isNsfw = false +} + +apply from: "$rootDir/common.gradle" diff --git a/src/es/bibliopanda/res/mipmap-hdpi/ic_launcher.png b/src/es/bibliopanda/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 000000000..361ed47d5 Binary files /dev/null and b/src/es/bibliopanda/res/mipmap-hdpi/ic_launcher.png differ diff --git a/src/es/bibliopanda/res/mipmap-mdpi/ic_launcher.png b/src/es/bibliopanda/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 000000000..d427458b3 Binary files /dev/null and b/src/es/bibliopanda/res/mipmap-mdpi/ic_launcher.png differ diff --git a/src/es/bibliopanda/res/mipmap-xhdpi/ic_launcher.png b/src/es/bibliopanda/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 000000000..ae142742b Binary files /dev/null and b/src/es/bibliopanda/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/src/es/bibliopanda/res/mipmap-xxhdpi/ic_launcher.png b/src/es/bibliopanda/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 000000000..4c0d39346 Binary files /dev/null and b/src/es/bibliopanda/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/src/es/bibliopanda/res/mipmap-xxxhdpi/ic_launcher.png b/src/es/bibliopanda/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 000000000..666700ec9 Binary files /dev/null and b/src/es/bibliopanda/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/src/es/bibliopanda/src/eu/kanade/tachiyomi/extension/es/bibliopanda/BiblioPanda.kt b/src/es/bibliopanda/src/eu/kanade/tachiyomi/extension/es/bibliopanda/BiblioPanda.kt new file mode 100644 index 000000000..15063fcdb --- /dev/null +++ b/src/es/bibliopanda/src/eu/kanade/tachiyomi/extension/es/bibliopanda/BiblioPanda.kt @@ -0,0 +1,21 @@ +package eu.kanade.tachiyomi.extension.es.bibliopanda + +import eu.kanade.tachiyomi.multisrc.madara.Madara +import eu.kanade.tachiyomi.network.interceptor.rateLimit +import java.text.SimpleDateFormat +import java.util.Locale + +class BiblioPanda : Madara( + "Biblio Panda", + "https://bibliopanda.com", + "es", + SimpleDateFormat("MMMM dd, yyyy", Locale("es")), +) { + override val client = super.client.newBuilder() + .rateLimit(3) + .build() + + override val useNewChapterEndpoint = true + + override val useLoadMoreRequest = LoadMoreStrategy.Never +} diff --git a/src/es/codexzero/build.gradle b/src/es/codexzero/build.gradle new file mode 100644 index 000000000..ea89fbbd7 --- /dev/null +++ b/src/es/codexzero/build.gradle @@ -0,0 +1,10 @@ +ext { + extName = 'Codex Zero' + extClass = '.CodexZero' + themePkg = 'madara' + baseUrl = 'https://codexzero.me' + overrideVersionCode = 0 + isNsfw = false +} + +apply from: "$rootDir/common.gradle" diff --git a/src/es/codexzero/res/mipmap-hdpi/ic_launcher.png b/src/es/codexzero/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 000000000..7a398a567 Binary files /dev/null and b/src/es/codexzero/res/mipmap-hdpi/ic_launcher.png differ diff --git a/src/es/codexzero/res/mipmap-mdpi/ic_launcher.png b/src/es/codexzero/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 000000000..01c6455ae Binary files /dev/null and b/src/es/codexzero/res/mipmap-mdpi/ic_launcher.png differ diff --git a/src/es/codexzero/res/mipmap-xhdpi/ic_launcher.png b/src/es/codexzero/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 000000000..03b0988d9 Binary files /dev/null and b/src/es/codexzero/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/src/es/codexzero/res/mipmap-xxhdpi/ic_launcher.png b/src/es/codexzero/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 000000000..b31618530 Binary files /dev/null and b/src/es/codexzero/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/src/es/codexzero/res/mipmap-xxxhdpi/ic_launcher.png b/src/es/codexzero/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 000000000..de59ebcb2 Binary files /dev/null and b/src/es/codexzero/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/src/es/codexzero/src/eu/kanade/tachiyomi/extension/es/codexzero/CodexZero.kt b/src/es/codexzero/src/eu/kanade/tachiyomi/extension/es/codexzero/CodexZero.kt new file mode 100644 index 000000000..086651fbe --- /dev/null +++ b/src/es/codexzero/src/eu/kanade/tachiyomi/extension/es/codexzero/CodexZero.kt @@ -0,0 +1,21 @@ +package eu.kanade.tachiyomi.extension.es.codexzero + +import eu.kanade.tachiyomi.multisrc.madara.Madara +import eu.kanade.tachiyomi.network.interceptor.rateLimit +import java.text.SimpleDateFormat +import java.util.Locale + +class CodexZero : Madara( + "Codex Zero", + "https://codexzero.me", + "es", + SimpleDateFormat("dd/MM/yyyy", Locale.ROOT), +) { + override val client = super.client.newBuilder() + .rateLimit(3) + .build() + + override val useNewChapterEndpoint = true + + override val useLoadMoreRequest = LoadMoreStrategy.Always +} diff --git a/src/pt/kamitoon/build.gradle b/src/pt/kamitoon/build.gradle new file mode 100644 index 000000000..bc46167c0 --- /dev/null +++ b/src/pt/kamitoon/build.gradle @@ -0,0 +1,10 @@ +ext { + extName = 'Kami Toon' + extClass = '.KamiToon' + themePkg = 'madara' + baseUrl = 'https://kamitoon.com.br' + overrideVersionCode = 0 + isNsfw = true +} + +apply from: "$rootDir/common.gradle" diff --git a/src/pt/kamitoon/res/mipmap-hdpi/ic_launcher.png b/src/pt/kamitoon/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 000000000..c4d89a3d5 Binary files /dev/null and b/src/pt/kamitoon/res/mipmap-hdpi/ic_launcher.png differ diff --git a/src/pt/kamitoon/res/mipmap-mdpi/ic_launcher.png b/src/pt/kamitoon/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 000000000..ab35e76cd Binary files /dev/null and b/src/pt/kamitoon/res/mipmap-mdpi/ic_launcher.png differ diff --git a/src/pt/kamitoon/res/mipmap-xhdpi/ic_launcher.png b/src/pt/kamitoon/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 000000000..d0abc7a74 Binary files /dev/null and b/src/pt/kamitoon/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/src/pt/kamitoon/res/mipmap-xxhdpi/ic_launcher.png b/src/pt/kamitoon/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 000000000..e5c388643 Binary files /dev/null and b/src/pt/kamitoon/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/src/pt/kamitoon/res/mipmap-xxxhdpi/ic_launcher.png b/src/pt/kamitoon/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 000000000..7df27ceda Binary files /dev/null and b/src/pt/kamitoon/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/src/pt/kamitoon/src/eu/kanade/tachiyomi/extension/pt/kamitoon/KamiToon.kt b/src/pt/kamitoon/src/eu/kanade/tachiyomi/extension/pt/kamitoon/KamiToon.kt new file mode 100644 index 000000000..9c4d326ad --- /dev/null +++ b/src/pt/kamitoon/src/eu/kanade/tachiyomi/extension/pt/kamitoon/KamiToon.kt @@ -0,0 +1,21 @@ +package eu.kanade.tachiyomi.extension.pt.kamitoon + +import eu.kanade.tachiyomi.multisrc.madara.Madara +import eu.kanade.tachiyomi.network.interceptor.rateLimit +import java.text.SimpleDateFormat +import java.util.Locale + +class KamiToon : Madara( + "Kami Toon", + "https://kamitoon.com.br", + "pt-BR", + SimpleDateFormat("dd 'de' MMM 'de' yyyy", Locale("pt", "BR")), +) { + override val client = super.client.newBuilder() + .rateLimit(3) + .build() + + override val useNewChapterEndpoint = true + + override val useLoadMoreRequest = LoadMoreStrategy.Never +}