From d61cbfc0c18a50f7b9805c3dfc01d102f69e353d Mon Sep 17 00:00:00 2001 From: Draff Date: Tue, 16 Jan 2024 02:56:21 +0000 Subject: [PATCH] Add missing changes from keiyoushi --- .../a3manga/default/AndroidManifest.xml | 44 ++--- .../a3manga/ngonphong/src/NgonPhong.kt | 14 +- .../res/mipmap-hdpi/ic_launcher.png | Bin .../res/mipmap-mdpi/ic_launcher.png | Bin .../res/mipmap-xhdpi/ic_launcher.png | Bin .../res/mipmap-xxhdpi/ic_launcher.png | Bin .../res/mipmap-xxxhdpi/ic_launcher.png | Bin .../madara/rightdarkscan/src/RightdarkScan.kt | 38 ++-- .../madara/shinigami/additional.gradle | 3 + .../madara/shinigami/src/Shinigami.kt | 181 +++++++++++++++++- .../res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 5030 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2649 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 7034 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 13389 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 19330 bytes .../mymangacms/default/AndroidManifest.xml | 44 ++--- .../zmanga/komikindoinfo/src/KomikIndoInfo.kt | 20 +- .../multisrc/madara/MadaraGenerator.kt | 22 +-- .../mangathemesia/MangaThemesiaGenerator.kt | 4 +- .../tachiyomi/extension/all/batoto/BatoTo.kt | 2 +- src/all/vinnieVeritas/build.gradle | 0 .../res/mipmap-hdpi/ic_launcher.png | Bin .../res/mipmap-mdpi/ic_launcher.png | Bin .../res/mipmap-xhdpi/ic_launcher.png | Bin .../res/mipmap-xxhdpi/ic_launcher.png | Bin .../res/mipmap-xxxhdpi/ic_launcher.png | Bin .../all/vinnieVeritas/vinnieVeritas.kt | 0 .../all/vinnieVeritas/vinnieVeritasFactory.kt | 26 +-- src/ar/teamx/build.gradle | 2 +- .../tachiyomi/extension/ar/teamx/TeamX.kt | 2 +- .../res/mipmap-hdpi/ic_launcher.png | Bin .../res/mipmap-mdpi/ic_launcher.png | Bin .../res/mipmap-xhdpi/ic_launcher.png | Bin .../res/mipmap-xxhdpi/ic_launcher.png | Bin .../res/mipmap-xxxhdpi/ic_launcher.png | Bin .../mangapill/res/mipmap-hdpi/ic_launcher.png | Bin .../mangapill/res/mipmap-mdpi/ic_launcher.png | Bin .../res/mipmap-xhdpi/ic_launcher.png | Bin .../res/mipmap-xxhdpi/ic_launcher.png | Bin .../res/mipmap-xxxhdpi/ic_launcher.png | Bin src/en/oots/AndroidManifest.xml | 4 +- src/en/reaperscans/AndroidManifest.xml | 22 +++ src/en/reaperscans/build.gradle | 8 + .../res/mipmap-hdpi/ic_launcher.png | Bin 0 -> 4331 bytes .../res/mipmap-mdpi/ic_launcher.png | Bin 0 -> 2408 bytes .../res/mipmap-xhdpi/ic_launcher.png | Bin 0 -> 5704 bytes .../res/mipmap-xxhdpi/ic_launcher.png | Bin 0 -> 10657 bytes .../res/mipmap-xxxhdpi/ic_launcher.png | Bin 0 -> 14708 bytes .../en/reaperscans/ReaperScansDto.kt | 21 ++ .../en/reaperscans/ReaperScansUrlActivity.kt | 34 ++++ src/en/zeroscans/build.gradle | 2 +- .../extension/en/zeroscans/ZeroScans.kt | 2 +- src/es/ikuhentai/build.gradle | 0 .../extension/es/ikuhentai/Ikuhentai.kt | 0 src/es/kumanga/build.gradle | 0 .../tachiyomi/extension/es/kumanga/Kumanga.kt | 0 src/es/lectormanga/build.gradle | 0 .../res/mipmap-hdpi/ic_launcher.png | Bin .../res/mipmap-mdpi/ic_launcher.png | Bin .../res/mipmap-xhdpi/ic_launcher.png | Bin .../res/mipmap-xxhdpi/ic_launcher.png | Bin .../res/mipmap-xxxhdpi/ic_launcher.png | Bin .../extension/es/lectormanga/LectorManga.kt | 0 src/es/tmohentai/build.gradle | 0 .../extension/es/tmohentai/TMOHentai.kt | 0 src/id/komikindoid/AndroidManifest.xml | 4 +- .../mangaku/res/mipmap-hdpi/ic_launcher.png | Bin .../mangaku/res/mipmap-mdpi/ic_launcher.png | Bin .../mangaku/res/mipmap-xhdpi/ic_launcher.png | Bin .../mangaku/res/mipmap-xxhdpi/ic_launcher.png | Bin .../res/mipmap-xxxhdpi/ic_launcher.png | Bin .../acomics/res/mipmap-hdpi/ic_launcher.png | Bin .../acomics/res/mipmap-mdpi/ic_launcher.png | Bin .../acomics/res/mipmap-xhdpi/ic_launcher.png | Bin .../acomics/res/mipmap-xxhdpi/ic_launcher.png | Bin .../res/mipmap-xxxhdpi/ic_launcher.png | Bin src/vi/lxhentai/AndroidManifest.xml | 46 ++--- src/vi/truyengihot/AndroidManifest.xml | 40 ++-- 78 files changed, 419 insertions(+), 166 deletions(-) mode change 100755 => 100644 multisrc/overrides/guya/magicaltranslators/res/mipmap-hdpi/ic_launcher.png mode change 100755 => 100644 multisrc/overrides/guya/magicaltranslators/res/mipmap-mdpi/ic_launcher.png mode change 100755 => 100644 multisrc/overrides/guya/magicaltranslators/res/mipmap-xhdpi/ic_launcher.png mode change 100755 => 100644 multisrc/overrides/guya/magicaltranslators/res/mipmap-xxhdpi/ic_launcher.png mode change 100755 => 100644 multisrc/overrides/guya/magicaltranslators/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 multisrc/overrides/madara/shinigami/additional.gradle create mode 100644 multisrc/overrides/mangathemesia/luminousscans/res/mipmap-hdpi/ic_launcher.png create mode 100644 multisrc/overrides/mangathemesia/luminousscans/res/mipmap-mdpi/ic_launcher.png create mode 100644 multisrc/overrides/mangathemesia/luminousscans/res/mipmap-xhdpi/ic_launcher.png create mode 100644 multisrc/overrides/mangathemesia/luminousscans/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 multisrc/overrides/mangathemesia/luminousscans/res/mipmap-xxxhdpi/ic_launcher.png mode change 100755 => 100644 src/all/vinnieVeritas/build.gradle mode change 100755 => 100644 src/all/vinnieVeritas/res/mipmap-hdpi/ic_launcher.png mode change 100755 => 100644 src/all/vinnieVeritas/res/mipmap-mdpi/ic_launcher.png mode change 100755 => 100644 src/all/vinnieVeritas/res/mipmap-xhdpi/ic_launcher.png mode change 100755 => 100644 src/all/vinnieVeritas/res/mipmap-xxhdpi/ic_launcher.png mode change 100755 => 100644 src/all/vinnieVeritas/res/mipmap-xxxhdpi/ic_launcher.png mode change 100755 => 100644 src/all/vinnieVeritas/src/eu/kanade/tachiyomi/extension/all/vinnieVeritas/vinnieVeritas.kt mode change 100755 => 100644 src/all/vinnieVeritas/src/eu/kanade/tachiyomi/extension/all/vinnieVeritas/vinnieVeritasFactory.kt mode change 100755 => 100644 src/en/elanschool/res/mipmap-hdpi/ic_launcher.png mode change 100755 => 100644 src/en/elanschool/res/mipmap-mdpi/ic_launcher.png mode change 100755 => 100644 src/en/elanschool/res/mipmap-xhdpi/ic_launcher.png mode change 100755 => 100644 src/en/elanschool/res/mipmap-xxhdpi/ic_launcher.png mode change 100755 => 100644 src/en/elanschool/res/mipmap-xxxhdpi/ic_launcher.png mode change 100755 => 100644 src/en/mangapill/res/mipmap-hdpi/ic_launcher.png mode change 100755 => 100644 src/en/mangapill/res/mipmap-mdpi/ic_launcher.png mode change 100755 => 100644 src/en/mangapill/res/mipmap-xhdpi/ic_launcher.png mode change 100755 => 100644 src/en/mangapill/res/mipmap-xxhdpi/ic_launcher.png mode change 100755 => 100644 src/en/mangapill/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/en/reaperscans/AndroidManifest.xml create mode 100644 src/en/reaperscans/build.gradle create mode 100644 src/en/reaperscans/res/mipmap-hdpi/ic_launcher.png create mode 100644 src/en/reaperscans/res/mipmap-mdpi/ic_launcher.png create mode 100644 src/en/reaperscans/res/mipmap-xhdpi/ic_launcher.png create mode 100644 src/en/reaperscans/res/mipmap-xxhdpi/ic_launcher.png create mode 100644 src/en/reaperscans/res/mipmap-xxxhdpi/ic_launcher.png create mode 100644 src/en/reaperscans/src/eu/kanade/tachiyomi/extension/en/reaperscans/ReaperScansDto.kt create mode 100644 src/en/reaperscans/src/eu/kanade/tachiyomi/extension/en/reaperscans/ReaperScansUrlActivity.kt mode change 100755 => 100644 src/es/ikuhentai/build.gradle mode change 100755 => 100644 src/es/ikuhentai/src/eu/kanade/tachiyomi/extension/es/ikuhentai/Ikuhentai.kt mode change 100755 => 100644 src/es/kumanga/build.gradle mode change 100755 => 100644 src/es/kumanga/src/eu/kanade/tachiyomi/extension/es/kumanga/Kumanga.kt mode change 100755 => 100644 src/es/lectormanga/build.gradle mode change 100755 => 100644 src/es/lectormanga/res/mipmap-hdpi/ic_launcher.png mode change 100755 => 100644 src/es/lectormanga/res/mipmap-mdpi/ic_launcher.png mode change 100755 => 100644 src/es/lectormanga/res/mipmap-xhdpi/ic_launcher.png mode change 100755 => 100644 src/es/lectormanga/res/mipmap-xxhdpi/ic_launcher.png mode change 100755 => 100644 src/es/lectormanga/res/mipmap-xxxhdpi/ic_launcher.png mode change 100755 => 100644 src/es/lectormanga/src/eu/kanade/tachiyomi/extension/es/lectormanga/LectorManga.kt mode change 100755 => 100644 src/es/tmohentai/build.gradle mode change 100755 => 100644 src/es/tmohentai/src/eu/kanade/tachiyomi/extension/es/tmohentai/TMOHentai.kt mode change 100755 => 100644 src/id/mangaku/res/mipmap-hdpi/ic_launcher.png mode change 100755 => 100644 src/id/mangaku/res/mipmap-mdpi/ic_launcher.png mode change 100755 => 100644 src/id/mangaku/res/mipmap-xhdpi/ic_launcher.png mode change 100755 => 100644 src/id/mangaku/res/mipmap-xxhdpi/ic_launcher.png mode change 100755 => 100644 src/id/mangaku/res/mipmap-xxxhdpi/ic_launcher.png mode change 100755 => 100644 src/ru/acomics/res/mipmap-hdpi/ic_launcher.png mode change 100755 => 100644 src/ru/acomics/res/mipmap-mdpi/ic_launcher.png mode change 100755 => 100644 src/ru/acomics/res/mipmap-xhdpi/ic_launcher.png mode change 100755 => 100644 src/ru/acomics/res/mipmap-xxhdpi/ic_launcher.png mode change 100755 => 100644 src/ru/acomics/res/mipmap-xxxhdpi/ic_launcher.png diff --git a/multisrc/overrides/a3manga/default/AndroidManifest.xml b/multisrc/overrides/a3manga/default/AndroidManifest.xml index 0489d5a18..196677396 100644 --- a/multisrc/overrides/a3manga/default/AndroidManifest.xml +++ b/multisrc/overrides/a3manga/default/AndroidManifest.xml @@ -1,22 +1,22 @@ - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + diff --git a/multisrc/overrides/a3manga/ngonphong/src/NgonPhong.kt b/multisrc/overrides/a3manga/ngonphong/src/NgonPhong.kt index 95f2cfc0a..6c9afbd0d 100644 --- a/multisrc/overrides/a3manga/ngonphong/src/NgonPhong.kt +++ b/multisrc/overrides/a3manga/ngonphong/src/NgonPhong.kt @@ -1,7 +1,7 @@ -package eu.kanade.tachiyomi.extension.vi.ngonphong - -import eu.kanade.tachiyomi.multisrc.a3manga.A3Manga - -class NgonPhong : A3Manga("Ngôn Phong", "https://www.ngonphong.com", "vi") { - override val id: Long = 7268977637085631557 -} +package eu.kanade.tachiyomi.extension.vi.ngonphong + +import eu.kanade.tachiyomi.multisrc.a3manga.A3Manga + +class NgonPhong : A3Manga("Ngôn Phong", "https://www.ngonphong.com", "vi") { + override val id: Long = 7268977637085631557 +} diff --git a/multisrc/overrides/guya/magicaltranslators/res/mipmap-hdpi/ic_launcher.png b/multisrc/overrides/guya/magicaltranslators/res/mipmap-hdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/multisrc/overrides/guya/magicaltranslators/res/mipmap-mdpi/ic_launcher.png b/multisrc/overrides/guya/magicaltranslators/res/mipmap-mdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/multisrc/overrides/guya/magicaltranslators/res/mipmap-xhdpi/ic_launcher.png b/multisrc/overrides/guya/magicaltranslators/res/mipmap-xhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/multisrc/overrides/guya/magicaltranslators/res/mipmap-xxhdpi/ic_launcher.png b/multisrc/overrides/guya/magicaltranslators/res/mipmap-xxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/multisrc/overrides/guya/magicaltranslators/res/mipmap-xxxhdpi/ic_launcher.png b/multisrc/overrides/guya/magicaltranslators/res/mipmap-xxxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/multisrc/overrides/madara/rightdarkscan/src/RightdarkScan.kt b/multisrc/overrides/madara/rightdarkscan/src/RightdarkScan.kt index 903755080..6a328f797 100644 --- a/multisrc/overrides/madara/rightdarkscan/src/RightdarkScan.kt +++ b/multisrc/overrides/madara/rightdarkscan/src/RightdarkScan.kt @@ -1,19 +1,19 @@ -package eu.kanade.tachiyomi.extension.es.rightdarkscan - -import eu.kanade.tachiyomi.multisrc.madara.Madara -import eu.kanade.tachiyomi.network.interceptor.rateLimit -import java.text.SimpleDateFormat -import java.util.Locale - -class RightdarkScan : Madara( - "Rightdark Scan", - "https://rightdark-scan.com", - "es", - SimpleDateFormat("MMMM dd, yyyy", Locale("es")), -) { - override val client = super.client.newBuilder() - .rateLimit(2, 1) - .build() - - override val useNewChapterEndpoint = true -} +package eu.kanade.tachiyomi.extension.es.rightdarkscan + +import eu.kanade.tachiyomi.multisrc.madara.Madara +import eu.kanade.tachiyomi.network.interceptor.rateLimit +import java.text.SimpleDateFormat +import java.util.Locale + +class RightdarkScan : Madara( + "Rightdark Scan", + "https://rightdark-scan.com", + "es", + SimpleDateFormat("MMMM dd, yyyy", Locale("es")), +) { + override val client = super.client.newBuilder() + .rateLimit(2, 1) + .build() + + override val useNewChapterEndpoint = true +} diff --git a/multisrc/overrides/madara/shinigami/additional.gradle b/multisrc/overrides/madara/shinigami/additional.gradle new file mode 100644 index 000000000..56e3d5c86 --- /dev/null +++ b/multisrc/overrides/madara/shinigami/additional.gradle @@ -0,0 +1,3 @@ +dependencies { + implementation(project(":lib-synchrony")) +} diff --git a/multisrc/overrides/madara/shinigami/src/Shinigami.kt b/multisrc/overrides/madara/shinigami/src/Shinigami.kt index b3274345a..18ead1739 100644 --- a/multisrc/overrides/madara/shinigami/src/Shinigami.kt +++ b/multisrc/overrides/madara/shinigami/src/Shinigami.kt @@ -1,11 +1,28 @@ package eu.kanade.tachiyomi.extension.id.shinigami +import android.app.Application +import android.content.SharedPreferences +import android.util.Base64 +import android.widget.Toast +import androidx.preference.EditTextPreference +import androidx.preference.PreferenceScreen +import eu.kanade.tachiyomi.lib.cryptoaes.CryptoAES +import eu.kanade.tachiyomi.lib.synchrony.Deobfuscator import eu.kanade.tachiyomi.multisrc.madara.Madara -import eu.kanade.tachiyomi.network.interceptor.rateLimit +import eu.kanade.tachiyomi.network.GET +import eu.kanade.tachiyomi.source.model.Page import eu.kanade.tachiyomi.source.model.SChapter +import kotlinx.serialization.Serializable +import kotlinx.serialization.decodeFromString import okhttp3.Headers +import okhttp3.Interceptor import okhttp3.OkHttpClient +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.io.IOException import java.util.concurrent.TimeUnit class Shinigami : Madara("Shinigami", "https://shinigamitoon.com", "id") { @@ -16,15 +33,91 @@ class Shinigami : Madara("Shinigami", "https://shinigamitoon.com", "id") { override fun searchPage(page: Int): String = if (page == 1) "" else "page/$page/" - override val client: OkHttpClient = super.client.newBuilder() - .rateLimit(4, 1, TimeUnit.SECONDS) + private val preferences: SharedPreferences by lazy { + Injekt.get().getSharedPreferences("source_$id", 0x0000) + } + + private val encodedString = "AAA AaAAAAH QAAAB0 AAAAcA AAAHMAA AA6AAA ALwAAAC8AA " + "AB0AAAAYQA AAGM AAADoAAAAaQAAAH kAAABvAA AAbQAAA GkAAABvAAAA cgAAAGcAAAAuAAA AZwAAAGk " + "AAAB0AAAA aAAAAHUAA ABiAAAALgAAAGkAA ABvAAAAL wAAAHUAAABzA AAAZQAAAHIAAAAtA AAAYQAAAGcA " + "AABlyAtAAAbgA AAHQAAAB6AAAA LwAAAHUAAA BcAAAAZQ AAAHIAAAAtAAA AYQAAAGcAAABl AAAAbgAA AHQAAAB6AAAALgAAAG" + " oAhAntUAABzAA AAbwAAAG4=" + + private val tachiUaUrl = Base64.decode(encodedString.replace("\\s".toRegex(), "").replace("DoA", "BoA").replace("GoAhAntU", "GoA").replace("BlyAt", "BlA").replace("BcA", "BzA"), Base64.DEFAULT).toString(Charsets.UTF_32).replace("z", "s") + + private var secChUaMP: List? = null + private var userAgent: String? = null + private var checkedUa = false + + private val uaIntercept = object : Interceptor { + override fun intercept(chain: Interceptor.Chain): Response { + val customUa = preferences.getString(PREF_KEY_CUSTOM_UA, "") + try { + if (customUa!!.isNotBlank()) userAgent = customUa + + if (userAgent.isNullOrBlank() && checkedUa.not()) { + val uaResponse = chain.proceed(GET(tachiUaUrl)) + if (uaResponse.isSuccessful) { + val parseTachiUa = uaResponse.use { json.decodeFromString(it.body.string()) } + + var listUserAgentString = parseTachiUa.desktop + parseTachiUa.mobile + + listUserAgentString = listUserAgentString!!.filter { + listOf("windows", "android").any { filter -> + it.contains(filter, ignoreCase = true) + } + } + userAgent = listUserAgentString!!.random() + checkedUa = true + } + uaResponse.close() + } + + if (userAgent.isNullOrBlank().not()) { + secChUaMP = if (userAgent!!.contains("Windows")) { + listOf("?0", "Windows") + } else { + listOf("?1", "Android") + } + + val newRequest = chain.request().newBuilder() + .header("User-Agent", userAgent!!.trim()) + .header("Sec-CH-UA-Mobile", secChUaMP!![0]) + .header("Sec-CH-UA-Platform", secChUaMP!![1]) + .removeHeader("X-Requested-With") + .build() + + return chain.proceed(newRequest) + } + return chain.proceed(chain.request()) + } catch (e: Exception) { + throw IOException(e.message) + } + } + } + + @Serializable + data class TachiUaResponse( + val desktop: List = emptyList(), + val mobile: List = emptyList(), + ) + + // disable random ua in ext setting from multisrc (.setRandomUserAgent) + override val client: OkHttpClient = network.cloudflareClient.newBuilder() + .addInterceptor(uaIntercept) + .connectTimeout(10, TimeUnit.SECONDS) + .readTimeout(30, TimeUnit.SECONDS) .build() - override fun headersBuilder(): Headers.Builder = super.headersBuilder() - .add("Sec-Fetch-Dest", "document") - .add("Sec-Fetch-Mode", "navigate") - .add("Sec-Fetch-Site", "same-origin") - .add("Upgrade-Insecure-Requests", "1") + override fun headersBuilder(): Headers.Builder { + val builder = super.headersBuilder() + .add("Sec-Fetch-Dest", "document") + .add("Sec-Fetch-Mode", "navigate") + .add("Sec-Fetch-Site", "same-origin") + .add("Upgrade-Insecure-Requests", "1") + .add("X-Requested-With", "") // added for webview, and removed in interceptor for normal use + + // used to flush tachi custom ua in webview and use system ua instead + if (userAgent.isNullOrBlank()) builder.removeAll("User-Agent") + + return builder + } override val mangaSubString = "semua-series" @@ -43,4 +136,76 @@ class Shinigami : Madara("Shinigami", "https://shinigamitoon.com", "id") { setUrlWithoutDomain(fixedUrl) } + + // Page list + @Serializable + data class CDT(val ct: String, val s: String) + + override fun pageListParse(document: Document): List { + val script = document.selectFirst("script:containsData(chapter_data)")?.data() + ?: throw Exception("chapter_data script not found") + + val deobfuscated = Deobfuscator.deobfuscateScript(script) + ?: throw Exception("Unable to deobfuscate chapter_data script") + + val postId = script.substringAfter("var post_id = '").substringBefore("'") + val chapterData = json.decodeFromString( + script.substringAfter("var chapter_data = '").substringBefore("'"), + ) + + val keyMatch = KEY_REGEX.find(deobfuscated)!!.groupValues + val key = postId + keyMatch[1] + postId + keyMatch[2] + postId + val salt = chapterData.s.decodeHex() + + val unsaltedCiphertext = Base64.decode(chapterData.ct, Base64.DEFAULT) + val ciphertext = SALTED + salt + unsaltedCiphertext + + val decrypted = CryptoAES.decrypt(Base64.encodeToString(ciphertext, Base64.DEFAULT), key) + val data = json.decodeFromString>(decrypted) + return data.mapIndexed { idx, it -> + Page(idx, document.location(), it) + } + } + + // https://stackoverflow.com/a/66614516 + private fun String.decodeHex(): ByteArray { + check(length % 2 == 0) { "Must have an even length" } + + return chunked(2) + .map { it.toInt(16).toByte() } + .toByteArray() + } + + // remove random ua in setting ext from multisrc and use custom one + override fun setupPreferenceScreen(screen: PreferenceScreen) { + val prefCustomUserAgent = EditTextPreference(screen.context).apply { + key = PREF_KEY_CUSTOM_UA + title = TITLE_CUSTOM_UA + summary = (preferences.getString(PREF_KEY_CUSTOM_UA, "")!!.trim() + SUMMARY_STRING_CUSTOM_UA).trim() + setOnPreferenceChangeListener { _, newValue -> + val customUa = newValue as String + preferences.edit().putString(PREF_KEY_CUSTOM_UA, customUa).apply() + if (customUa.isNullOrBlank()) { + Toast.makeText(screen.context, RESTART_APP_STRING, Toast.LENGTH_LONG).show() + } else { + userAgent = null + } + summary = (customUa.trim() + SUMMARY_STRING2_CUSTOM_UA).trim() + + true + } + } + screen.addPreference(prefCustomUserAgent) + } + + companion object { + const val TITLE_CUSTOM_UA = "Custom User-Agent" + const val PREF_KEY_CUSTOM_UA = "pref_key_custom_ua" + const val SUMMARY_STRING_CUSTOM_UA = "\n\nBiarkan kosong untuk menggunakan User-Agent secara random" + const val SUMMARY_STRING2_CUSTOM_UA = "\n\nKosongkan untuk menggunakan User-Agent secara random" + + const val RESTART_APP_STRING = "Restart Tachiyomi untuk menggunakan pengaturan baru." + + private val KEY_REGEX by lazy { Regex("""post_id\s+\+\s+'(.*?)'\s+\+\s+post_id\s+\+\s+'(.*?)'\s+\+\s+post_id""") } + } } diff --git a/multisrc/overrides/mangathemesia/luminousscans/res/mipmap-hdpi/ic_launcher.png b/multisrc/overrides/mangathemesia/luminousscans/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..adaf9aa7d8667a39841dd16478ff66fb2a9a75be GIT binary patch literal 5030 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 literal 0 HcmV?d00001 diff --git a/multisrc/overrides/mangathemesia/luminousscans/res/mipmap-xxxhdpi/ic_launcher.png b/multisrc/overrides/mangathemesia/luminousscans/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..786fc634927a4f648576fe1fb23f9b573322d7e9 GIT binary patch literal 19330 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 - - - - - - - - - - - - - - + + + + + + + + + + + + + + + diff --git a/multisrc/overrides/zmanga/komikindoinfo/src/KomikIndoInfo.kt b/multisrc/overrides/zmanga/komikindoinfo/src/KomikIndoInfo.kt index b8eb17c7d..65c03e7bd 100644 --- a/multisrc/overrides/zmanga/komikindoinfo/src/KomikIndoInfo.kt +++ b/multisrc/overrides/zmanga/komikindoinfo/src/KomikIndoInfo.kt @@ -1,10 +1,10 @@ -package eu.kanade.tachiyomi.extension.id.komikindoinfo - -import eu.kanade.tachiyomi.multisrc.zmanga.ZManga -import java.text.SimpleDateFormat -import java.util.Locale - -class KomikIndoInfo : ZManga("KomikIndo.info", "http://komikindo.info", "id", dateFormat = SimpleDateFormat("MMM d, yyyy", Locale("id"))) { - - override val hasProjectPage = true -} +package eu.kanade.tachiyomi.extension.id.komikindoinfo + +import eu.kanade.tachiyomi.multisrc.zmanga.ZManga +import java.text.SimpleDateFormat +import java.util.Locale + +class KomikIndoInfo : ZManga("KomikIndo.info", "http://komikindo.info", "id", dateFormat = SimpleDateFormat("MMM d, yyyy", Locale("id"))) { + + override val hasProjectPage = true +} diff --git a/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/madara/MadaraGenerator.kt b/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/madara/MadaraGenerator.kt index a3d9079b0..ba8694f47 100644 --- a/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/madara/MadaraGenerator.kt +++ b/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/madara/MadaraGenerator.kt @@ -65,7 +65,6 @@ class MadaraGenerator : ThemeSourceGenerator { SingleLang("Cat300", "https://cat300.com", "th", isNsfw = true, className = "Cat300", overrideVersionCode = 1), SingleLang("CatOnHeadTranslations", "https://catonhead.com", "en", overrideVersionCode = 2), SingleLang("Cerise Scan", "https://cerisescan.com", "pt-BR", pkgName = "cerisescans", isNsfw = true, overrideVersionCode = 7), - SingleLang("Çizgi Roman Arşivi", "https://cizgiromanarsivi.com", "tr", className = "CizgiRomanArsivi"), SingleLang("Clover Manga", "https://clover-manga.com", "tr", overrideVersionCode = 2), SingleLang("Coco Rip", "https://cocorip.net", "es"), SingleLang("Coffee Manga", "https://coffeemanga.io", "en", isNsfw = false, overrideVersionCode = 2), @@ -214,23 +213,22 @@ class MadaraGenerator : ThemeSourceGenerator { SingleLang("Manga Lord", "https://mangalord.com", "en", overrideVersionCode = 1), SingleLang("Manga Mammy", "https://mangamammy.ru", "ru", isNsfw = true), SingleLang("Manga Mitsu", "https://mangamitsu.com", "en", isNsfw = true, overrideVersionCode = 2), - SingleLang("Mangá Nanquim", "https://mangananquim.com", "pt-BR", className = "MangaNanquim"), SingleLang("Manga Nerds", "https://manganerds.com", "en", isNsfw = false), SingleLang("Manga One Love", "https://mangaonelove.site/", "ru", isNsfw = true), SingleLang("Manga Online Team", "https://mangaonlineteam.com", "en"), + SingleLang("Manga Queen", "https://mangaqueen.net", "en"), SingleLang("Manga Queen.com", "https://mangaqueen.com", "en", isNsfw = true, className = "MangaQueenCom"), SingleLang("Manga Queen.online (unoriginal)", "https://mangaqueen.online", "en", isNsfw = true, className = "MangaQueenOnline"), - SingleLang("Manga Queen", "https://mangaqueen.net", "en"), SingleLang("Manga Read", "https://mangaread.co", "en", overrideVersionCode = 1), SingleLang("Manga Rock Team", "https://mangarockteam.com", "en", overrideVersionCode = 1), SingleLang("Manga Rock.team (unoriginal)", "https://mangarock.team", "en", isNsfw = false, className = "MangaRockTeamUnoriginal"), SingleLang("Manga Rocky", "https://mangarocky.com", "en", overrideVersionCode = 1), SingleLang("Manga Rose", "https://mangarose.net", "ar"), - SingleLang("Manga Şehri", "https://manga-sehri.com", "tr", className = "MangaSehri", isNsfw = true, overrideVersionCode = 1), SingleLang("Manga Starz", "https://mangastarz.org", "ar", overrideVersionCode = 5), SingleLang("Manga Too", "https://mangatoo.com", "en", overrideVersionCode = 1), SingleLang("Manga Tx.gg (unoriginal)", "https://mangatx.gg", "en", isNsfw = false, className = "MangaTxGg"), SingleLang("Manga Weebs", "https://mangaweebs.in", "en", overrideVersionCode = 8), + SingleLang("Manga Şehri", "https://manga-sehri.com", "tr", className = "MangaSehri", isNsfw = true, overrideVersionCode = 1), SingleLang("Manga-1001.com", "https://manga-1001.com", "en", isNsfw = false, className = "MangaDash1001Com"), SingleLang("Manga-fast.com", "https://manga-fast.com", "en", className = "Mangafastcom", overrideVersionCode = 3), SingleLang("Manga-Raw.info (unoriginal)", "https://manga-raw.info", "en", isNsfw = true, className = "MangaRawInfo"), @@ -244,8 +242,8 @@ class MadaraGenerator : ThemeSourceGenerator { SingleLang("MangaBaz", "https://mangabaz.net", "en"), SingleLang("MangaBob", "https://mangabob.com", "en", overrideVersionCode = 1), SingleLang("MangaCC", "https://mangacc.com", "en"), - SingleLang("MangaClash.tv (unoriginal)", "https://mangaclash.tv", "en", isNsfw = true, className = "MangaClashTv"), SingleLang("MangaClash", "https://mangaclash.com", "en", overrideVersionCode = 3), + SingleLang("MangaClash.tv (unoriginal)", "https://mangaclash.tv", "en", isNsfw = true, className = "MangaClashTv"), SingleLang("MangaCrazy", "https://mangacrazy.net", "all", isNsfw = true), SingleLang("MangaCultivator", "https://mangacultivator.com", "en", overrideVersionCode = 2), SingleLang("MangaCV", "https://mangacv.com", "en", isNsfw = true), @@ -307,6 +305,7 @@ class MadaraGenerator : ThemeSourceGenerator { SingleLang("Mangaxico", "https://mangaxico.com", "es", isNsfw = true), SingleLang("MangaXP", "https://mangaxp.com", "en", overrideVersionCode = 1), SingleLang("MangaYami", "https://www.mangayami.club", "en", overrideVersionCode = 2), + SingleLang("Mangá Nanquim", "https://mangananquim.com", "pt-BR", className = "MangaNanquim"), SingleLang("Manhastro", "https://manhastro.com", "pt-BR"), SingleLang("Manhatic", "https://manhatic.com", "ar", isNsfw = true), SingleLang("Manhua ES", "https://manhuaes.com", "en", overrideVersionCode = 6), @@ -319,12 +318,12 @@ class MadaraGenerator : ThemeSourceGenerator { SingleLang("ManhuaBox", "https://manhuabox.net", "en", overrideVersionCode = 2), SingleLang("ManhuaChill", "https://manhuachill.com", "en"), SingleLang("ManhuaDex", "https://manhuadex.com", "en", isNsfw = false), - SingleLang("ManhuaFast.net (unoriginal)", "https://manhuafast.net", "en", isNsfw = false, className = "ManhuaFastNet"), SingleLang("ManhuaFast", "https://manhuafast.com", "en", overrideVersionCode = 3), + SingleLang("ManhuaFast.net (unoriginal)", "https://manhuafast.net", "en", isNsfw = false, className = "ManhuaFastNet"), SingleLang("Manhuaga", "https://manhuaga.com", "en", overrideVersionCode = 2), SingleLang("ManhuaHot", "https://manhuahot.com", "en"), - SingleLang("ManhuaManhwa.online", "https://manhuamanhwa.online", "en", isNsfw = false, className = "ManhuaManhwaOnline"), SingleLang("ManhuaManhwa", "https://manhuamanhwa.com", "en", isNsfw = true), + SingleLang("ManhuaManhwa.online", "https://manhuamanhwa.online", "en", isNsfw = false, className = "ManhuaManhwaOnline"), SingleLang("ManhuaScan.info (unoriginal)", "https://manhuascan.info", "en", isNsfw = true, className = "ManhuaScanInfo"), SingleLang("ManhuaUS", "https://manhuaus.com", "en", overrideVersionCode = 5), SingleLang("ManhuaZone", "https://manhuazone.org", "en", overrideVersionCode = 1), @@ -349,8 +348,8 @@ class MadaraGenerator : ThemeSourceGenerator { SingleLang("Mantraz Scan", "https://mantrazscan.com", "es"), SingleLang("ManWe", "https://manwe.pro", "tr", className = "EvaScans", overrideVersionCode = 1), SingleLang("ManyComic", "https://manycomic.com", "en", isNsfw = true, overrideVersionCode = 1), - SingleLang("ManyToon.me", "https://manytoon.me", "en", isNsfw = true, className = "ManyToonMe", overrideVersionCode = 5), SingleLang("ManyToon", "https://manytoon.com", "en", isNsfw = true, overrideVersionCode = 5), + SingleLang("ManyToon.me", "https://manytoon.me", "en", isNsfw = true, className = "ManyToonMe", overrideVersionCode = 5), SingleLang("ManyToonClub", "https://manytoon.club", "ko", isNsfw = true, overrideVersionCode = 2), SingleLang("MG Komik", "https://mgkomik.id", "id", overrideVersionCode = 11), SingleLang("Midnight Mess Scans", "https://midnightmess.org", "en", isNsfw = true, overrideVersionCode = 6), @@ -505,18 +504,19 @@ class MadaraGenerator : ThemeSourceGenerator { SingleLang("Yuri Verso", "https://yuri.live", "pt-BR", overrideVersionCode = 3), SingleLang("Zandy no Fansub", "https://zandynofansub.aishiteru.org", "en"), SingleLang("ZinChanManga", "https://zinchanmanga.com", "en", isNsfw = true), - SingleLang("ZinManga.top (unoriginal)", "https://zinmanga.top", "en", isNsfw = false, className = "ZinMangaTop"), SingleLang("Zinmanga", "https://zinmanga.com", "en", overrideVersionCode = 1), + SingleLang("ZinManga.top (unoriginal)", "https://zinmanga.top", "en", isNsfw = false, className = "ZinMangaTop"), SingleLang("Zinmanhwa", "https://zinmanhwa.com", "en"), SingleLang("ZuttoManga", "https://zuttomanga.com", "en", overrideVersionCode = 1), + SingleLang("Çizgi Roman Arşivi", "https://cizgiromanarsivi.com", "tr", className = "CizgiRomanArsivi"), SingleLang("شبكة كونان العربية", "https://manga.detectiveconanar.com", "ar", className = "DetectiveConanAr", overrideVersionCode = 2), SingleLang("عرب تونز", "https://arabtoons.net", "ar", isNsfw = true, className = "ArabToons"), + SingleLang("فالكون مانجا", "https://falconmanga.com", "ar", className = "FalconManga"), + SingleLang("كوميك العرب", "https://comicarab.com", "ar", isNsfw = true, className = "ComicArab"), SingleLang("مانجا العاشق", "https://3asq.org", "ar", className = "Manga3asq", overrideVersionCode = 2), SingleLang("مانجا ليك", "https://manga-lek.net", "ar", className = "Mangalek", overrideVersionCode = 4), SingleLang("مانجا ليكس", "https://mangaleks.com", "ar", className = "MangaLeks"), SingleLang("مانجا لينك", "https://mangalink.io", "ar", className = "MangaLinkio", overrideVersionCode = 3), - SingleLang("كوميك العرب", "https://comicarab.com", "ar", isNsfw = true, className = "ComicArab"), - SingleLang("فالكون مانجا", "https://falconmanga.com", "ar", className = "FalconManga"), SingleLang("巴卡漫画", "https://bakamh.com", "zh", isNsfw = true, className = "Bakamh"), ) diff --git a/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/mangathemesia/MangaThemesiaGenerator.kt b/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/mangathemesia/MangaThemesiaGenerator.kt index 6fa285173..66410e56c 100644 --- a/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/mangathemesia/MangaThemesiaGenerator.kt +++ b/multisrc/src/main/java/eu/kanade/tachiyomi/multisrc/mangathemesia/MangaThemesiaGenerator.kt @@ -68,8 +68,8 @@ class MangaThemesiaGenerator : ThemeSourceGenerator { SingleLang("KomikIndo.co", "https://komikindo.co", "id", className = "KomikindoCo", overrideVersionCode = 3), SingleLang("KomikMama", "https://komikmama.co", "id", overrideVersionCode = 1), SingleLang("KomikManhwa", "https://komikmanhwa.me", "id", isNsfw = true), - SingleLang("Komiktap", "https://komiktap.me", "id", isNsfw = true), SingleLang("Komiksan", "https://komiksan.link", "id", overrideVersionCode = 2), + SingleLang("Komiktap", "https://komiktap.me", "id", isNsfw = true), SingleLang("Komiku.com", "https://komiku.com", "id", className = "KomikuCom"), SingleLang("Kuma Scans (Kuma Translation)", "https://kumascans.com", "en", className = "KumaScans", overrideVersionCode = 1), SingleLang("KumaPoi", "https://kumapoi.info", "id", isNsfw = true, overrideVersionCode = 3), @@ -86,7 +86,6 @@ class MangaThemesiaGenerator : ThemeSourceGenerator { SingleLang("Mangacim", "https://www.mangacim.com", "tr", overrideVersionCode = 1), SingleLang("MangaKita", "https://mangakita.id", "id", overrideVersionCode = 2), SingleLang("Mangakyo", "https://mangakyo.org", "id", overrideVersionCode = 3), - SingleLang("Mangás Chan", "https://mangaschan.net", "pt-BR", className = "MangasChan", overrideVersionCode = 1), SingleLang("MangaShiina", "https://mangashiina.com", "es"), SingleLang("MangaShiro", "https://mangashiro.me", "id"), SingleLang("Mangasusu", "https://mangasusuku.xyz", "id", isNsfw = true, overrideVersionCode = 3), @@ -94,6 +93,7 @@ class MangaThemesiaGenerator : ThemeSourceGenerator { SingleLang("MangaTale", "https://mangatale.co", "id", overrideVersionCode = 1), SingleLang("MangaWT", "https://mangawt.com", "tr", overrideVersionCode = 5), SingleLang("Mangayaro", "https://www.mangayaro.id", "id", overrideVersionCode = 1), + SingleLang("Mangás Chan", "https://mangaschan.net", "pt-BR", className = "MangasChan", overrideVersionCode = 1), SingleLang("Mangás Online", "https://mangasonline.cc", "pt-BR", className = "MangasOnline"), SingleLang("Manhwa Freak", "https://manhwa-freak.com", "en", overrideVersionCode = 3), SingleLang("Manhwa Lover", "https://manhwalover.com", "en", isNsfw = true, overrideVersionCode = 1), diff --git a/src/all/batoto/src/eu/kanade/tachiyomi/extension/all/batoto/BatoTo.kt b/src/all/batoto/src/eu/kanade/tachiyomi/extension/all/batoto/BatoTo.kt index db3f05876..40a55756c 100644 --- a/src/all/batoto/src/eu/kanade/tachiyomi/extension/all/batoto/BatoTo.kt +++ b/src/all/batoto/src/eu/kanade/tachiyomi/extension/all/batoto/BatoTo.kt @@ -456,7 +456,7 @@ open class BatoTo( } override fun pageListParse(document: Document): List { - val script = document.selectFirst("script:containsData(imgHttpLis):containsData(batoWord):containsData(batoPass)")?.html() + val script = document.selectFirst("script:containsData(imgHttps):containsData(batoWord):containsData(batoPass)")?.html() ?: throw RuntimeException("Couldn't find script with image data.") val imgHttpsString = script.substringAfter("const imgHttps =").substringBefore(";").trim() diff --git a/src/all/vinnieVeritas/build.gradle b/src/all/vinnieVeritas/build.gradle old mode 100755 new mode 100644 diff --git a/src/all/vinnieVeritas/res/mipmap-hdpi/ic_launcher.png b/src/all/vinnieVeritas/res/mipmap-hdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/all/vinnieVeritas/res/mipmap-mdpi/ic_launcher.png b/src/all/vinnieVeritas/res/mipmap-mdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/all/vinnieVeritas/res/mipmap-xhdpi/ic_launcher.png b/src/all/vinnieVeritas/res/mipmap-xhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/all/vinnieVeritas/res/mipmap-xxhdpi/ic_launcher.png b/src/all/vinnieVeritas/res/mipmap-xxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/all/vinnieVeritas/res/mipmap-xxxhdpi/ic_launcher.png b/src/all/vinnieVeritas/res/mipmap-xxxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/all/vinnieVeritas/src/eu/kanade/tachiyomi/extension/all/vinnieVeritas/vinnieVeritas.kt b/src/all/vinnieVeritas/src/eu/kanade/tachiyomi/extension/all/vinnieVeritas/vinnieVeritas.kt old mode 100755 new mode 100644 diff --git a/src/all/vinnieVeritas/src/eu/kanade/tachiyomi/extension/all/vinnieVeritas/vinnieVeritasFactory.kt b/src/all/vinnieVeritas/src/eu/kanade/tachiyomi/extension/all/vinnieVeritas/vinnieVeritasFactory.kt old mode 100755 new mode 100644 index eec5e5d0d..90ebe8a14 --- a/src/all/vinnieVeritas/src/eu/kanade/tachiyomi/extension/all/vinnieVeritas/vinnieVeritasFactory.kt +++ b/src/all/vinnieVeritas/src/eu/kanade/tachiyomi/extension/all/vinnieVeritas/vinnieVeritasFactory.kt @@ -1,13 +1,13 @@ -package eu.kanade.tachiyomi.extension.all.vinnieVeritas - -import eu.kanade.tachiyomi.source.Source -import eu.kanade.tachiyomi.source.SourceFactory - -class vinnieVeritasFactory : SourceFactory { - - override fun createSources(): List = - listOf( - vinnieVeritas("en"), - vinnieVeritas("es"), - ) -} +package eu.kanade.tachiyomi.extension.all.vinnieVeritas + +import eu.kanade.tachiyomi.source.Source +import eu.kanade.tachiyomi.source.SourceFactory + +class vinnieVeritasFactory : SourceFactory { + + override fun createSources(): List = + listOf( + vinnieVeritas("en"), + vinnieVeritas("es"), + ) +} diff --git a/src/ar/teamx/build.gradle b/src/ar/teamx/build.gradle index b7209f1f3..53ae0bdb6 100644 --- a/src/ar/teamx/build.gradle +++ b/src/ar/teamx/build.gradle @@ -2,7 +2,7 @@ ext { extName = 'Team X' pkgNameSuffix = 'ar.teamx' extClass = '.TeamX' - extVersionCode = 15 + extVersionCode = 16 isNsfw = false } diff --git a/src/ar/teamx/src/eu/kanade/tachiyomi/extension/ar/teamx/TeamX.kt b/src/ar/teamx/src/eu/kanade/tachiyomi/extension/ar/teamx/TeamX.kt index eb1620fbe..47f8d86a0 100644 --- a/src/ar/teamx/src/eu/kanade/tachiyomi/extension/ar/teamx/TeamX.kt +++ b/src/ar/teamx/src/eu/kanade/tachiyomi/extension/ar/teamx/TeamX.kt @@ -22,7 +22,7 @@ class TeamX : ParsedHttpSource() { override val name = "Team X" - override val baseUrl = "https://team11x11.com" + override val baseUrl = "https://team1x12.com" override val lang = "ar" diff --git a/src/en/elanschool/res/mipmap-hdpi/ic_launcher.png b/src/en/elanschool/res/mipmap-hdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/en/elanschool/res/mipmap-mdpi/ic_launcher.png b/src/en/elanschool/res/mipmap-mdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/en/elanschool/res/mipmap-xhdpi/ic_launcher.png b/src/en/elanschool/res/mipmap-xhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/en/elanschool/res/mipmap-xxhdpi/ic_launcher.png b/src/en/elanschool/res/mipmap-xxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/en/elanschool/res/mipmap-xxxhdpi/ic_launcher.png b/src/en/elanschool/res/mipmap-xxxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/en/mangapill/res/mipmap-hdpi/ic_launcher.png b/src/en/mangapill/res/mipmap-hdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/en/mangapill/res/mipmap-mdpi/ic_launcher.png b/src/en/mangapill/res/mipmap-mdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/en/mangapill/res/mipmap-xhdpi/ic_launcher.png b/src/en/mangapill/res/mipmap-xhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/en/mangapill/res/mipmap-xxhdpi/ic_launcher.png b/src/en/mangapill/res/mipmap-xxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/en/mangapill/res/mipmap-xxxhdpi/ic_launcher.png b/src/en/mangapill/res/mipmap-xxxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/en/oots/AndroidManifest.xml b/src/en/oots/AndroidManifest.xml index cd55ad917..8072ee00d 100644 --- a/src/en/oots/AndroidManifest.xml +++ b/src/en/oots/AndroidManifest.xml @@ -1,2 +1,2 @@ - - + + diff --git a/src/en/reaperscans/AndroidManifest.xml b/src/en/reaperscans/AndroidManifest.xml new file mode 100644 index 000000000..3905aa593 --- /dev/null +++ b/src/en/reaperscans/AndroidManifest.xml @@ -0,0 +1,22 @@ + + + + + + + + + + + + + + + diff --git a/src/en/reaperscans/build.gradle b/src/en/reaperscans/build.gradle new file mode 100644 index 000000000..6e5f9d1f8 --- /dev/null +++ b/src/en/reaperscans/build.gradle @@ -0,0 +1,8 @@ +ext { + extName = 'Reaper Scans' + pkgNameSuffix = 'en.reaperscans' + extClass = '.ReaperScans' + extVersionCode = 47 +} + +apply from: "$rootDir/common.gradle" diff --git a/src/en/reaperscans/res/mipmap-hdpi/ic_launcher.png b/src/en/reaperscans/res/mipmap-hdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..f6c5fc5a7fe510b4358be201861edbb6a5f88f29 GIT binary patch literal 4331 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 literal 0 HcmV?d00001 diff --git a/src/en/reaperscans/res/mipmap-mdpi/ic_launcher.png b/src/en/reaperscans/res/mipmap-mdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..e7ffd65f3ab6b9280a245ecba6dfddf7c9712056 GIT binary patch literal 2408 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 literal 0 HcmV?d00001 diff --git a/src/en/reaperscans/res/mipmap-xxhdpi/ic_launcher.png b/src/en/reaperscans/res/mipmap-xxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..779d9aea375105d1971cb22a18886a0439a4d49e GIT binary patch literal 10657 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 Hu0mjfXNiLe literal 0 HcmV?d00001 diff --git a/src/en/reaperscans/res/mipmap-xxxhdpi/ic_launcher.png b/src/en/reaperscans/res/mipmap-xxxhdpi/ic_launcher.png new file mode 100644 index 0000000000000000000000000000000000000000..08a0864d9230dd964bf6a7a848f4ccfa9cb4e2cd GIT binary patch literal 14708 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 2) { + val id = pathSegments[1] + val mainIntent = Intent().apply { + action = "eu.kanade.tachiyomi.SEARCH" + putExtra("query", ReaperScans.PREFIX_ID_SEARCH + id) + putExtra("filter", packageName) + } + + try { + startActivity(mainIntent) + } catch (e: ActivityNotFoundException) { + Log.e("ReaperScansUrlActivity", e.toString()) + } + } else { + Log.e("ReaperScansUrlActivity", "could not parse uri from intent $intent") + } + + finish() + exitProcess(0) + } +} diff --git a/src/en/zeroscans/build.gradle b/src/en/zeroscans/build.gradle index 13ece64d7..c460ab144 100644 --- a/src/en/zeroscans/build.gradle +++ b/src/en/zeroscans/build.gradle @@ -2,7 +2,7 @@ ext { extName = 'Zero Scans' pkgNameSuffix = 'en.zeroscans' extClass = '.ZeroScans' - extVersionCode = 6 + extVersionCode = 7 } apply from: "$rootDir/common.gradle" diff --git a/src/en/zeroscans/src/eu/kanade/tachiyomi/extension/en/zeroscans/ZeroScans.kt b/src/en/zeroscans/src/eu/kanade/tachiyomi/extension/en/zeroscans/ZeroScans.kt index f4d1b984a..cb13ad4fa 100644 --- a/src/en/zeroscans/src/eu/kanade/tachiyomi/extension/en/zeroscans/ZeroScans.kt +++ b/src/en/zeroscans/src/eu/kanade/tachiyomi/extension/en/zeroscans/ZeroScans.kt @@ -26,7 +26,7 @@ class ZeroScans : HttpSource() { override val lang: String = "en" - override val baseUrl: String = "https://zeroscans.com" + override val baseUrl: String = "https://zscans.com" override val supportsLatest: Boolean = true diff --git a/src/es/ikuhentai/build.gradle b/src/es/ikuhentai/build.gradle old mode 100755 new mode 100644 diff --git a/src/es/ikuhentai/src/eu/kanade/tachiyomi/extension/es/ikuhentai/Ikuhentai.kt b/src/es/ikuhentai/src/eu/kanade/tachiyomi/extension/es/ikuhentai/Ikuhentai.kt old mode 100755 new mode 100644 diff --git a/src/es/kumanga/build.gradle b/src/es/kumanga/build.gradle old mode 100755 new mode 100644 diff --git a/src/es/kumanga/src/eu/kanade/tachiyomi/extension/es/kumanga/Kumanga.kt b/src/es/kumanga/src/eu/kanade/tachiyomi/extension/es/kumanga/Kumanga.kt old mode 100755 new mode 100644 diff --git a/src/es/lectormanga/build.gradle b/src/es/lectormanga/build.gradle old mode 100755 new mode 100644 diff --git a/src/es/lectormanga/res/mipmap-hdpi/ic_launcher.png b/src/es/lectormanga/res/mipmap-hdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/es/lectormanga/res/mipmap-mdpi/ic_launcher.png b/src/es/lectormanga/res/mipmap-mdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/es/lectormanga/res/mipmap-xhdpi/ic_launcher.png b/src/es/lectormanga/res/mipmap-xhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/es/lectormanga/res/mipmap-xxhdpi/ic_launcher.png b/src/es/lectormanga/res/mipmap-xxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/es/lectormanga/res/mipmap-xxxhdpi/ic_launcher.png b/src/es/lectormanga/res/mipmap-xxxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/es/lectormanga/src/eu/kanade/tachiyomi/extension/es/lectormanga/LectorManga.kt b/src/es/lectormanga/src/eu/kanade/tachiyomi/extension/es/lectormanga/LectorManga.kt old mode 100755 new mode 100644 diff --git a/src/es/tmohentai/build.gradle b/src/es/tmohentai/build.gradle old mode 100755 new mode 100644 diff --git a/src/es/tmohentai/src/eu/kanade/tachiyomi/extension/es/tmohentai/TMOHentai.kt b/src/es/tmohentai/src/eu/kanade/tachiyomi/extension/es/tmohentai/TMOHentai.kt old mode 100755 new mode 100644 diff --git a/src/id/komikindoid/AndroidManifest.xml b/src/id/komikindoid/AndroidManifest.xml index cd55ad917..8072ee00d 100644 --- a/src/id/komikindoid/AndroidManifest.xml +++ b/src/id/komikindoid/AndroidManifest.xml @@ -1,2 +1,2 @@ - - + + diff --git a/src/id/mangaku/res/mipmap-hdpi/ic_launcher.png b/src/id/mangaku/res/mipmap-hdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/id/mangaku/res/mipmap-mdpi/ic_launcher.png b/src/id/mangaku/res/mipmap-mdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/id/mangaku/res/mipmap-xhdpi/ic_launcher.png b/src/id/mangaku/res/mipmap-xhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/id/mangaku/res/mipmap-xxhdpi/ic_launcher.png b/src/id/mangaku/res/mipmap-xxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/id/mangaku/res/mipmap-xxxhdpi/ic_launcher.png b/src/id/mangaku/res/mipmap-xxxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/ru/acomics/res/mipmap-hdpi/ic_launcher.png b/src/ru/acomics/res/mipmap-hdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/ru/acomics/res/mipmap-mdpi/ic_launcher.png b/src/ru/acomics/res/mipmap-mdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/ru/acomics/res/mipmap-xhdpi/ic_launcher.png b/src/ru/acomics/res/mipmap-xhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/ru/acomics/res/mipmap-xxhdpi/ic_launcher.png b/src/ru/acomics/res/mipmap-xxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/ru/acomics/res/mipmap-xxxhdpi/ic_launcher.png b/src/ru/acomics/res/mipmap-xxxhdpi/ic_launcher.png old mode 100755 new mode 100644 diff --git a/src/vi/lxhentai/AndroidManifest.xml b/src/vi/lxhentai/AndroidManifest.xml index c64269cfc..1318108fa 100644 --- a/src/vi/lxhentai/AndroidManifest.xml +++ b/src/vi/lxhentai/AndroidManifest.xml @@ -1,23 +1,23 @@ - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + diff --git a/src/vi/truyengihot/AndroidManifest.xml b/src/vi/truyengihot/AndroidManifest.xml index 5d1d4d1c9..58d189dcf 100644 --- a/src/vi/truyengihot/AndroidManifest.xml +++ b/src/vi/truyengihot/AndroidManifest.xml @@ -1,20 +1,20 @@ - - - - - - - - - - - - - - - + + + + + + + + + + + + + + +