MangaCataloug Added Search function (#6834)
* Update MangaCatalog.kt * Update MangaCatalogGenerator.kt * Updated overrides
This commit is contained in:
parent
ebeb40b522
commit
28e1753d75
@ -11,6 +11,5 @@ class ReadNarutoBorutoSamurai8MangaOnline : MangaCatalog("Read Naruto/Boruto/Sam
|
|||||||
Pair("Colored", "$baseUrl/manga/naruto-digital-colored-comics/"),
|
Pair("Colored", "$baseUrl/manga/naruto-digital-colored-comics/"),
|
||||||
Pair("Naruto Gaiden", "$baseUrl/manga/naruto-gaiden-the-seventh-hokage/"),
|
Pair("Naruto Gaiden", "$baseUrl/manga/naruto-gaiden-the-seventh-hokage/"),
|
||||||
Pair("Samurai 8", "$baseUrl/manga/samurai-8-hachimaru-den/"),
|
Pair("Samurai 8", "$baseUrl/manga/samurai-8-hachimaru-den/"),
|
||||||
Pair("", "$baseUrl/manga//"),
|
|
||||||
).sortedBy { it.first }.distinctBy { it.second }
|
).sortedBy { it.first }.distinctBy { it.second }
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,16 @@ package eu.kanade.tachiyomi.extension.en.readnoblessemanhwaonline
|
|||||||
import eu.kanade.tachiyomi.multisrc.mangacatalog.MangaCatalog
|
import eu.kanade.tachiyomi.multisrc.mangacatalog.MangaCatalog
|
||||||
import eu.kanade.tachiyomi.source.model.MangasPage
|
import eu.kanade.tachiyomi.source.model.MangasPage
|
||||||
import eu.kanade.tachiyomi.util.asJsoup
|
import eu.kanade.tachiyomi.util.asJsoup
|
||||||
|
import eu.kanade.tachiyomi.network.GET
|
||||||
|
import eu.kanade.tachiyomi.source.model.FilterList
|
||||||
|
import eu.kanade.tachiyomi.source.model.SChapter
|
||||||
|
import eu.kanade.tachiyomi.source.model.SManga
|
||||||
|
import eu.kanade.tachiyomi.source.model.Page
|
||||||
|
import eu.kanade.tachiyomi.source.online.ParsedHttpSource
|
||||||
|
import okhttp3.Request
|
||||||
|
import rx.Observable
|
||||||
|
import org.jsoup.nodes.Document
|
||||||
|
import org.jsoup.nodes.Element
|
||||||
|
|
||||||
class ReadNoblesseManhwaOnline : MangaCatalog("Read Noblesse Manhwa Online", "https://ww2.readnoblesse.com", "en") {
|
class ReadNoblesseManhwaOnline : MangaCatalog("Read Noblesse Manhwa Online", "https://ww2.readnoblesse.com", "en") {
|
||||||
override val sourceList = listOf(
|
override val sourceList = listOf(
|
||||||
@ -11,4 +21,23 @@ class ReadNoblesseManhwaOnline : MangaCatalog("Read Noblesse Manhwa Online", "ht
|
|||||||
Pair("NOBLESSE S", "$baseUrl/manga/noblesse-s/"),
|
Pair("NOBLESSE S", "$baseUrl/manga/noblesse-s/"),
|
||||||
Pair("Ability", "$baseUrl/manga/ability/"),
|
Pair("Ability", "$baseUrl/manga/ability/"),
|
||||||
).sortedBy { it.first }.distinctBy { it.second }
|
).sortedBy { it.first }.distinctBy { it.second }
|
||||||
|
|
||||||
|
override fun mangaDetailsParse(document: Document): SManga = SManga.create().apply {
|
||||||
|
description = document.select("div.flex > div.py-2 > div:not(:first-child)").text()
|
||||||
|
title = document.select(".container h1").text()
|
||||||
|
thumbnail_url = document.select("img.rounded-full").attr("src")
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun chapterListSelector(): String = "div.w-full > div > div.flex"
|
||||||
|
override fun chapterFromElement(element: Element): SChapter = SChapter.create().apply {
|
||||||
|
val name1 = element.select(".flex-col > a:not(.text-xs)").text()
|
||||||
|
val name2 = element.select(".text-xs:not(a)").text()
|
||||||
|
if (name2 == ""){
|
||||||
|
name = name1
|
||||||
|
} else {
|
||||||
|
name = "$name1 - $name2"
|
||||||
|
}
|
||||||
|
url = element.select(".flex-col > a:not(.text-xs)").attr("abs:href")
|
||||||
|
date_upload = System.currentTimeMillis()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@ -30,7 +30,6 @@ abstract class MangaCatalog(
|
|||||||
override val supportsLatest: Boolean = false
|
override val supportsLatest: Boolean = false
|
||||||
|
|
||||||
// Popular
|
// Popular
|
||||||
|
|
||||||
override fun fetchPopularManga(page: Int): Observable<MangasPage> {
|
override fun fetchPopularManga(page: Int): Observable<MangasPage> {
|
||||||
return Observable.just(MangasPage(sourceList.map { popularMangaFromPair(it.first, it.second) }, false))
|
return Observable.just(MangasPage(sourceList.map { popularMangaFromPair(it.first, it.second) }, false))
|
||||||
}
|
}
|
||||||
@ -51,7 +50,17 @@ abstract class MangaCatalog(
|
|||||||
|
|
||||||
// Search
|
// Search
|
||||||
|
|
||||||
override fun searchMangaRequest(page: Int, query: String, filters: FilterList) = throw Exception("No Search Function")
|
override fun fetchSearchManga(page: Int, query: String, filters: FilterList): Observable<MangasPage> {
|
||||||
|
val mangas = mutableListOf<SManga>()
|
||||||
|
sourceList.map {
|
||||||
|
if (it.first.contains(query)) {
|
||||||
|
mangas.add(popularMangaFromPair(it.first, it.second))
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return Observable.just(MangasPage(mangas, false))
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun searchMangaRequest(page: Int, query: String, filters: FilterList) = throw Exception("Not used")
|
||||||
override fun searchMangaNextPageSelector() = throw Exception("Not used")
|
override fun searchMangaNextPageSelector() = throw Exception("Not used")
|
||||||
override fun searchMangaSelector() = throw Exception("Not used")
|
override fun searchMangaSelector() = throw Exception("Not used")
|
||||||
override fun searchMangaFromElement(element: Element) = throw Exception("Not used")
|
override fun searchMangaFromElement(element: Element) = throw Exception("Not used")
|
||||||
|
@ -9,7 +9,7 @@ class MangaCatalogGenerator : ThemeSourceGenerator {
|
|||||||
|
|
||||||
override val themeClass = "MangaCatalog"
|
override val themeClass = "MangaCatalog"
|
||||||
|
|
||||||
override val baseVersionCode: Int = 1
|
override val baseVersionCode: Int = 2
|
||||||
|
|
||||||
override val sources = listOf(
|
override val sources = listOf(
|
||||||
SingleLang("Read Boku no Hero Academia/My Hero Academia Manga", "https://ww6.readmha.com", "en", className = "ReadBokuNoHeroAcademiaMyHeroAcademiaManga", overrideVersionCode = 1),
|
SingleLang("Read Boku no Hero Academia/My Hero Academia Manga", "https://ww6.readmha.com", "en", className = "ReadBokuNoHeroAcademiaMyHeroAcademiaManga", overrideVersionCode = 1),
|
||||||
|
Loading…
x
Reference in New Issue
Block a user