Update domains and migrate sources (#8958)

* JeazScans: Migrate to MangaThemesia

* TeamLanhLung: Update domain

* MagusManga: Migrate to Iken
This commit is contained in:
Chopper 2025-05-26 16:03:05 -03:00 committed by Draff
parent dc087a1ebb
commit b4fede6f9b
Signed by: Draff
GPG Key ID: E8A89F3211677653
7 changed files with 31 additions and 40 deletions

View File

@ -1,9 +1,9 @@
ext { ext {
extName = 'Magus Manga' extName = 'Magus Manga'
extClass = '.MagusManga' extClass = '.MagusManga'
themePkg = 'keyoapp' themePkg = 'iken'
baseUrl = 'https://magustoon.com' baseUrl = 'https://magustoon.org'
overrideVersionCode = 35 overrideVersionCode = 44
isNsfw = false isNsfw = false
} }

View File

@ -1,41 +1,33 @@
package eu.kanade.tachiyomi.extension.en.magusmanga package eu.kanade.tachiyomi.extension.en.magusmanga
import eu.kanade.tachiyomi.multisrc.keyoapp.Keyoapp import eu.kanade.tachiyomi.multisrc.iken.Iken
import eu.kanade.tachiyomi.network.GET
import eu.kanade.tachiyomi.network.interceptor.rateLimitHost import eu.kanade.tachiyomi.network.interceptor.rateLimitHost
import eu.kanade.tachiyomi.source.model.MangasPage
import eu.kanade.tachiyomi.source.model.SManga
import eu.kanade.tachiyomi.util.asJsoup
import okhttp3.HttpUrl.Companion.toHttpUrl import okhttp3.HttpUrl.Companion.toHttpUrl
import okhttp3.Interceptor
import okhttp3.Response import okhttp3.Response
import okio.IOException
import org.jsoup.Jsoup
class MagusManga : Keyoapp( class MagusManga : Iken(
"Magus Manga", "Magus Manga",
"https://magustoon.com",
"en", "en",
"https://magustoon.org",
"https://api.magustoon.org",
) { ) {
override val versionId = 2 // Moved from Keyoapp to Iken
override val versionId = 3
override val client = network.cloudflareClient.newBuilder() override val client = network.cloudflareClient.newBuilder()
.addInterceptor(::captchaInterceptor)
.rateLimitHost(baseUrl.toHttpUrl(), 1) .rateLimitHost(baseUrl.toHttpUrl(), 1)
.build() .build()
private fun captchaInterceptor(chain: Interceptor.Chain): Response { override fun popularMangaRequest(page: Int) = GET(baseUrl, headers)
val request = chain.request()
val response = chain.proceed(request)
if (response.code == 401) { override fun popularMangaParse(response: Response): MangasPage {
val document = Jsoup.parse( val entries = response.asJsoup().select(".splide__track li > a").mapNotNull {
response.peekBody(Long.MAX_VALUE).string(), titleCache[it.absUrl("href").substringAfter("series/")]?.toSManga()
response.request.url.toString(), }.distinctBy(SManga::url)
) return MangasPage(entries, false)
if (document.selectFirst(".g-recaptcha") != null) {
response.close()
throw IOException("Solve Captcha in WebView")
}
}
return response
} }
} }

View File

@ -1,9 +1,9 @@
ext { ext {
extName = 'Jeaz Scans' extName = 'Jeaz Scans'
extClass = '.JeazScans' extClass = '.JeazScans'
themePkg = 'madara' themePkg = 'mangathemesia'
baseUrl = 'https://marcialhub.xyz' baseUrl = 'https://lectorhub.j5z.xyz'
overrideVersionCode = 4 overrideVersionCode = 15
isNsfw = false isNsfw = false
} }

View File

@ -1,19 +1,18 @@
package eu.kanade.tachiyomi.extension.es.jeazscans package eu.kanade.tachiyomi.extension.es.jeazscans
import eu.kanade.tachiyomi.multisrc.madara.Madara import eu.kanade.tachiyomi.multisrc.mangathemesia.MangaThemesia
import eu.kanade.tachiyomi.network.interceptor.rateLimit import eu.kanade.tachiyomi.network.interceptor.rateLimit
import okhttp3.OkHttpClient import okhttp3.OkHttpClient
import java.text.SimpleDateFormat import java.text.SimpleDateFormat
import java.util.Locale import java.util.Locale
class JeazScans : Madara( class JeazScans : MangaThemesia(
"Jeaz Scans", "Jeaz Scans",
"https://marcialhub.xyz", "https://lectorhub.j5z.xyz",
"es", "es",
SimpleDateFormat("d MMMM, yyyy", Locale("es")), dateFormat = SimpleDateFormat("MMM d, yyyy", Locale("es")),
) { ) {
override val useLoadMoreRequest = LoadMoreStrategy.Always override val id = 5292079548510508306
override val useNewChapterEndpoint = true
override val client: OkHttpClient = super.client.newBuilder() override val client: OkHttpClient = super.client.newBuilder()
.rateLimit(2) .rateLimit(2)

View File

@ -13,7 +13,7 @@
<category android:name="android.intent.category.BROWSABLE" /> <category android:name="android.intent.category.BROWSABLE" />
<data <data
android:host="teamlanhlung5.shop" android:host="teamlanhlung9.shop"
android:pathPattern="/truyen-tranh/..*" android:pathPattern="/truyen-tranh/..*"
android:scheme="https" android:scheme="https"
/> />

View File

@ -1,7 +1,7 @@
ext { ext {
extName = 'Team Lanh Lung' extName = 'Team Lanh Lung'
extClass = '.TeamLanhLung' extClass = '.TeamLanhLung'
extVersionCode = 22 extVersionCode = 23
isNsfw = true isNsfw = true
} }

View File

@ -32,7 +32,7 @@ class TeamLanhLung : ParsedHttpSource() {
override val name: String = "Team Lạnh Lùng" override val name: String = "Team Lạnh Lùng"
override val baseUrl: String = "https://teamlanhlung5.shop" override val baseUrl: String = "https://teamlanhlung9.shop"
override val lang: String = "vi" override val lang: String = "vi"