diff --git a/src/es/sapphirescan/build.gradle b/src/es/sapphirescan/build.gradle new file mode 100644 index 000000000..7009ea280 --- /dev/null +++ b/src/es/sapphirescan/build.gradle @@ -0,0 +1,9 @@ +ext { + extName = 'SapphireScan' + extClass = '.SapphireScan' + themePkg = 'madara' + baseUrl = 'https://sapphirescan.com' + overrideVersionCode = 0 +} + +apply from: "$rootDir/common.gradle" diff --git a/src/es/sapphirescan/res/mipmap-hdpi/ic_launcher.png b/src/es/sapphirescan/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 000000000..db9835957 Binary files /dev/null and b/src/es/sapphirescan/res/mipmap-hdpi/ic_launcher.png differ diff --git a/src/es/sapphirescan/res/mipmap-mdpi/ic_launcher.png b/src/es/sapphirescan/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 000000000..8ffcd2ee0 Binary files /dev/null and b/src/es/sapphirescan/res/mipmap-mdpi/ic_launcher.png differ diff --git a/src/es/sapphirescan/res/mipmap-xhdpi/ic_launcher.png b/src/es/sapphirescan/res/mipmap-xhdpi/ic_launcher.png new file mode 100644 index 000000000..656795fae Binary files /dev/null and b/src/es/sapphirescan/res/mipmap-xhdpi/ic_launcher.png differ diff --git a/src/es/sapphirescan/res/mipmap-xxhdpi/ic_launcher.png b/src/es/sapphirescan/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 000000000..cafab837d Binary files /dev/null and b/src/es/sapphirescan/res/mipmap-xxhdpi/ic_launcher.png differ diff --git a/src/es/sapphirescan/res/mipmap-xxxhdpi/ic_launcher.png b/src/es/sapphirescan/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 000000000..6587f35bc Binary files /dev/null and b/src/es/sapphirescan/res/mipmap-xxxhdpi/ic_launcher.png differ diff --git a/src/es/sapphirescan/src/eu/kanade/tachiyomi/extension/es/sapphirescan/SapphireScan.kt b/src/es/sapphirescan/src/eu/kanade/tachiyomi/extension/es/sapphirescan/SapphireScan.kt new file mode 100644 index 000000000..597dfa447 --- /dev/null +++ b/src/es/sapphirescan/src/eu/kanade/tachiyomi/extension/es/sapphirescan/SapphireScan.kt @@ -0,0 +1,45 @@ +package eu.kanade.tachiyomi.extension.es.sapphirescan + +import eu.kanade.tachiyomi.multisrc.madara.Madara +import eu.kanade.tachiyomi.network.interceptor.rateLimitHost +import eu.kanade.tachiyomi.source.model.Page +import eu.kanade.tachiyomi.source.model.SChapter +import okhttp3.HttpUrl.Companion.toHttpUrl +import org.jsoup.nodes.Document +import org.jsoup.nodes.Element +import java.text.SimpleDateFormat +import java.util.Locale + +class SapphireScan : Madara( + "SapphireScan", + "https://sapphirescan.com", + "es", + SimpleDateFormat("MMMM dd, yyyy", Locale("es")), +) { + override val client = super.client.newBuilder() + .rateLimitHost(baseUrl.toHttpUrl(), 3) + .build() + + override val useNewChapterEndpoint = true + override val useLoadMoreRequest = LoadMoreStrategy.Always + + override fun chapterFromElement(element: Element): SChapter { + return super.chapterFromElement(element).apply { + if (element.select("span.required-login").isNotEmpty()) { + name = "šŸ”’ $name" + } + } + } + + override fun pageListParse(document: Document): List { + val pageList = super.pageListParse(document) + + if ( + pageList.isEmpty() && + document.select(".content-blocked, .login-required").isNotEmpty() + ) { + throw Exception("Inicie sesión en WebView para ver este capĆ­tulo") + } + return pageList + } +}